We've cleaned up how calendar webhooks fire, so you only get the events you've subscribed to — and two new event types are now available.
What's new
New events:
appointment.completed
and
appointment.no_show
. When an appointment's status changes to completed or no-show, we now send a dedicated event instead of a generic update. Both are off by default — enable them in
Calendar settings
External CRM
External Webhook
.
appointment.updated is now precise. It only fires when an appointment's time or assigned user changes, matching what the settings UI has always said. Status changes no longer arrive disguised as updates.
Your event checkboxes are now fully respected. Previously, some webhook deliveries ignored the event selections on the calendar. Now every event honors your subscription settings.
Events you can receive
appointment.created
— always sent when the webhook is enabled
appointment.updated
— time or assigned user changes (on by default)
appointment.cancelled
— on by default
appointment.completed
— new, off by default
appointment
.no_show
— new, off by default
Heads up
: if your integration relied on receiving completed or no-show status changes as appointment.updated events, enable the new Completed / No-show events on your calendar to keep receiving them — they now arrive under their own event names.
Your existing settings are unchanged; the new events are opt-in.