AsyncAPI definition for Cal.com's webhook surface. Cal.com webhooks are HTTP POST deliveries from Cal.com to a developer-defined `subscriberUrl` registered via the Cal.com Webhooks API (`/v2/webhooks`). Subscribers register a webhook with one or more `triggers` (event types). Each delivery is a JSON document with a `triggerEvent` field, a `createdAt` timestamp, and a `payload` object whose shape varies by trigger. `MEETING_STARTED` and `MEETING_ENDED` deliver booking fields flat at the root rather than nested under `payload`. Payload signing is optional: when the webhook was created with a `secret`, deliveries include an `X-Cal-Signature-256` header containing an HMAC-SHA256 hex digest of the raw request body computed with the secret. The webhook payload version is communicated via the `x-cal-webhook-version` header (currently `2021-10-20`). Sourced from https://cal.com/docs/api-reference/v2/webhooks and https://cal.com/docs/core-features/webhooks. Fields that the Cal.com documentation does not describe are not invented here.
View SpecView on GitHubProductivitySchedulingCalendarOpen SourceBookingAsyncAPIWebhooksEvents
Channels
BOOKING_CREATED
subscribeonBookingCreated
Booking created
A new booking has been scheduled on an event type.
BOOKING_RESCHEDULED
subscribeonBookingRescheduled
Booking rescheduled
An existing booking has been rescheduled.
BOOKING_CANCELLED
subscribeonBookingCancelled
Booking cancelled
A booking has been cancelled by the organizer or attendee.
BOOKING_REJECTED
subscribeonBookingRejected
Booking rejected
A booking that required confirmation was rejected by the organizer.
BOOKING_REQUESTED
subscribeonBookingRequested
Booking requested
A booking has been requested on an event type that requires confirmation. The booking is in PENDING state until accepted or rejected.
BOOKING_PAYMENT_INITIATED
subscribeonBookingPaymentInitiated
Booking payment initiated
A booking that requires payment has been initiated; awaiting payment.
BOOKING_PAID
subscribeonBookingPaid
Booking paid
Payment for a booking has been completed.
BOOKING_NO_SHOW_UPDATED
subscribeonBookingNoShowUpdated
Booking no-show updated
An attendee on a booking has been marked or unmarked as a no-show.
MEETING_STARTED
subscribeonMeetingStarted
Meeting started
A scheduled meeting's start time has been reached. Payload is flat at the root (no nested `payload` wrapper). Custom payload templates do not apply to this trigger.
MEETING_ENDED
subscribeonMeetingEnded
Meeting ended
A scheduled meeting's end time has been reached. Payload is flat at the root (no nested `payload` wrapper). Custom payload templates do not apply to this trigger.
RECORDING_READY
subscribeonRecordingReady
Recording ready
A Cal Video meeting recording is ready for download.
RECORDING_TRANSCRIPTION_GENERATED
subscribeonRecordingTranscriptionGenerated
Recording transcription generated
A transcription for a Cal Video recording has been generated.
INSTANT_MEETING
subscribeonInstantMeeting
Instant meeting
An instant meeting has been created and is awaiting host acceptance.
INSTANT_MEETING_ACCEPTED
subscribeonInstantMeetingAccepted
Instant meeting accepted
A host has accepted an instant meeting; full booking details delivered.
OOO_CREATED
subscribeonOooCreated
Out-of-office created
An out-of-office entry has been created for a user.
FORM_SUBMITTED
subscribeonFormSubmitted
Form submitted
A Cal.com routing form has been submitted.
FORM_SUBMITTED_NO_EVENT
subscribeonFormSubmittedNoEvent
Form submitted, no event scheduled
A routing form was submitted but no booking was created within ~15 minutes of submission.
AFTER_HOSTS_CAL_VIDEO_NO_SHOW
subscribeonAfterHostsCalVideoNoShow
After-hosts Cal Video no-show
The host did not join a Cal Video meeting within the configured grace period.
AFTER_GUESTS_CAL_VIDEO_NO_SHOW
subscribeonAfterGuestsCalVideoNoShow
After-guests Cal Video no-show
Guests did not join a Cal Video meeting within the configured grace period.
ROUTING_FORM_FALLBACK_HIT
subscribeonRoutingFormFallbackHit
Routing form fallback hit
A routing form submission matched the configured fallback route rather than a specific routing rule.
DELEGATION_CREDENTIAL_ERROR
subscribeonDelegationCredentialError
Delegation credential error
A delegation credential error occurred (organization-wide calendar delegation could not be exercised for a user).
WRONG_ASSIGNMENT_REPORT
subscribeonWrongAssignmentReport
Wrong-assignment report
A booking was reported as routed to the wrong assignee on a routing form.
Messages
✉
BookingCreated
BOOKING_CREATED
A booking was created.
✉
BookingRescheduled
BOOKING_RESCHEDULED
A booking was rescheduled.
✉
BookingCancelled
BOOKING_CANCELLED
A booking was cancelled.
✉
BookingRejected
BOOKING_REJECTED
A booking request was rejected by the organizer.
✉
BookingRequested
BOOKING_REQUESTED
A booking that requires confirmation was requested.
✉
BookingPaymentInitiated
BOOKING_PAYMENT_INITIATED
Payment has been initiated for a booking.
✉
BookingPaid
BOOKING_PAID
Payment for a booking has been completed.
✉
BookingNoShowUpdated
BOOKING_NO_SHOW_UPDATED
An attendee no-show status was updated on a booking.
✉
MeetingStarted
MEETING_STARTED
Scheduled meeting start time has been reached.
✉
MeetingEnded
MEETING_ENDED
Scheduled meeting end time has been reached.
✉
RecordingReady
RECORDING_READY
Meeting recording is available for download.
✉
RecordingTranscriptionGenerated
RECORDING_TRANSCRIPTION_GENERATED
A transcription has been generated for a recording.
✉
InstantMeeting
INSTANT_MEETING
An instant meeting has been requested.
✉
InstantMeetingAccepted
INSTANT_MEETING_ACCEPTED
A host accepted an instant meeting.
✉
OooCreated
OOO_CREATED
An out-of-office entry was created.
✉
FormSubmitted
FORM_SUBMITTED
A routing form was submitted.
✉
FormSubmittedNoEvent
FORM_SUBMITTED_NO_EVENT
A routing form submission did not result in a booking.
✉
AfterHostsCalVideoNoShow
AFTER_HOSTS_CAL_VIDEO_NO_SHOW
Hosts did not join a Cal Video meeting within the grace period.
✉
AfterGuestsCalVideoNoShow
AFTER_GUESTS_CAL_VIDEO_NO_SHOW
Guests did not join a Cal Video meeting within the grace period.
✉
RoutingFormFallbackHit
ROUTING_FORM_FALLBACK_HIT
A routing form submission was routed via the fallback.
✉
DelegationCredentialError
DELEGATION_CREDENTIAL_ERROR
A delegation credential error was detected.
✉
WrongAssignmentReport
WRONG_ASSIGNMENT_REPORT
A booking was reported as routed to the wrong assignee.
Servers
https
subscriber{subscriberUrl}
The HTTPS endpoint that the webhook subscriber registers with Cal.com via `POST /v2/webhooks` (`subscriberUrl`). Cal.com delivers all events this subscription opts into to this URL via HTTP POST with a JSON body.