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

Открытые линии

Открытые линии Битрикс24 принимают обращения клиентов из мессенджеров и социальных сетей и распределяют их по операторам. Методы раздела настраивают линии, ведут диалоги от имени оператора, связывают их с карточками CRM и читают статистику контакт-центра.

Скоуп: imopenlines | Базовый URL: https://vibecode.bitrix24.tech/v1 | Авторизация: X-Api-Key

Быстрый старт | Полный пример | Справочник эндпоинтов | Коды ошибок

Разделы документации

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

Идентификатор Что это Где взять
ИдентификаторconfigId, lineId Что этоОткрытая линия Где взятьПоле data[].id в ответе GET /v1/openline-configs
ИдентификаторsessionId Что этоОдно обращение клиента Где взятьПоле sessions[].id в ответе POST /v1/openlines/sessions/search
ИдентификаторchatId Что этоЧат открытой линии, общий для всех сессий клиента Где взятьПоле sessions[].chatId в ответе POST /v1/openlines/sessions/search, поле data[].chatId в ответе GET /v1/openlines/crm/chats по карточке CRM или POST /v1/openlines/sessions/open по коду клиента

Действия над диалогом выполняются от имени сотрудника, к которому привязан ключ. Параметра «сотрудник» у них нет — подробности в разделе Действия оператора и своя пауза.

Статистика (дашборд)

Методы статистики выходят в обновлении imopenlines 26.700.0 и доступны пока не на всех порталах Битрикс24. Если обновление на ваш портал ещё не пришло, API вернёт 422 METHOD_NOT_YET_AVAILABLE — это признак того, что метод на портале ещё не выпущен, а не ошибка интеграции.

Шесть методов только читают данные: сводные показатели линии, операторы в реальном времени, сессии с фильтрами, метрики выбранных сессий, оценки клиентов и история переназначений. Данные видны в пределах прав сотрудника, к которому привязан ключ. Если у него нет доступа ни к одной линии, метод возвращает пустой список или нулевые показатели, а не ошибку. Методам нужно право на статистику Открытых линий report_open_lines, без него запрос вернёт 403 B24_TARIFF_RESTRICTION.

Эндпоинт Назначение
ЭндпоинтPOST /v1/openlines/stats НазначениеАгрегаты по линии за период
ЭндпоинтGET /v1/openlines/operators НазначениеСтатус и нагрузка операторов
ЭндпоинтPOST /v1/openlines/sessions/search НазначениеПоиск сессий с фильтрами
ЭндпоинтPOST /v1/openlines/sessions/stats НазначениеМетрики выбранных сессий, до 100 за вызов
ЭндпоинтPOST /v1/openlines/ratings/search НазначениеСессии с оценкой клиента за период
ЭндпоинтPOST /v1/openlines/sessions/transfers НазначениеИстория переназначений, до 50 сессий за вызов

Остальные методы раздела работают на любом портале. Исключение — История сессии: её платформа Вайбкод включает постепенно, и до включения вызов отвечает 403 OPENLINES_HISTORY_DISABLED. Права report_open_lines и обновления imopenlines 26.700.0 история сессии не требует.

Типичные сценарии

Сценарий Эндпоинты
СценарийОтчёт по обращениям за период ЭндпоинтыPOST /v1/openlines/stats, POST /v1/openlines/sessions/search
СценарийМонитор очереди и нагрузки операторов ЭндпоинтыGET /v1/openlines/operators
СценарийПанель оценок клиентов (CSAT) ЭндпоинтыPOST /v1/openlines/ratings/search, POST /v1/openlines/stats
СценарийРазбор жалобы по одной сессии ЭндпоинтыPOST /v1/openlines/sessions/stats, POST /v1/openlines/sessions/history
СценарийАнализ переназначений между операторами ЭндпоинтыPOST /v1/openlines/sessions/transfers
СценарийПодключиться к диалогу клиента из карточки CRM ЭндпоинтыGET /v1/openlines/crm/chats, POST /v1/openlines/sessions/intercept или POST /v1/openlines/sessions/join
СценарийНаписать клиенту в диалог карточки CRM ЭндпоинтыGET /v1/openlines/crm/chats, POST /v1/openlines/crm/messages
СценарийВзять диалог себе и передать коллеге ЭндпоинтыPOST /v1/openlines/sessions/start, POST /v1/openlines/operator/transfer

Рекомендации

Быстрый старт

Получите ID линии и сводные показатели этой линии за период.

1. Найдите линию

