Для AI-агентов: markdown этой страницы — /docs-content/openlines/operators.md индекс документации — /llms.txt
Операторы (real-time)
⚠️ Метод выходит в обновлении
imopenlines 26.700.0и доступен пока не на всех порталах Битрикс24. Если обновление на ваш портал ещё не пришло, API вернёт422 METHOD_NOT_YET_AVAILABLE— это признак того, что метод на портале ещё не выпущен, а не ошибка интеграции.
GET /v1/openlines/operators
Список операторов линии с текущим статусом и нагрузкой — для real-time виджетов мониторинга контакт-центра.
Данные почти real-time: статус и счётчик активных сессий читаются раздельно, без единой транзакции. Для виджета опрашивайте метод не чаще одного раза в 30 секунд.
Поля запроса (query)
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
configId |
number | нет | Идентификатор линии. Источник: GET /v1/openline-configs |
configIdList |
number[] | нет | Список линий. Форма — configIdList=3,5 или configIdList[]=3&configIdList[]=5 |
userId |
number | нет | Идентификатор оператора. Источник: GET /v1/users |
userIdList |
number[] | нет | Список операторов, те же две формы |
status |
string | нет | Статус: online, offline или pause |
hasFreeSlots |
boolean | нет | Только операторы со свободными слотами. Принимает true/false и Y/N |
limit |
number | нет | Размер страницы, 1..200 (по умолчанию 50) |
offset |
number | нет | Смещение для пагинации (по умолчанию 0) |
Списочные параметры принимают либо строку через запятую (configIdList=3,5), либо повторяющуюся скобочную форму (configIdList[]=3&configIdList[]=5). Голое повторение параметра без скобок (configIdList=3&configIdList=5) не поддерживается.
Примеры
curl — личный ключ
curl "https://vibecode.bitrix24.tech/v1/openlines/operators?configId=3&status=online" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth-приложение
curl "https://vibecode.bitrix24.tech/v1/openlines/operators?configId=3&status=online" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/openlines/operators?configId=3&status=online', {
headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { data } = await res.json()
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/openlines/operators?configId=3&status=online', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { data } = await res.json()
Поля ответа
Ответ — { "success": true, "data": { "operators": [...], "hasNextPage": bool } }.
| Ключ | Описание |
|---|---|
operators |
Массив операторов |
operators[].userId |
Идентификатор пользователя-оператора |
operators[].configId |
Идентификатор линии |
operators[].status |
Статус: online / offline / pause |
operators[].activeSessions |
Количество активных (незакрытых) сессий прямо сейчас |
operators[].maxChat |
Лимит чатов оператора (из настроек линии) |
operators[].freeSlots |
Свободные слоты (maxChat − activeSessions) |
operators[].lastActivityDate |
Дата последней активности оператора в линии |
hasNextPage |
Есть ли следующая страница |
Пример ответа
{
"success": true,
"data": {
"operators": [
{ "userId": 42, "configId": 3, "status": "online", "activeSessions": 2, "maxChat": 5, "freeSlots": 3, "lastActivityDate": "2026-06-15T15:01:00+03:00" },
{ "userId": 51, "configId": 3, "status": "pause", "activeSessions": 0, "maxChat": 5, "freeSlots": 5, "lastActivityDate": "2026-06-15T14:20:00+03:00" }
],
"hasNextPage": false
}
}
Пример ответа при ошибке
422 — недопустимое значение status (значение уходит в Битрикс24, тот отклоняет фильтр):
{
"success": false,
"error": { "code": "BITRIX_ERROR", "message": "Недопустимое значение фильтра", "b24Code": "INVALID_FILTER" }
}
Ошибки
| HTTP | Код | Когда |
|---|---|---|
| 403 | B24_TARIFF_RESTRICTION |
Тариф не включает статистику Открытых линий (report_open_lines) |
| 400 | INVALID_PARAMS |
Нечисловое значение в limit/offset или элементе списка |
| 422 | BITRIX_ERROR (error.b24Code: INVALID_FILTER) |
Недопустимое значение status |
| 422 | BITRIX_ERROR (error.b24Code: OFFSET_TOO_LARGE) |
offset превышает максимум при фильтре status/hasFreeSlots — сузьте фильтры |
| 422 | METHOD_NOT_YET_AVAILABLE |
Обновление imopenlines 26.700.0 ещё не приехало на портал |
Полный список системных кодов — Ошибки API.