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

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

Открытые линии Битрикс24 (модуль imopenlines) — входящие обращения из мессенджеров и социальных сетей, распределение по операторам, интеграция с CRM и оценка качества обслуживания. Раздел покрывает две грани модуля: управление настройками линий и статистику дашборда руководителя контакт-центра.

  • Базовый URL: https://vibecode.bitrix24.tech
  • Аутентификация: заголовок X-Api-Key (личный ключ) или X-Api-Key + Authorization: Bearer (OAuth-приложение)
  • Скоуп ключа: imopenlines

Что входит в раздел

Грань Назначение Документация
Конфигурация линий CRUD настроек линии: очередь операторов, рабочее время, интеграция с CRM, приветствие, оценка Конфигурация линий
Статистика (дашборд) Только чтение: агрегаты, сессии, операторы, CSAT, переназначения ниже в этом разделе

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

Идентификатор Что это Где взять
configId Открытая линия GET /v1/openline-configs
sessionId Сессия (диалог) Открытой линии POST /v1/openlines/sessions/search
chatId IM-чат, привязанный к сессии поле chatId в ответе sessions/search

Конфигурация линий

Управление настройками открытых линий — создание, список, получение, изменение, удаление, поиск. Общедоступно, раскатки обновления не требует. Здесь же живут два действия оператора над диалогом — принять (answer) и завершить (finish).

Полная документация: Конфигурация линий.

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

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

Список обращений с метриками, real-time нагрузка операторов, агрегаты по линии, оценки клиентов (CSAT) и история переназначений. Все методы — только чтение. Данные видны в пределах прав пользователя, от имени которого работает ключ: если у него нет доступа ни к одной линии, метод возвращает пустой результат (или нулевые агрегаты), а не ошибку. Методам нужен доступ к статистике Открытых линий (право report_open_lines); без него запрос вернёт 403 B24_TARIFF_RESTRICTION.

Эндпоинт Метод Битрикс24 Назначение
POST /v1/openlines/stats imopenlines.v2.Stat.get Агрегаты по линии за период
GET /v1/openlines/operators imopenlines.v2.Operator.list Операторы: статус и нагрузка (real-time)
POST /v1/openlines/sessions/search imopenlines.v2.Session.list Список сессий с фильтрами
POST /v1/openlines/sessions/stats imopenlines.v2.Session.Stat.get Метрики по конкретным сессиям (до 100)
POST /v1/openlines/ratings/search imopenlines.v2.Session.Rating.list Оценённые сессии (CSAT) за период
POST /v1/openlines/sessions/transfers imopenlines.v2.Session.Transfer.list История переназначений (до 50 сессий)

Все шесть методов выходят в обновлении imopenlines 26.700.0. Имена методов Битрикс24 здесь приведены для сверки с документацией Битрикс24 — обращаться к API нужно по путям Вайбкод из левой колонки.

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

Сценарий Эндпоинты
Исторический отчёт по обращениям за период POST /v1/openlines/sessions/search
Real-time монитор очереди и нагрузки операторов GET /v1/openlines/operators
Дашборд с оценками клиентов (CSAT) POST /v1/openlines/ratings/search, POST /v1/openlines/stats
Сводный KPI по линии (по часам и каналам) POST /v1/openlines/stats
Карточка сессии для разбора жалоб POST /v1/openlines/sessions/stats
Анализ переназначений между операторами POST /v1/openlines/sessions/transfers

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

  • Для сводных показателей используйте stats — он считает агрегаты на стороне Битрикс24. Не собирайте те же цифры клиентской агрегацией через sessions/search: это упирается в лимит запросов REST Битрикс24.
  • operators отдаёт почти real-time данные (статус и счётчик активных чатов читаются раздельно). Для виджета мониторинга опрашивайте метод не чаще одного раза в 30 секунд.
  • stats — тяжёлый метод: запрашивайте его не чаще одного раза в 30–60 секунд и кэшируйте результат на своей стороне.
  • Статистика звонков живёт отдельно — GET /v1/calls/statistics; статистика Открытых линий использует POST-формы, потому что несёт богатые фильтры.

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

Агрегаты по линии за июнь:

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-06-01T00:00:00+03:00",
    "dateTo": "2026-06-30T23:59:59+03:00",
    "configId": 3
  }'
JSON
{
  "success": true,
  "data": {
    "totalSessions": 340,
    "closedSessions": 318,
    "spamSessions": 4,
    "avgWaitAnswer": 42.7,
    "avgSessionDuration": 612.3,
    "likeCount": 210,
    "dislikeCount": 15,
    "votedSessions": 225,
    "positiveRate": 0.9333,
    "kpiFirstAnswerOk": 300,
    "kpiFirstAnswerFail": 18,
    "sessionsBySource": [{ "source": "livechat", "count": 200 }, { "source": "whatsapp", "count": 140 }],
    "sessionsByHour": [0,0,0,0,0,0,2,10,25,40,38,30,28,22,20,25,30,20,15,10,8,5,3,1],
    "sessionsByOperator": [{ "operatorId": 42, "count": 120, "avgWaitAnswer": 38.1, "positiveRate": 0.95 }]
  }
}

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

Отчёт «обращения за месяц с разбором проблемных сессий»:

  1. POST /v1/openlines/stats c dateFrom/dateTo — сводные показатели по линии.
  2. POST /v1/openlines/sessions/search c тем же периодом и limit: 50 — первая страница списка сессий. Пагинация по страницам: увеличивайте offset на limit, пока data.hasNextPage равно true.
  3. POST /v1/openlines/sessions/stats c массивом sessionId (до 100) — детальные метрики выбранных сессий.

Для стабильной постраничной выгрузки фиксируйте верхнюю границу периода: возьмите dateCreateTo равным моменту старта выгрузки. Без фиксированной границы новые сессии, пришедшие во время листания, сдвигают страницы, и записи на стыках могут повториться или пропасть.

Коды ошибок

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

HTTP Код Когда
403 B24_TARIFF_RESTRICTION Тариф портала не включает статистику Открытых линий (право report_open_lines)
422 METHOD_NOT_YET_AVAILABLE Обновление imopenlines 26.700.0 ещё не приехало на портал. После доезда обновления метод начинает работать; если тариф не включает статистику, код при вызове сменится на 403 B24_TARIFF_RESTRICTION
400 MISSING_PARAMS Не переданы обязательные параметры (период у stats/ratings, sessionId у батч-методов)
400 INVALID_PARAMS Тело запроса не объект, либо нечисловые/некорректные значения там, где ожидаются числа
400 BATCH_LIMIT_EXCEEDED Массив sessionId превышает лимит метода (100 для sessions/stats, 50 для sessions/transfers)

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

error.b24Code Когда
PERIOD_REQUIRED Период не распознан Битрикс24 (например, дата в неизвестном формате)
PERIOD_TOO_LARGE Период превышает 1 год
INVALID_FILTER Недопустимое значение фильтра или формат даты
OFFSET_TOO_LARGE offset превышает максимум — сузьте период или фильтры

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

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

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