Terminal
curl -H "X-Api-Key: YOUR_API_KEY" \
  "https://vibecode.bitrix24.tech/v1/openline-configs"

В ответе data — массив линий портала. Поле data[].id — ID линии, data[].name — её название.

2. Запросите сводные показатели линии

Terminal
curl -X POST "https://vibecode.bitrix24.tech/v1/openlines/stats" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "dateFrom": "2026-09-01T00:00:00+03:00",
    "dateTo": "2026-09-30T23:59:59+03:00",
    "configId": 3
  }'

Ответ:

JSON
{
  "success": true,
  "data": {
    "totalSessions": 3,
    "closedSessions": 2,
    "spamSessions": 0,
    "avgWaitAnswer": 25,
    "avgSessionDuration": 17.3333,
    "likeCount": 0,
    "dislikeCount": 0,
    "votedSessions": 0,
    "positiveRate": 0,
    "kpiFirstAnswerOk": 0,
    "kpiFirstAnswerFail": 0,
    "sessionsBySource": [{ "source": "livechat", "count": 2 }, { "source": "telegrambot", "count": 1 }],
    "sessionsByHour": [1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0],
    "sessionsByOperator": [{ "operatorId": 42, "count": 2, "avgWaitAnswer": 25, "positiveRate": 0 }]
  }
}

Поля ответа — на странице Агрегаты по линии за период.

Полный пример

Отчёт по обращениям линии за период: сводные показатели, сессии с привязкой к CRM, их метрики и все диалоги карточки CRM первой сессии. Все вызовы только читают данные.

javascript
const VIBE_KEY = process.env.VIBE_KEY
const BASE = 'https://vibecode.bitrix24.tech/v1'

async function api(method, path, body = null) {
  const opts = { method, headers: { 'X-Api-Key': VIBE_KEY } }
  if (body) {
    opts.headers['Content-Type'] = 'application/json'
    opts.body = JSON.stringify(body)
  }
  const res = await fetch(`${BASE}${path}`, opts)
  return res.json()
}

// 1. Линии портала: берём ID первой линии
const lines = await api('GET', '/openline-configs')
const configId = lines.data[0].id
console.log('Линия:', configId)

// 2. Сводные показатели линии за период
const period = { dateFrom: '2026-10-01T00:00:00+03:00', dateTo: '2026-10-19T23:59:59+03:00' }
const stats = await api('POST', '/openlines/stats', { ...period, configId })
console.log('Обращений:', stats.data.totalSessions, 'закрыто:', stats.data.closedSessions)

// 3. Сессии того же периода с привязкой к CRM
const found = await api('POST', '/openlines/sessions/search', {
  configId,
  dateCreateFrom: period.dateFrom,
  dateCreateTo: period.dateTo,
  hasCrm: 'Y',
  limit: 50,
})
const sessions = found.data.sessions
console.log('Сессий на странице:', sessions.length, 'есть ещё:', found.data.hasNextPage)

if (sessions.length > 0) {
  // 4. Метрики найденных сессий, до 100 за вызов
  const metrics = await api('POST', '/openlines/sessions/stats', {
    sessionId: sessions.map((s) => s.id),
  })
  for (const m of metrics.data.sessions) console.log('Сессия', m.sessionId, 'сообщений:', m.messagesCount)

  // 5. Все диалоги карточки CRM, к которой привязана первая сессия
  const { crmEntityType, crmEntityId } = sessions[0]
  const chats = await api('GET', `/openlines/crm/chats?crmEntityType=${crmEntityType}&crmEntityId=${crmEntityId}&activeOnly=false`)
  for (const c of chats.data) console.log('Чат', c.chatId, 'канал:', c.connectorTitle)
}

Как получить следующие страницы сессий — в абзаце «Пагинация» на странице Поиск сессий. Найденный на шаге 5 chatId принимают перехват диалога, вход в диалог и сообщение клиенту.

Справочник эндпоинтов

Все 39 эндпоинтов раздела:

