Перейти к содержимому
AISARAISAR
Каналы

Каналы

Канал удалён с сохранением переписки

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:

http
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

json
{
  "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.idintegerID канала
channel.typestringТип канала: `whatsapp`, `whatsapp_business`, `instagram`, `instagram_business`, `telegram_bot`, `live_chat`
channel.namestringНазвание канала
channel.statusstringВсегда `disconnected` — архивация принудительно переводит канал в это состояние
channel.account_namestring|nullИмя аккаунта на платформе или номер телефона
channel.connected_atstring|nullВремя последнего подключения (ISO 8601)
channel.disconnected_atstring|nullВремя отключения (ISO 8601)
channel.archived_atstring|nullВремя архивации (ISO 8601). У живых каналов — `null`, поэтому по этому полю архивный канал отличается от просто отключённого