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

Бот в открытой линии

Бот может передать сессию сотруднику, перевести её в выбранную очередь, завершить или запросить автоматическое сообщение линии. Нужны оба скоупа imbot и imopenlines и ключ, которому принадлежит бот. READONLY-ключ не выполняет эти действия.

Действие Маршрут
Передать оператору POST /v1/bots/:botId/openlines/session/operator
Перевести POST /v1/bots/:botId/openlines/session/transfer
Завершить POST /v1/bots/:botId/openlines/session/finish
Автосообщение POST /v1/bots/:botId/openlines/session/auto-message

Передача человеку

Оставьте welcomeBotId в настройках линии: он определяет бота, который начинает диалог. Вместо /v1/bots/:botId/chats/:dialogId/leave вызывайте .../session/operator для передачи оператору или .../session/transfer с queueId для выбранной очереди. /leave меняет состав участников IM-чата и не передаёт сессию в очередь.

У transfer есть явный leave: true, чтобы бот покинул чат после перевода; без него бот остаётся. У operator параметра leave нет. welcomeBotLeft: "queue" задаёт момент выхода в нативном сценарии; его влияние на API-переход не установлено, поэтому для управляемого выхода используйте transfer с leave.

Идентификаторы и права

botId — числовой идентификатор Б24. chatId берите из event.data.chat.id либо sessions[].chatId в поиске сессий. Принимаются положительное безопасное целое, числовая строка или chat<N>. dialogId принимается только в форме chat<N>: голое число обозначает личный диалог с сотрудником, а не сессию линии. Алиас CHAT_ID читается после chatId и dialogId; null пропускается, ошибочное присутствующее значение вызывает 400.

Права на сессию проверяет Б24. Наша проверка владения относится к боту из пути, а не к принадлежности чата. Все четыре действия и операторские answer/finish делят лимит 30 запросов в минуту на портал; лимит на процессе делится на число активных реплик.

Секрет бота хранится на сервере; передавать его в запросе не нужно. CLIENT_ID нужен только внутреннему вызову transfer/finish на вебхуке. При BOT_ID_ERROR сервер один раз пробует альтернативную композицию; прочие отказы не повторяются.

Аудит фиксирует успешные вызовы и отказы Б24, идентификатор ключа, бота, чата и цель перевода. Текст автосообщения в аудит не записывается. Бот из пути в аудите не гарантирует, что Б24 резолвил именно его под OAuth.