Метод Путь Bitrix24 метод Описание
МетодPOST Путь/v1/openline-configs Bitrix24 методimopenlines.config.add ОписаниеСоздать конфигурацию линии
МетодGET Путь/v1/openline-configs Bitrix24 методimopenlines.config.list.get ОписаниеСписок конфигураций
МетодGET Путь/v1/openline-configs/:id Bitrix24 методimopenlines.config.get ОписаниеКонфигурация по ID, с очередью операторов
МетодPATCH Путь/v1/openline-configs/:id Bitrix24 методimopenlines.config.update ОписаниеОбновить конфигурацию
МетодDELETE Путь/v1/openline-configs/:id Bitrix24 методimopenlines.config.delete ОписаниеУдалить конфигурацию
МетодPOST Путь/v1/openline-configs/search Bitrix24 методimopenlines.config.list.get ОписаниеПоиск конфигураций по фильтру
МетодGET Путь/v1/openline-configs/fields Bitrix24 метод— ОписаниеСхема полей конфигурации
МетодPOST Путь/v1/openline-configs/aggregate Bitrix24 методimopenlines.config.list.get ОписаниеАгрегация по конфигурациям
МетодPOST Путь/v1/openlines/operator/answer Bitrix24 методimopenlines.operator.answer ОписаниеПринять диалог оператором
МетодPOST Путь/v1/openlines/operator/finish Bitrix24 методimopenlines.operator.finish ОписаниеЗавершить диалог оператором
МетодGET Путь/v1/openline-configs/:lineId/quick-replies Bitrix24 методimopenlines.v2.QuickReply.list ОписаниеСписок быстрых ответов и разделов линии
МетодPOST Путь/v1/openline-configs/:lineId/quick-replies Bitrix24 методimopenlines.v2.QuickReply.save ОписаниеСоздать быстрый ответ
МетодPATCH Путь/v1/openline-configs/:lineId/quick-replies/:id Bitrix24 методimopenlines.v2.QuickReply.save ОписаниеИзменить быстрый ответ
МетодDELETE Путь/v1/openline-configs/:lineId/quick-replies/:id Bitrix24 методimopenlines.v2.QuickReply.delete ОписаниеУдалить быстрый ответ
МетодPOST Путь/v1/openlines/sessions/search Bitrix24 методimopenlines.v2.Session.list ОписаниеПоиск сессий с фильтрами
МетодPOST Путь/v1/openlines/sessions/stats Bitrix24 методimopenlines.v2.Session.Stat.get ОписаниеМетрики выбранных сессий, до 100 за вызов
МетодPOST Путь/v1/openlines/sessions/transfers Bitrix24 методimopenlines.v2.Session.Transfer.list ОписаниеИстория переназначений, до 50 сессий за вызов
МетодPOST Путь/v1/openlines/sessions/history Bitrix24 методimopenlines.session.history.get ОписаниеПереписка последней сессии чата по chatId
МетодPOST Путь/v1/openlines/sessions/open Bitrix24 методimopenlines.session.open ОписаниеОткрыть чат клиента по коду в коннекторе
МетодPOST Путь/v1/openlines/sessions/start Bitrix24 методimopenlines.session.start ОписаниеНачать сессию: сотрудник становится оператором чата
МетодPOST Путь/v1/openlines/sessions/intercept Bitrix24 методimopenlines.session.intercept ОписаниеПерехватить диалог на текущего оператора
МетодPOST Путь/v1/openlines/sessions/join Bitrix24 методimopenlines.session.join ОписаниеВойти в диалог ещё одним участником
МетодPOST Путь/v1/openlines/sessions/send-form Bitrix24 методimopenlines.dialog.form.send ОписаниеОтправить CRM-форму клиенту в диалог
МетодGET Путь/v1/openlines/crm/chats Bitrix24 методimopenlines.crm.chat.get ОписаниеЧаты линии, привязанные к карточке CRM
МетодPOST Путь/v1/openlines/crm/chats/users Bitrix24 методimopenlines.crm.chat.user.add ОписаниеДобавить сотрудника в CRM-чат
МетодDELETE Путь/v1/openlines/crm/chats/users Bitrix24 методimopenlines.crm.chat.user.delete ОписаниеУдалить сотрудника из CRM-чата
МетодPOST Путь/v1/openlines/crm/messages Bitrix24 методimopenlines.crm.message.add ОписаниеОтправить сообщение клиенту
МетодPOST Путь/v1/openlines/dialogs/:chatId/lead Bitrix24 методimopenlines.crm.lead.create ОписаниеСоздать лид из обращения
МетодPOST Путь/v1/openlines/dialogs/lookup Bitrix24 методimopenlines.dialog.get ОписаниеМетаданные диалога и ID линии по chatId, dialogId или sessionId
МетодPOST Путь/v1/openlines/operator/skip Bitrix24 методimopenlines.operator.skip ОписаниеПропустить диалог
МетодPOST Путь/v1/openlines/operator/spam Bitrix24 методimopenlines.operator.spam ОписаниеПометить клиента спамером и закрыть диалог
МетодPOST Путь/v1/openlines/operator/transfer Bitrix24 методimopenlines.operator.transfer ОписаниеПередать диалог сотруднику или в очередь линии
МетодPOST Путь/v1/openlines/operator/finish-another Bitrix24 методimopenlines.operator.another.finish ОписаниеЗавершить диалог другого оператора
МетодGET Путь/v1/openlines/operator/pause Bitrix24 методimopenlines.operator.pause.get ОписаниеПрочитать свою паузу оператора
МетодPOST Путь/v1/openlines/operator/pause Bitrix24 методimopenlines.operator.pause.start ОписаниеВключить свою паузу оператора
МетодDELETE Путь/v1/openlines/operator/pause Bitrix24 методimopenlines.operator.pause.stop ОписаниеВыключить свою паузу оператора
МетодPOST Путь/v1/openlines/stats Bitrix24 методimopenlines.v2.Stat.get ОписаниеАгрегаты по линии за период
МетодGET Путь/v1/openlines/operators Bitrix24 методimopenlines.v2.Operator.list ОписаниеСтатус и нагрузка операторов
МетодPOST Путь/v1/openlines/ratings/search Bitrix24 методimopenlines.v2.Session.Rating.list ОписаниеСессии с оценкой клиента за период

