AISARAISAR
Все вебхуки

Шаблоны

Шаблон одобрен

template.approved

Срабатывает, когда шаблон сообщения WhatsApp Business одобрен Meta и становится доступным для отправки. Событие генерируется во время периодической синхронизации статусов шаблонов, когда статус модерации Meta переходит в `approved`. Используйте его, чтобы сбросить кэшированный список одобренных шаблонов и узнать, какие шаблоны теперь можно отправлять через `POST /v1/messages/send-template`.

HTTP-запрос

AISAR отправляет подписанный POST-запрос на ваш webhook_url:

http
POST {webhook_url}
Content-Type: application/json
X-AISAR-Signature: sha256=...

{
  "event": "template.approved",
  "event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
  "timestamp": "2026-06-01T12:00:00.000000Z",
  "company_id": 1,
  "data": {
    "template": {
      "id": 42,
      "external_id": "123456789012345",
      "name": "order_update",
      "slug": "order_update_en_57",
      "language": "en",
      "category": "utility",
      "status": "published",
      "meta_status": "approved",
      "meta_status_reason": null,
      "channel_id": 57,
      "channel_type": "whatsapp_business"
    }
  }
}

Заголовок X-AISAR-Signature содержит HMAC-SHA256 подпись тела запроса — используйте её, чтобы убедиться, что запрос пришёл от AISAR.

Пример payload

json
{
  "event": "template.approved",
  "event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
  "timestamp": "2026-06-01T12:00:00.000000Z",
  "company_id": 1,
  "data": {
    "template": {
      "id": 42,
      "external_id": "123456789012345",
      "name": "order_update",
      "slug": "order_update_en_57",
      "language": "en",
      "category": "utility",
      "status": "published",
      "meta_status": "approved",
      "meta_status_reason": null,
      "channel_id": 57,
      "channel_type": "whatsapp_business"
    }
  }
}

Поля payload

ПолеТипОписание
template.idintegerID шаблона в AISAR — передаётся как `template_id` в `/v1/messages/send-template`
template.external_idstring|nullID шаблона на стороне Meta
template.namestringИмя шаблона, зарегистрированное в Meta
template.slugstringВнутренний slug шаблона
template.languagestringКод языка BCP-47 (например, `en`, `en_US`)
template.categorystring|nullКатегория: `marketing`, `utility` или `authentication`
template.statusstringЛокальный статус жизненного цикла: `draft`, `published`, `archived`
template.meta_statusstringДля этого события всегда `approved`
template.meta_status_reasonstring|nullДля одобренного шаблона всегда `null`
template.channel_idinteger|nullКанал WhatsApp Business, к которому относится шаблон
template.channel_typestring|nullТип канала — `whatsapp_business`