Skip to content
Last updated

Webhook event triggered when a call outcome is recorded in iClosed.io.


Overview

The Call Outcome Added webhook is triggered whenever a call outcome is recorded after a call is completed in your iClosed.io account. This event provides comprehensive information about the call, its outcome, and any associated deals or transactions.


Event Details

PropertyValue
Event TypeoutcomeAdded
TriggerWhen a call outcome is recorded (sale, no sale, reschedule, etc.)
PayloadComplete call outcome data with contact and deal information

Webhook Payload

The HTTP body is a single JSON object (not an array). It contains the complete call outcome information with the following structure:

{
  "uuid": 158,
  "userId": 4,
  "eventName": "Email Only",
  "eventId": 3,
  "eventType": "STRATEGY_EVENT",
  "eventDuration": 30,
  "eventDurationUnit": "MINUTES",
  "eventColor": "#0099FF",
  "closerName": "Shahab Hamid ",
  "email": "carl.stanley@example.com",
  "firstName": "Carl",
  "lastName": "Stanley",
  "contactId": 225,
  "phoneNumber": null,
  "closerEmail": "shahab@iclosed.io",
  "callOutcome": "SALE",
  "callType": "STRATEGY_CALL_BOOKED",
  "objection": "PARTNER",
  "startTime": "2026-03-30T04:00:00.000Z",
  "notes": "<!DOCTYPE quill-output-html><p>Closed Laptop SKU after ROI walkthrough.</p>",
  "callPreviewId": "call_K6gp95iufSjx",
  "triggerWhen": "Added",
  "productName": "Laptop",
  "deal": {
    "transactionType": "WON",
    "createdAt": "2026-04-09T09:30:46.175Z",
    "value": 188,
    "recurring": false,
    "product": {
      "name": "Laptop"
    }
  },
  "transaction": [],
  "dealValue": 188,
  "hookType": "Outcome added"
}

Key Fields Explained

Call Information

FieldDescription
uuidUnique identifier for the call outcome record
userIdID of the user who recorded the outcome
eventNameName of the event/call type
eventIdID of the associated event
eventDurationDuration of the call
eventDurationUnitUnit of duration (e.g., "MINUTES")

Contact Information

FieldDescription
emailContact's email address
contactIdUnique contact identifier
firstName, lastNameContact's name
phoneNumberContact's phone number

Call Outcome Details

FieldDescription
closerEmailEmail of the person who conducted the call
callOutcomeResult of the call (e.g., "SALE", "NO_SALE", "RESCHEDULE")
noSaleReasonReason for no sale (if applicable)
objectionAny objections raised during the call
startTimeWhen the call started
notesAdditional notes about the call

Deal Information

FieldDescription
dealValueValue of the deal (if a sale was made)
productNameName of the product/service sold
deal.transactionTypeType of transaction (e.g., "WON", "SALE")
deal.recurringWhether the deal is recurring
deal.productNested product metadata (e.g., { "name": "…" })
eventType, eventColor, closerName, callTypeEvent and closer context for the outcome row
callPreviewId, triggerWhenCall preview identifier and when the outcome was recorded
deal.createdAtWhen the deal was created
deal.valueDeal value
transactionArray of transaction details (may be empty)
hookTypeSet to "Outcome added" to identify the event type

Call Outcome Types

Sale Outcomes

ValueDescription
SALECall resulted in a successful sale
PARTIAL_SALECall resulted in a partial sale

No Sale Outcomes

ValueDescription
NO_SALECall did not result in a sale
NOT_INTERESTEDContact was not interested
PRICE_OBJECTIONPrice was the main objection
TIMING_OBJECTIONTiming was the main objection
AUTHORITY_OBJECTIONContact doesn't have authority to buy
NEED_OBJECTIONContact doesn't see the need

Other Outcomes

ValueDescription
RESCHEDULECall was rescheduled
NO_SHOWContact didn't show up for the call
CANCELLEDCall was cancelled

Use Cases

This webhook is useful for:

  • Sales Tracking – Monitor sales performance and outcomes
  • CRM Updates – Update your CRM with call results and deal information
  • Analytics – Track conversion rates and sales metrics
  • Commission Calculations – Automate commission tracking for sales
  • Follow-up Automation – Trigger follow-up actions based on call outcomes
  • Reporting – Generate sales reports and performance analytics
  • Lead Scoring – Update lead scores based on call outcomes

Response Requirements

Your webhook endpoint should:

  • Return a 2xx status code to acknowledge receipt
  • Respond within 5 seconds to avoid retries
  • Handle duplicate events (idempotency)
  • Log the call outcome uuid for debugging purposes
  • Process deal information if a sale was made

Best Practices

  1. Check Call Outcome – Use the callOutcome field to determine appropriate actions
  2. Handle Different Outcomes – Different outcomes may require different processing logic
  3. Validate Deal Data – Ensure deal information is complete before processing sales
  4. Track Performance – Use this data for sales performance analytics
  5. Update Lead Status – Update lead status based on call outcomes
  6. Trigger Follow-ups – Automate follow-up actions based on outcomes