SavvyCal API
Endpoints
Resources
Webhooks
SavvyCal API
Home Help

Webhook Payloads

Webhook request bodies includes the following properties:

Property Type Description
type string The type of payload.
id string A unique ID representing the specific payload.
version string A version identifier for the payload.
occurred_at datetime An ISO-8601 timestamp for when the event occurred.
payload object An object representing the relevant resource (e.g. an Event).

event.created

This payload is sent when someone schedules a new event via one of your scheduling links (or when approval is granted by the organizer on a event that requires approval). The payload property contains the Event resource. Here’s an example request body:

{
"type": "event.created",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
"state": "confirmed",
// See Event resource
}
}

event.requested

This payload is sent when someone schedules a new event via one of your scheduling links with approval required (see Require approval for new events). The payload property contains the Event resource. Here’s an example request body:

{
"type": "event.requested",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
"state": "awaiting_approval",
// See Event resource
}
}

event.approved

This payload is sent when the organizer approves an event (see Require approval for new events). The payload property contains the Event resource. Here’s an example request body:

{
"type": "event.requested",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
"state": "confirmed",
// See Event resource
}
}

event.declined

This payload is sent when the organizer declines an event (see Require approval for new events). The payload property contains the Event resource. Here’s an example request body:

{
"type": "event.declined",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
"state": "declined",
// See Event resource
}
}

event.rescheduled

This payload is sent when someone reschedules an existing event. The payload property contains the Event resource. Here’s an example request body:

{
"type": "event.rescheduled",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
// See Event resource
}
}

event.canceled

This payload is sent when someone cancels an event. The payload property contains the Event resource. Here’s an example request body:

{
"type": "event.canceled",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
// See Event resource
}
}

event.attendee.added

This payload is sent when someone is added to (or joins) an existing event. The payload property contains the Event and Attendee resources. Here’s an example request body:

{
"type": "event.attendee.added",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
"event": {
// See Event resource
},
"attendee": {
// See Attendee resource
}
}
}

event.attendee.canceled

This payload is sent when an individual cancels from a group event. The payload property contains the Event and Attendee resources. Here’s an example request body:

{
"type": "event.attendee.canceled",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
"event": {
// See Event resource
},
"attendee": {
// See Attendee resource
}
}
}

event.attendee.rescheduled

This payload is sent when an individual reschedules their time slot for a group event. The payload property contains the original Event and Attendee resources, as well as the new Event and Attendee. Here’s an example request body:

{
"type": "event.attendee.rescheduled",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
"original_event": {
// See Event resource
},
"original_attendee": {
// See Attendee resource
}
"new_event": {
// See Event resource
},
"new_attendee": {
// See Attendee resource
}
}
}

poll.response.created

This payload is sent when someone responds to a meeting poll. The payload property contains the Meeting Poll Response resource. Here’s an example request body:

{
"type": "poll.response.created",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
// See Meeting Poll Response resource
}
}

poll.response.updated

This payload is sent when someone updates their response to a meeting poll. The payload property contains the Meeting Poll Response resource. Here’s an example request body:

{
"type": "poll.response.updated",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
// See Meeting Poll Response resource
}
}

workflow.action.triggered

This payload is sent when a Trigger automation workflow action is triggered. The payload property contains the Workflow, Workflow Rule, Workflow Action, and Event resources. Here’s an example request body:

{
"type": "workflow.action.triggered",
"id": "payload_7RDQF0G5VT8PAV4ERN90B5Q27Y",
"version": "2020-11-18",
"occurred_at": "2020-11-20T19:53:47Z",
"payload": {
"workflow": {
// See Workflow resource
},
"rule": {
// See Workflow Rule resource
},
"action": {
// See Workflow Action resource
},
"event": {
// See Event resource
}
}
}