Все вебхуки
Сообщения
Реакция на сообщение
message.reaction.updatedОтправляется, когда к сообщению добавляют или с него снимают реакцию. Содержит эмодзи, действие (added/removed) и того, кто отреагировал. В WhatsApp у каждого отправителя может быть только одна реакция на сообщение — новая заменяет предыдущую; при снятии реакции emoji равен null.
HTTP-запрос
AISAR отправляет подписанный POST-запрос на ваш webhook_url:
http
POST {webhook_url}
Content-Type: application/json
X-AISAR-Signature: sha256=...
{
"event": "message.reaction.updated",
"event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
"timestamp": "2026-03-26T12:00:00.000000Z",
"company_id": 1,
"data": {
"message_id": 123,
"conversation_id": 45,
"channel_id": 2,
"reaction": {
"emoji": "👍",
"action": "added",
"actor": {
"type": "contact",
"contact_id": 10,
"user_id": null,
"name": "John Doe"
}
}
}
}Заголовок X-AISAR-Signature содержит HMAC-SHA256 подпись тела запроса — используйте её, чтобы убедиться, что запрос пришёл от AISAR.
Пример payload
json
{
"event": "message.reaction.updated",
"event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
"timestamp": "2026-03-26T12:00:00.000000Z",
"company_id": 1,
"data": {
"message_id": 123,
"conversation_id": 45,
"channel_id": 2,
"reaction": {
"emoji": "👍",
"action": "added",
"actor": {
"type": "contact",
"contact_id": 10,
"user_id": null,
"name": "John Doe"
}
}
}
}Поля payload
| Поле | Тип | Описание |
|---|---|---|
message_id | integer | ID сообщения, на которое поставили или с которого сняли реакцию |
conversation_id | integer | ID диалога |
channel_id | integer | ID канала |
reaction.emoji | string|null | Эмодзи реакции. null, если action = removed |
reaction.action | string | added или removed |
reaction.actor | object | Кто добавил или снял реакцию |
reaction.actor.type | string | user или contact |
reaction.actor.contact_id | integer|null | ID контакта (если реакцию поставил контакт) |
reaction.actor.user_id | integer|null | ID пользователя (если реакцию поставил оператор) |
reaction.actor.name | string | Отображаемое имя актора |