Webhooks
Update a webhook
Getting Started
Platform / Cal Provider
Platform / Managed Users
Platform / Webhooks
Orgs / Attributes
Orgs / Attributes / Options
Orgs / Event Types
Orgs / Memberships
Orgs / Schedules
Orgs / Teams
Orgs / Teams / Bookings
Orgs / Teams / Memberships
Orgs / Teams / Schedules
Orgs / Users / OOO
Orgs / Webhooks
Bookings
- GETGet all bookings
- POSTCreate a booking
- GETGet a booking
- POSTReschedule a booking
- POSTCancel a booking
- POSTMark a booking absence
- POSTAutomatically reassign booking to a new host
- POSTReassign a booking to a specific user
- POSTConfirm booking that requires a confirmation
- POSTDecline booking that requires a confirmation
Calendars
Conferencing
Destination Calendars
Event Types
Event Types / Webhooks
Schedules
Selected Calendars
Slots
Stripe
Teams / Event Types
Teams / Memberships
Timezones
Webhooks
Update a webhook
PATCH
/
v2
/
webhooks
/
{webhookId}
Copy
curl --request PATCH \
--url https://api.cal.com/v2/webhooks/{webhookId} \
--header 'Content-Type: application/json' \
--data '{
"payloadTemplate": "{\"content\":\"A new event has been scheduled\",\"type\":\"{{type}}\",\"name\":\"{{title}}\",\"organizer\":\"{{organizer.name}}\",\"booker\":\"{{attendees.0.name}}\"}",
"active": true,
"subscriberUrl": "<string>",
"triggers": [
"BOOKING_CREATED",
"BOOKING_RESCHEDULED",
"BOOKING_CANCELLED",
"BOOKING_CONFIRMED",
"BOOKING_REJECTED",
"BOOKING_COMPLETED",
"BOOKING_NO_SHOW",
"BOOKING_REOPENED"
],
"secret": "<string>"
}'
Copy
{
"status": "success",
"data": {
"payloadTemplate": "{\"content\":\"A new event has been scheduled\",\"type\":\"{{type}}\",\"name\":\"{{title}}\",\"organizer\":\"{{organizer.name}}\",\"booker\":\"{{attendees.0.name}}\"}",
"userId": 123,
"id": 123,
"triggers": [
{}
],
"subscriberUrl": "<string>",
"active": true,
"secret": "<string>"
}
}
Path Parameters
Body
application/json
The template of the payload that will be sent to the subscriberUrl, check cal.com/docs/core-features/webhooks for more information
Available options:
BOOKING_CREATED
, BOOKING_PAYMENT_INITIATED
, BOOKING_PAID
, BOOKING_RESCHEDULED
, BOOKING_REQUESTED
, BOOKING_CANCELLED
, BOOKING_REJECTED
, BOOKING_NO_SHOW_UPDATED
, FORM_SUBMITTED
, MEETING_ENDED
, MEETING_STARTED
, RECORDING_READY
, INSTANT_MEETING
, RECORDING_TRANSCRIPTION_GENERATED
, OOO_CREATED
, AFTER_HOSTS_CAL_VIDEO_NO_SHOW
, AFTER_GUESTS_CAL_VIDEO_NO_SHOW
, FORM_SUBMITTED_NO_EVENT
Response
200 - application/json
Available options:
success
, error
The template of the payload that will be sent to the subscriberUrl, check cal.com/docs/core-features/webhooks for more information
Was this page helpful?
Copy
curl --request PATCH \
--url https://api.cal.com/v2/webhooks/{webhookId} \
--header 'Content-Type: application/json' \
--data '{
"payloadTemplate": "{\"content\":\"A new event has been scheduled\",\"type\":\"{{type}}\",\"name\":\"{{title}}\",\"organizer\":\"{{organizer.name}}\",\"booker\":\"{{attendees.0.name}}\"}",
"active": true,
"subscriberUrl": "<string>",
"triggers": [
"BOOKING_CREATED",
"BOOKING_RESCHEDULED",
"BOOKING_CANCELLED",
"BOOKING_CONFIRMED",
"BOOKING_REJECTED",
"BOOKING_COMPLETED",
"BOOKING_NO_SHOW",
"BOOKING_REOPENED"
],
"secret": "<string>"
}'
Copy
{
"status": "success",
"data": {
"payloadTemplate": "{\"content\":\"A new event has been scheduled\",\"type\":\"{{type}}\",\"name\":\"{{title}}\",\"organizer\":\"{{organizer.name}}\",\"booker\":\"{{attendees.0.name}}\"}",
"userId": 123,
"id": 123,
"triggers": [
{}
],
"subscriberUrl": "<string>",
"active": true,
"secret": "<string>"
}
}