Для AI-агентов: markdown этой страницы — /docs-content/bots/events/user-events.md индекс документации — /llms.txt

User-события (ONIMV2*)

Общий первый шаг — подписка: POST /v1/chats/events/subscribe (скоуп im, не imbot). Без активной подписки Битрикс24 не регистрирует пользовательские события.

Дальше события забирают одним из двух способов:

  1. Вместе с bot-событиями — передать withUserEvents=true в polling бота. Bot-события (ONIMBOTV2*) и user-события (ONIMV2*) приходят в одном массиве events.
  2. Отдельным опросом от имени пользователяGET /v1/chats/events. Не требует зарегистрированного бота, подходит для агентов, работающих от имени пользователя.

Список событий

Событие Описание
ONIMV2MESSAGEADD Новое сообщение в подписанном чате
ONIMV2MESSAGEUPDATE Сообщение отредактировано
ONIMV2MESSAGEDELETE Сообщение удалено
ONIMV2JOINCHAT Участник зашёл в чат
ONIMV2REACTIONCHANGE Реакция изменена

ONIMV2MESSAGEADD

Новое сообщение в подписанном чате. Объект message совпадает по составу с событиями ботов, но ключи внутри params — в camelCase.

JSON
{
  "eventId": 46,
  "type": "ONIMV2MESSAGEADD",
  "date": "2026-04-13T17:15:14+03:00",
  "data": {
    "message": {
      "id": 1520,
      "chatId": 123,
      "authorId": 17,
      "text": "Да, согласен",
      "isSystem": false,
      "forward": null,
      "params": { "replyId": "1518" }
    },
    "chat": { "id": 123, "dialogId": "chat123", "type": "chat", "name": "Рабочий чат" },
    "user": { "id": 17, "name": "Иван Петров", "type": "user" },
    "language": "ru"
  }
}

Поля data:

Поле Тип Описание
message.id number ID сообщения
message.text string Текст сообщения
message.authorId number ID автора
message.params.replyId string Ответ на сообщение: ID процитированного сообщения
chat.dialogId string ID диалога
user object Автор сообщения (id, name и др.)
language string Язык интерфейса пользователя

Известные особенности

Отдельный скоуп: подписка и отписка требуют скоуп im, а не imbot.

Смотрите также