Delete a native contact
Removes the contact, after cancelling every booking it holds.
The bookings go first, and a delete that cannot cancel one is refused whole. Deleting the row by hand would leave the appointment live, the seat held and the attendee expecting it. A refusal comes back with failed naming the bookings that would not cancel, and, when some already went, cancelled naming those: they do not come back.
Send expectedAppointmentIds when you showed somebody a confirmation. If the contact has been booked again since, the delete is refused with 409 rather than quietly cancelling something the person never saw.
This is not erasure. The number keeps its do-not-call decision so a later import cannot resurrect it clear, which is the whole point of the marker a create reads.
Cookie-auth callers must send the x-csrf-token header.
Required API key scope: contacts:write.
Authorizations
Send your API key as Authorization: Bearer YOUR_API_KEY.
Path Parameters
The contact id.
1Query Parameters
The sub-account. It is the only thing that identifies the tenant on these routes, and it is re-checked against your access on every call. A sub-account that keeps its contacts in a CRM answers 400.
