Skip to documentation

Webhook events

contact.deleted

A contact was deleted.

When it fires

contact.deleted fires when a contact is deleted. data holds the contact as it was, with the segments it belonged to, and updated_at set to the time of deletion.

Payload

json
{
  "type": "contact.deleted",
  "created_at": "2026-09-29T10:00:00.000Z",
  "data": {
    "id": "YOUR_CONTACT_ID",
    "segment_ids": ["YOUR_SEGMENT_ID"],
    "created_at": "2026-09-29T09:59:59.000Z",
    "updated_at": "2026-09-29T10:00:00.000Z",
    "email": "ada@example.net",
    "first_name": "Ada",
    "last_name": null,
    "unsubscribed": false
  }
}
FieldDescription
idThe contact's ID.
segment_idsAt most 100 segment IDs; this is not a complete membership list for contacts in more segments.
created_at, updated_atWhen the contact was created and last changed.
emailThe contact's normalized email address.
first_name, last_nameThe name, or null when empty.
unsubscribedWhether the contact is unsubscribed from all broadcasts.

Custom property values and topic choices are not part of the payload. The deleted contact is no longer retrievable; keep any data you need before deletion.

Handle the event

Verify the signature and deduplicate by svix-id.