Приём и завершение диалога оператором описаны на странице Конфигурации открытых линий. Шесть методов статистики выходят в обновлении imopenlines 26.700.0, см. Статистика (дашборд). У GET /v1/openline-configs/fields вызова Битрикс24 нет — схему полей отдаёт Вайбкод.

Коды ошибок

Ошибки Открытых линий

HTTP Код Когда
HTTP400 КодINVALID_JSON_BODY КогдаТело запроса не разобралось как JSON. Проверка идёт до проверки полей, поэтому про отсутствующие параметры ответ ничего не говорит. Так отвечают методы статистики, истории сессии, метаданных диалога, CRM-чатов, перехвата и входа в диалог и быстрых ответов. Создание, изменение и поиск конфигураций линий, действия оператора, его пауза, открытие и начало сессии на такое тело отвечают 400 FST_ERR_CTP_INVALID_JSON_BODY
HTTP400 КодMISSING_PARAMS КогдаНе переданы обязательные параметры, например период у stats и ratings/search, sessionId у sessions/stats и sessions/transfers
HTTP400 КодINVALID_PARAMS КогдаТело запроса не объект, либо некорректное значение там, где ожидается число или значение из списка
HTTP400 КодBATCH_LIMIT_EXCEEDED КогдаМассив sessionId превышает лимит метода: 100 для sessions/stats, 50 для sessions/transfers
HTTP403 КодB24_TARIFF_RESTRICTION КогдаТариф портала не включает статистику Открытых линий — право report_open_lines
HTTP403 КодOPENLINES_HISTORY_DISABLED КогдаИстория сессии ещё не включена на платформе Вайбкод
HTTP422 КодMETHOD_NOT_YET_AVAILABLE КогдаОбновление imopenlines 26.700.0 ещё не пришло на портал. Ответ содержит поле error.release со значением imopenlines 26.700.0 — разбор кода. Если тариф не включает статистику, после выхода обновления код сменится на 403 B24_TARIFF_RESTRICTION
HTTP502 КодOPENLINE_OPERATOR_FAILED КогдаБитрикс24 не подтвердил действие или вернул ответ неожиданной формы. Так отвечают приём и завершение диалога оператором, действия оператора и его пауза, открытие и начало сессии, действия CRM-чата и быстрые ответы. Условие для конкретного метода — в таблице ## Ошибки на его странице

При отказе Битрикс24 ответ приходит как 422 BITRIX_ERROR, а код Битрикс24 дублируется в поле error.b24Code:

error.b24Code Когда
error.b24CodePERIOD_TOO_LARGE КогдаПериод превышает 1 год
error.b24CodeINVALID_FILTER КогдаНедопустимое значение фильтра или формат даты
error.b24CodeOFFSET_TOO_LARGE Когдаoffset превышает максимум — сузьте период или фильтры

Коды конкретного метода — в таблице ## Ошибки на его странице.

Системные ошибки

Общие коды (SCOPE_DENIED, TOKEN_MISSING, WRITE_BLOCKED_READONLY_KEY, RATE_LIMITED и другие) — на странице Ошибки API.

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