Webhooks & APIOutbound

chat.deleted

Emitted when a chat is hard-deleted

type: chat.deleted

Fired when a chat record is permanently removed.

When it fires

  • A chat is hard-deleted via the admin UI or an internal process.

Archiving is not a delete — it emits chat.updated with a non-null archivedAt.

data shape

type Data = {
  chat: Pick<ChatPayload, "id" | "integrationId" | "channel">;
  deletedAt: string;  // ISO-8601 UTC
};

Only the slim identifying fields are included — by the time this event fires, the full record is gone. See ChatPayload slim variant.

Example envelope

{
  "id": "evt_c3d4e5f6-0a1b-2c3d-4e5f-6a7b8c9d0e1f",
  "type": "chat.deleted",
  "timestamp": "2026-04-24T14:10:00.000Z",
  "data": {
    "chat": {
      "id": "6804f4c2a6f9f35f6e66f1a1",
      "integrationId": "67f95b0126a4d1c9e3f0aa12",
      "channel": "WHATSAPP"
    },
    "deletedAt": "2026-04-24T14:10:00.000Z"
  },
  "meta": {
    "eventId": "evt_c3d4e5f6-0a1b-2c3d-4e5f-6a7b8c9d0e1f",
    "event": "chat.deleted",
    "occurredAt": "2026-04-24T14:10:00.000Z",
    "organisationId": "6640f3d5c8a0d7e8b7f20222",
    "connectionId": "6640f45ac8a0d7e8b7f2014a",
    "apiVersion": "2026-04-01",
    "attempt": 1
  }
}

On this page