Skip to main content
Fired when a meeting is created, confirmed, cancelled, completed, or when a lead is a no-show. Use these to sync calendar events to your CRM, send reminders, or trigger follow-up workflows.

Event types

EventWhen
meeting.scheduledA meeting is booked (by AI, lead, or manually)
meeting.confirmedLead confirms they will attend
meeting.cancelledMeeting is cancelled (by AI, lead, or manually)
meeting.completedMeeting is marked as done
meeting.no_showLead didn’t attend the meeting

Payload

All meeting events share the same payload structure:
{
  "event_type": "meeting.scheduled",
  "event_id": "...",
  "webhook_id": "...",
  "delivery_id": "...",
  "timestamp": "2026-04-17T16:30:00.000Z",
  "client_id": "...",
  "test": false,
  "data": {
    "meeting": {
      "id": "uuid",
      "title": "Meeting with Tony Stark",
      "starts_at": "2026-04-21T17:30:00.000Z",
      "ends_at": "2026-04-21T18:00:00.000Z",
      "duration_minutes": 30,
      "timezone": "America/Santiago",
      "location_type": "video",
      "location_details": null,
      "meeting_url": "https://meet.google.com/abc-defg-hij",
      "status": "scheduled",
      "source": "ai_agent",
      "attendee_name": "Tony Stark",
      "attendee_email": "tony.stark@gmail.com",
      "attendee_phone": "56994357854",
      "confirmed_by_lead": false,
      "cancelled_at": null,
      "cancellation_reason": null,
      "outcome_notes": null,
      "outcome_at": null,
      "no_show_reason": null
    },
    "lead": {
      "id": "uuid",
      "first_name": "Tony",
      "last_name": "Stark",
      "email": "tony.stark@gmail.com",
      "phone": "56994357854",
      "company": null,
      "source": "api"
    },
    "host": {
      "id": "uuid",
      "first_name": "Antonia",
      "last_name": "Stark",
      "email": "antonia@capitaria.com"
    },
    "meeting_type": {
      "id": "uuid",
      "name": "Discovery Call"
    },
    "workflow": {
      "id": "uuid",
      "name": "Lead -> Push Intent"
    }
  }
}

Fields

data.meeting

FieldTypeDescription
idstring (uuid)Meeting ID
titlestringMeeting title
starts_atstring (ISO 8601)Start time (UTC)
ends_atstring (ISO 8601)End time (UTC)
duration_minutesnumberDuration in minutes
timezonestringIANA timezone (e.g. America/Santiago)
location_typestringvideo, phone, in_person
location_detailsstring | nullAddress or location notes
meeting_urlstring | nullVideo call link (Google Meet, Zoom, etc.)
statusstringscheduled, confirmed, cancelled, completed, no_show
sourcestringWho created it: ai_agent, manual, system
attendee_namestring | nullLead’s name
attendee_emailstring | nullLead’s email
attendee_phonestring | nullLead’s phone
confirmed_by_leadbooleanWhether the lead explicitly confirmed
cancelled_atstring | nullWhen cancelled (ISO 8601)
cancellation_reasonstring | nullReason for cancellation
outcome_notesstring | nullNotes after completion
outcome_atstring | nullWhen completed (ISO 8601)
no_show_reasonstring | nullReason for no-show

data.host

FieldTypeDescription
idstring (uuid)Host user ID
first_namestringHost’s first name
last_namestringHost’s last name
emailstringHost’s email

data.meeting_type

FieldTypeDescription
idstring (uuid)Meeting type ID
namestringMeeting type name (e.g. “Discovery Call”)

Filtering

Filter fieldDescriptionExample
statusMeeting statuscancelled
sourceWho created the meetingai_agent
meeting_type_idSpecific meeting typeuuid
host_idSpecific hostuuid
Last modified on June 17, 2026