Webhook event triggered when a call is cancelled in iClosed.io.
The Call Cancelled webhook is triggered whenever a previously booked call is cancelled in your iClosed.io account. This event provides complete details about the cancelled call, including cancellation information, who cancelled it, and when the cancellation occurred.
| Property | Value |
|---|---|
| Event Type | callCancelled |
| Trigger | When a call is cancelled by either the invitee or the host |
| Payload | Complete call information with cancellation details |
The HTTP body is a single JSON object (not an array). It contains detailed information about the cancelled call:
{
"event_type": {
"uuid": 2,
"kind": "Round Robin",
"slug": "strategy-call",
"name": "Strategy intro call",
"duration": 30,
"durationUnit": "MINUTES",
"owner": {
"type": "closer"
},
"type": "STRATEGY_EVENT"
},
"event": {
"uuid": 168,
"closerId": 5,
"closerName": "Jamie Alvarez ",
"closerEmail": "jamie.alvarez@example.com",
"closerTimezone": "Asia/Karachi",
"assigned_to": {
"1": "Jamie Alvarez "
},
"extended_assigned_to": {
"1": {
"name": "Jamie Alvarez ",
"email": "jamie.alvarez@example.com",
"primary": true
}
},
"utc_start_time": "2026-04-17T04:00:00.000Z",
"utc_end_time": "2026-04-17T04:30:00.000Z",
"start_time": "2026-04-17T04:00:00.000Z",
"start_time_pretty": "09:00AM - Friday, April 17, 2026",
"invitee_start_time": "2026-04-17T04:00:00.000Z",
"invitee_start_time_pretty": "09:00AM - Friday, April 17, 2026",
"end_time": "2026-04-17T04:30:00.000Z",
"end_time_pretty": "09:30AM - Friday, April 17, 2026",
"invitee_end_time": "2026-04-17T04:30:00.000Z",
"invitee_end_time_pretty": "09:30AM - Friday, April 17, 2026",
"created_at": "2026-04-09T09:29:17.078Z",
"location": "+1 415 555 0192",
"location_type": "phone",
"eventLink": "https://app.iclosed.io/e/acme/strategy-call",
"callPreviewId": "call_esiPJQAfxjJw",
"type": "STRATEGY_CALL",
"canceled": true,
"canceler_name": "Jamie Alvarez (workspace admin)",
"cancel_reason": "Stakeholder could not join; rescheduling internally.",
"canceled_at": "2026-04-09T09:29:17.078Z",
"old_start_time": null,
"setter": {
"name": "Riley Chen",
"firstName": "Riley",
"lastName": "Chen",
"email": "riley.chen@example.com",
"setBy": {
"firstName": "Riley",
"lastName": "Chen",
"email": "riley.chen@example.com"
}
}
},
"contactFields": {
"contact-short-text": "This is Short Text Field",
"contact-long-text": "This is the long-text custom field value for the contact.",
"multiple_select_color": "Red",
"rating": 3,
"user": {
"id": 5,
"firstName": "Jamie Alvarez",
"lastName": "Alvarez",
"email": "jamie.alvarez@example.com"
},
"number-1": 128,
"contact-checkbox": "Option a",
"date-and-time": "2026-04-08T19:00:00.000Z",
"contact-radio-button": "Option 1",
"custom-number": 76,
"contact-url": "https://iclosed.io",
"single select ": "red",
"call_outcome": "NO_SALE",
"no_sale_reason": "ADMIN_CANCELLED"
},
"invitee": {
"uuid": 239,
"previewUrl": "https://app.iclosed.io/app/global-data/contacts?preview=contact_We1Ztdhvcii0",
"referrer_url": "https://app.iclosed.io/e/acme/strategy-call",
"ip_address": "::1",
"callPreviewId": "call_esiPJQAfxjJw",
"first_name": "Morgan",
"last_name": "Lee",
"name": "Morgan Lee",
"email": "morgan.lee@example.com",
"text_reminder_number": "+1 415 555 0192",
"timezone": "Asia/Karachi",
"created_at": "2026-04-09T09:29:17.078Z",
"is_reschedule": true,
"reschedule_reason": "Need to move the call after finance review on Tuesday.",
"reschedule_by": "Jamie Alvarez (workspace admin)",
"canceled": false,
"canceler_name": "Jamie Alvarez (workspace admin)",
"cancel_reason": "Stakeholder could not join; rescheduling internally.",
"canceled_at": "2026-04-09T09:29:17.039Z"
},
"questions_and_answers": [
{
"question": "Email Address",
"answer": "morgan.lee@example.com"
},
{
"question": "Phone Number",
"answer": "+1 415 555 0192"
},
{
"question": "Full Name",
"answer": "Morgan Lee"
},
{
"question": "Goals for the next 90 days",
"answer": "We need to cut demo no-shows by half this quarter."
},
{
"question": "Check box",
"answer": "1, 3"
},
{
"question": "Internal reference code"
},
{
"question": "Date and Time",
"answer": "2026-04-10T09:14:00.000Z"
},
{
"question": "Team size (people)"
},
{
"question": "New Multi Select",
"answer": "b"
},
{
"question": "Disqualify",
"answer": "No"
}
],
"questions_and_responses": {
"1_question": "Email Address",
"1_response": "morgan.lee@example.com",
"2_question": "Phone Number",
"2_response": "+1 415 555 0192",
"3_question": "Full Name",
"3_response": "Morgan Lee",
"4_question": "Goals for the next 90 days",
"4_response": "We need to cut demo no-shows by half this quarter.",
"5_question": "Check box",
"5_response": "1, 3",
"6_question": "Internal reference code",
"6_response": 123,
"7_question": "Date and Time",
"7_response": "2026-04-10T09:14:00.000Z",
"8_question": "Team size (people)",
"8_response": 123,
"9_question": "New Multi Select",
"9_response": "b",
"10_question": "Disqualify",
"10_response": "No",
"Email Address": "morgan.lee@example.com",
"Phone Number": "+1 415 555 0192",
"Full Name": "Morgan Lee",
"Goals for the next 90 days": "We need to cut demo no-shows by half this quarter.",
"Check box": "1, 3",
"Internal reference code": 123,
"Date and Time": "2026-04-10T09:14:00.000Z",
"Team size (people)": 123,
"New Multi Select": "b",
"Disqualify": "No"
},
"tracking": {
"first_utm_term": "strategy consultation",
"first_utm_source": "google",
"first_utm_medium": "cpc",
"first_utm_content": "hero_cta_variant_b",
"first_utm_campaign": "q2_2026_demo_requests",
"utm_term": "sales scheduling software",
"utm_source": "linkedin",
"utm_medium": "paid_social",
"utm_content": "carousel_ad_3",
"utm_campaign": "b2b_outbound_apr",
"utmKey_0": "gclid",
"utmValue_0": "EAIaIQobChMIexampleValue123",
"utmKey_1": "li_fat_id",
"utmValue_1": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"utmKey_2": "referrer_domain",
"utmValue_2": "newsletter.partner.io",
"utmKey_3": "landing_path",
"utmValue_3": "/events/strategy-call",
"utmKey_4": "experiment_id",
"utmValue_4": "exp_booking_flow_v2"
},
"call_booked_from": null,
"hookType": "Call cancelled"
}| Field | Description |
|---|---|
canceled | true on event when the call is cancelled; invitee.canceled may still be false while cancellation fields are populated (see payload) |
canceler_name | Name of the person who cancelled the call |
cancel_reason | Optional reason provided for the cancellation |
canceled_at | Timestamp when the cancellation occurred |
hookType | Set to "Call cancelled" to distinguish from booking events |
The event_type object contains configuration details of the original event type:
| Field | Description |
|---|---|
uuid | Unique identifier for the event type |
kind | Booking strategy (e.g., "Round Robin", "Direct Assignment") |
slug | URL-friendly event name |
name | Display name of the event |
duration | Original call duration |
owner.type | Type of owner (closer, setter, etc.) |
The event object contains information about the cancelled call:
| Field | Description |
|---|---|
uuid | Unique call identifier (same as when booked) |
canceled | Set to true indicating cancellation |
canceler_name | Who cancelled the call |
cancel_reason | Reason for cancellation (if provided) |
canceled_at | When the cancellation occurred |
assigned_to | Who was originally assigned |
start_time / end_time | Original scheduled times |
type | Call type (STRATEGY_CALL, DISCOVERY_CALL, etc.) |
The invitee object contains the invitee record at cancellation time (cancellation may be driven by a host workflow, so flags can look mixed—always read hookType together with event / invitee fields):
| Field | Description |
|---|---|
canceled | May be true or false depending on who cancelled and how the event was recorded; use with canceler_name / cancel_reason / canceled_at |
canceler_name | Name of the actor recorded on the cancellation |
cancel_reason | Reason text when provided |
canceled_at | When the cancellation was recorded for this payload |
previewUrl | Link to view the contact in iClosed.io |
name | Full name of the invitee |
email | Invitee's email address |
text_reminder_number | Phone number for SMS reminders |
| Field | Description |
|---|---|
questions_and_answers | Original booking form responses in array format |
questions_and_responses | Object format of the same responses |
The tracking object contains the original UTM parameters and attribution data preserved from the original booking.
Common cancellation reasons include schedule conflicts, no longer interested, technical issues, rescheduling requests, emergencies, weather, and health-related issues.
This webhook is useful for:
- CRM Updates – Mark opportunities as cancelled in your CRM
- Calendar Management – Remove cancelled events from calendars
- Team Notifications – Alert team members about cancellations
- Analytics Tracking – Monitor cancellation rates and reasons
- Follow-up Automation – Trigger rescheduling workflows
- Reporting – Track cancellation patterns and team performance
- Customer Service – Proactively reach out to cancelled prospects
- Resource Management – Free up team member availability
Your webhook endpoint should:
- Return a
2xxstatus code to acknowledge receipt - Respond within 5 seconds to avoid retries
- Handle duplicate events (idempotency)
- Log the call
uuidand cancellation details for debugging - Process cancellation reasons for analytics
- Cancellation Tracking – Use
canceler_nameto identify who cancelled - Reason Analysis – Monitor
cancel_reasonfor patterns and improvements - Timing Analysis – Use
canceled_atto track cancellation timing - Follow-up Strategy – Implement different follow-up flows based on who cancelled
- Availability Management – Update team member availability immediately
- Customer Communication – Send appropriate cancellation confirmations
- Rescheduling Offers – Automatically offer alternative times when appropriate
- Data Preservation – Keep original booking data for analysis
- Send cancellation confirmation
- Offer rescheduling options
- Update lead status in CRM
- Notify assigned team member
- Trigger follow-up sequence
- Send apology and explanation
- Offer immediate rescheduling
- Provide alternative contact options
- Update internal systems
- Track cancellation reasons for process improvement