Каналы
Канал удалён с сохранением переписки
channel.archivedСрабатывает, когда канал удаляют, но переписку по нему сохраняют (`DELETE /v1/channels/{id}` без `keep_history=false` — поведение по умолчанию). Канал перестаёт принимать и отправлять сообщения: новых событий с его `channel_id` больше не будет, отправка в его тред отклоняется, а `GET /v1/channels` его не возвращает. При этом уже полученные вами сообщения остаются валидными — их `channel_id` продолжает ссылаться на этот канал, и в AISAR переписка доступна на чтение. Сам канал после этого можно найти через `GET /v1/channels/archived` (справочник REST API, группа «Каналы») — это единственное место, где он теперь отображается. Событие приходит один раз, в момент удаления. Если клиент выбрал удаление вместе с перепиской, событие НЕ отправляется — канал и его сообщения исчезают.
HTTP-запрос
AISAR отправляет подписанный POST-запрос на ваш webhook_url:
POST {webhook_url}
Content-Type: application/json
X-AISAR-Signature: sha256=...
{
"event": "channel.archived",
"event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
"timestamp": "2026-07-29T12:00:00.000000Z",
"company_id": 1,
"data": {
"channel": {
"id": 2,
"type": "whatsapp",
"name": "Main WhatsApp",
"status": "disconnected",
"account_name": "+77001234567",
"connected_at": "2026-03-26T10:00:00.000000Z",
"disconnected_at": "2026-07-29T12:00:00.000000Z",
"archived_at": "2026-07-29T12:00:00.000000Z"
}
}
}Заголовок X-AISAR-Signature содержит HMAC-SHA256 подпись тела запроса — используйте её, чтобы убедиться, что запрос пришёл от AISAR.
Пример payload
{
"event": "channel.archived",
"event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
"timestamp": "2026-07-29T12:00:00.000000Z",
"company_id": 1,
"data": {
"channel": {
"id": 2,
"type": "whatsapp",
"name": "Main WhatsApp",
"status": "disconnected",
"account_name": "+77001234567",
"connected_at": "2026-03-26T10:00:00.000000Z",
"disconnected_at": "2026-07-29T12:00:00.000000Z",
"archived_at": "2026-07-29T12:00:00.000000Z"
}
}
}Поля payload
| Поле | Тип | Описание |
|---|---|---|
channel.id | integer | ID канала |
channel.type | string | Тип канала: `whatsapp`, `whatsapp_business`, `instagram`, `instagram_business`, `telegram_bot`, `live_chat` |
channel.name | string | Название канала |
channel.status | string | Всегда `disconnected` — архивация принудительно переводит канал в это состояние |
channel.account_name | string|null | Имя аккаунта на платформе или номер телефона |
channel.connected_at | string|null | Время последнего подключения (ISO 8601) |
channel.disconnected_at | string|null | Время отключения (ISO 8601) |
channel.archived_at | string|null | Время архивации (ISO 8601). У живых каналов — `null`, поэтому по этому полю архивный канал отличается от просто отключённого |