Calendar V2 Webhooks

Calendar V2 Webhooks

The Calendar V2 API produces two types of webhooks, each scoped to a specific calendar and sent via Svix.

These webhooks are used to notify you about changes to calendars and their events, and you should use these to schedule bots and delete them according to your application logic.

Events


Calendar Update

This webhook is sent whenever the calendar's data changes (for instance, when status becomes disconnected).

{
  "event": "calendar.update",
  "data": {
    "calendar_id": string,
  }
}

You should re-fetch the calendar via Retrieve Calendar to get the latest state.

Calendar Sync Events

This webhook is sent whenever events on a calendar have been updated.

{
  "event": "calendar.sync_events",
  "data": {
    "calendar_id": string,
    "last_updated_ts": string, // iso 8601 formatted datetime
  }
}

You should re-fetch the calendar events for this calendar via List Calendar Events. You can choose to do either a full sync or use the last_updated_ts field in the payload (pass as updated_at__gte query parameter) to do an incremental sync of events associated with the calendar on your end.

Use the is_deleted field on the calendar event object to know if the event has been removed from the calendar or not. (Note: Recall does not delete any calendar events, the consumer is expected to filter out events on basis of is_deleted attribute when displaying them to the end user)