At the moment, appointment events are status-based and also work for cancelled appointments. But when an appointment is permanently deleted, no webhook event is triggered.
Even deleted appointments can still be retrieved using
GET /calendars/events/appointments/:eventId,
but there is no property to indicate that the appointment is deleted, such as is_deleted or deleted_at.
However, when I try to update that deleted appointment (which is still returned by the GET API), I get an “event id invalid” error.
The main issue is that there is no way to detect or identify deleted appointments in the API integration or automation webhook flow.