# Поля конфигурации открытой линииGET /v1/openline-configs/fields
Возвращает схему полей, доступных для фильтрации и сортировки, а также полный реестр полей в ответах list, get и search.
# Примеры# curl — личный ключ
Terminal
Скопировать
curl "https://vibecode.bitrix24.tech/v1/openline-configs/fields" \
-H "X-Api-Key: YOUR_API_KEY"
# curl — OAuth-приложение
Terminal
Скопировать
curl "https://vibecode.bitrix24.tech/v1/openline-configs/fields" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
# JavaScript — личный ключ
javascript
Скопировать
const res = await fetch('https://vibecode.bitrix24.tech/v1/openline-configs/fields', {
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const { success, data } = await res.json()
console.log('Поля схемы:', Object.keys(data.fields))
# JavaScript — OAuth-приложение
javascript
Скопировать
const res = await fetch('https://vibecode.bitrix24.tech/v1/openline-configs/fields', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { success, data } = await res.json()
# Поля ответаЭндпоинт /fields возвращает data.fields — описание всех полей ответов list, get и search: каждое поле снабжено type, readonly, названием label и описанием description. Имена полей — в camelCase . Полный набор в get — 95 полей, в list/search — 91 (без 4 полей очереди операторов). Дополнительно data содержит aggregatable и batch.
# Схема полей (data.fields)/fields возвращает полный набор полей — каждое с type, readonly, label и description. Фильтрация (filter), сортировка (sort) и группировка (groupBy) работают по этим camelCase-именам. Ниже — основные поля, чаще всего используемые в sort и filter:
Поле
Тип
RO
Описание
id
number
да
Идентификатор конфигурации
name
string
Название открытой линии
active
boolean
Активна ли линия
queueType
string
Алгоритм распределения: all — всем операторам одновременно, evenly — равномерно, strictly — строго по очереди
workTimeFrom
string
Начало рабочего времени (например "8" или "9.30")
workTimeTo
string
Конец рабочего времени
Дополнительно в data указаны:
aggregatable — поля, доступные для groupBy: ["active", "queueType"]
batch — перечень пакетных операций, объявленных для этой сущности в ответе /fields: пустой массив []
# Полный реестр полей ответа (list / get / search)В get объект data содержит 95 полей (все в camelCase), в list/search — 91 (без 4 полей с отметкой «только get»: queue, queueFull, queueUsersFields, queueOnline).
# Основные
Поле
Тип
RO
Источник
Описание
id
number
да
везде
Идентификатор конфигурации
name
string
везде
Название открытой линии
active
boolean
везде
Линия активна (true/false)
temporary
string
везде
Временная линия: "Y" / "N"
xmlId
string|null
везде
Внешний идентификатор
languageId
string|null
везде
Язык линии (например "ru"). null, если язык не задан
# Очередь и операторы
Поле
Тип
RO
Источник
Описание
queueType
string
везде
Алгоритм распределения: all — всем операторам одновременно, evenly — равномерно, strictly — строго по очереди
queueTime
string
везде
Время ожидания в очереди (секунды)
noAnswerTime
string
везде
Время без ответа оператора до переключения (секунды)
checkAvailable
string
везде
Проверять доступность оператора: "Y" / "N"
maxChat
string|null
везде
Максимальное число одновременных чатов на оператора ("0" — без ограничения). null, если не задан
typeMaxChat
string|null
везде
Тип подсчёта лимита чатов: answered — только принятые, total — все. null, если не задан
queue
string[]
да
только get
Массив ID операторов в очереди (строки)
queueFull
object
да
только get
Объекты операторов с полями ID, SORT, USER_ID, DEPARTMENT_ID, USER_NAME, USER_WORK_POSITION, USER_AVATAR, USER_AVATAR_ID
queueUsersFields
object
да
только get
Данные профилей операторов: USER_NAME, USER_WORK_POSITION, USER_AVATAR, USER_AVATAR_ID
queueOnline
string
да
только get
Есть ли операторы онлайн в данный момент: "Y" / "N"
# Интеграция с CRM
Поле
Тип
RO
Источник
Описание
crm
string
везде
Включить интеграцию с CRM: "Y" / "N"
crmCreate
string
везде
Тип создаваемой CRM-записи при первом обращении: deal, lead, contact, company
crmCreateSecond
string
везде
Тип записи при повторных обращениях (числовой идентификатор типа)
crmCreateThird
string
везде
Тип записи при третьем и последующих обращениях: "Y" / "N"
crmForward
string
везде
Переадресовывать обращение ответственному из CRM: "Y" / "N"
crmChatTracker
string
везде
Включить трекер чата в CRM: "Y" / "N"
crmTransferChange
string
везде
Менять ответственного при переводе чата: "Y" / "N"
crmSource
string
везде
Источник CRM-записи: create — создавать, другое значение — брать из истории
# Приветственное сообщение
Поле
Тип
RO
Источник
Описание
welcomeMessage
string
везде
Показывать приветствие: "Y" / "N"
welcomeMessageText
string
везде
Текст приветствия (поддерживает BB-код)
watchTyping
string
везде
Показывать индикатор набора текста: "Y" / "N"
sendWelcomeEachSession
string
везде
Отправлять приветствие при каждой новой сессии: "Y" / "N"
# Приветственный бот
Поле
Тип
RO
Источник
Описание
welcomeBotEnable
string
везде
Включить приветственного бота: "Y" / "N"
welcomeBotId
string
везде
ID бота. Список: GET /v1/bots
welcomeBotTime
string
везде
Время ожидания ответа бота (секунды)
welcomeBotJoin
string
везде
Когда бот присоединяется: always — всегда, другие значения по настройке
welcomeBotLeft
string
везде
Когда бот покидает чат: queue — после постановки в очередь, другие значения по настройке
# Рабочее время
Поле
Тип
RO
Источник
Описание
workTimeEnable
string
везде
Включить расписание рабочего времени: "Y" / "N"
workTimeFrom
string
везде
Начало рабочего дня (например "8", "9.30")
workTimeTo
string
везде
Конец рабочего дня
workTimeTimezone
string
везде
Часовой пояс (например "Europe/Kaliningrad")
workTimeHolidays
string[]
везде
Праздничные нерабочие дни в формате "ДД.ММ" (например ["1.01","7.01"])
workTimeDayoff
string[]
везде
Выходные дни недели: "MO", "TU", "WE", "TH", "FR", "SA", "SU"
# Сценарии нерабочего времени, нет ответа, закрытиеТри группы по четыре поля — сценарий, форма, бот, текст:
Поле
Тип
RO
Источник
Описание
workTimeDayoffRule
string
везде
Действие в выходной день: text — сообщение, form — форма, bot — бот, none — ничего
workTimeDayoffFormId
string
везде
ID формы для нерабочего времени
workTimeDayoffBotId
string
везде
ID бота для нерабочего времени. Список: GET /v1/bots
workTimeDayoffText
string
везде
Текст сообщения в нерабочее время (поддерживает BB-код)
noAnswerRule
string
везде
Действие при нет ответа: text, form, bot, none
noAnswerFormId
string
везде
ID формы при нет ответа
noAnswerBotId
string
везде
ID бота при нет ответа. Список: GET /v1/bots
noAnswerText
string
везде
Текст сообщения при нет ответа
closeRule
string
везде
Действие при закрытии чата: text, form, bot, none
closeFormId
string
везде
ID формы при закрытии
closeBotId
string
везде
ID бота при закрытии. Список: GET /v1/bots
closeText
string
везде
Текст сообщения при закрытии
fullCloseTime
string
везде
Время до полного закрытия чата (секунды)
confirmClose
string
везде
Запрашивать подтверждение при закрытии чата: "Y" / "N"
showNotificationRedirect
string|null
везде
Показывать уведомление при перенаправлении: "Y" / "N" / null
# Автозакрытие по неактивности
Поле
Тип
RO
Источник
Описание
autoCloseRule
string
везде
Действие при истечении времени неактивности: text, form, bot, none
autoCloseFormId
string
везде
ID формы при автозакрытии
autoCloseBotId
string
везде
ID бота при автозакрытии. Список: GET /v1/bots
autoCloseTime
string
везде
Время до автозакрытия чата (секунды)
autoCloseText
string|null
везде
Текст при автозакрытии. Незаданное значение приходит как null
autoExpireTime
string
везде
Время истечения сессии по неактивности (секунды)
# Оценка качества
Поле
Тип
RO
Источник
Описание
voteMessage
string
везде
Включить запрос оценки: "Y" / "N"
voteTimeLimit
string
везде
Ограничение времени на оценку (секунды, "0" — без ограничения)
voteBeforeFinish
string
везде
Запрашивать оценку до завершения чата: "Y" / "N"
voteClosingDelay
string
везде
Задержка закрытия после оценки: "Y" / "N"
voteMessage1Text
string
везде
Текст запроса оценки (простые сообщения с кнопками)
voteMessage1Like
string
везде
Ответ при положительной оценке
voteMessage1Dislike
string
везде
Ответ при отрицательной оценке
voteMessage2Text
string
везде
Текст запроса оценки (текстовый режим, 1/0)
voteMessage2Like
string
везде
Ответ при 1 (положительная)
voteMessage2Dislike
string
везде
Ответ при 0 (отрицательная)
# Соглашения и категории
Поле
Тип
RO
Источник
Описание
agreementMessage
string
везде
Запрашивать согласие с условиями: "Y" / "N"
agreementId
string
везде
ID документа с условиями
categoryEnable
string
везде
Включить категоризацию обращений: "Y" / "N"
categoryId
string
везде
ID категории по умолчанию
# Форма ожидания
Поле
Тип
RO
Источник
Описание
useWelcomeForm
string
везде
Показывать форму перед постановкой в очередь: "Y" / "N"
welcomeFormId
string
везде
ID формы ожидания
welcomeFormDelay
string
везде
Задержка показа формы: "Y" / "N"
ignoreWelcomeFormResponsible
string
везде
Пропускать форму для ответственного из CRM: "Y" / "N"
# Оператор и сессия
Поле
Тип
RO
Источник
Описание
operatorData
string
везде
Данные оператора в чате: profile — полный профиль
defaultOperatorData
array
везде
Данные по умолчанию при отсутствии операторов. Пустой набор приходит как []
sessionPriority
string
везде
Приоритет сессии ("0" — стандартный)
quickAnswersIblockId
string
везде
ID инфоблока с быстрыми ответами
# KPI
Поле
Тип
RO
Источник
Описание
kpiFirstAnswerTime
string
везде
Норматив времени первого ответа (секунды)
kpiFirstAnswerAlert
string
везде
Отправлять предупреждение при нарушении KPI первого ответа: "Y" / "N"
kpiFirstAnswerList
string[]
везде
Список ID получателей предупреждения по KPI первого ответа. Пустой набор приходит как []
kpiFirstAnswerText
string|null
везде
Шаблон текста предупреждения (поддерживает #OPERATOR#, #DIALOG#). null, если не задан
kpiFurtherAnswerTime
string
везде
Норматив времени последующих ответов (секунды)
kpiFurtherAnswerAlert
string
везде
Отправлять предупреждение при нарушении KPI последующих ответов: "Y" / "N"
kpiFurtherAnswerList
string[]
везде
Список ID получателей предупреждения. Пустой набор приходит как []
kpiFurtherAnswerText
string|null
везде
Шаблон текста предупреждения. null, если не задан
kpiCheckOperatorActivity
string
везде
Контролировать активность оператора: "Y" / "N"
sendNotificationEmptyQueue
string
везде
Уведомлять при пустой очереди: "Y" / "N"
# Служебные
Поле
Тип
RO
Источник
Описание
dateCreate
object
да
везде
Дата создания — приходит как пустой объект {}
dateModify
object
да
везде
Дата последнего изменения — приходит как пустой объект {}
modifyUserId
string
да
везде
ID пользователя, внёсшего последнее изменение. Поиск: GET /v1/users
# Пример ответаПоказаны несколько представительных полей. Полный набор больше — 95 полей в get, 91 в list/search.
JSON
Скопировать
{
"success": true,
"data": {
"fields": {
"id": { "type": "number", "readonly": true, "label": "Идентификатор", "description": "Идентификатор конфигурации." },
"name": { "type": "string", "readonly": false, "label": "Название линии", "description": "Название открытой линии." },
"active": { "type": "boolean", "readonly": false, "label": "Линия активна", "description": "Линия активна (true/false)." },
"queueType": { "type": "string", "readonly": false, "label": "Алгоритм распределения", "description": "Алгоритм распределения: all — всем одновременно, evenly — равномерно, strictly — строго по очереди." },
"crmCreate": { "type": "string", "readonly": false, "label": "Создаваемая CRM-запись", "description": "Тип создаваемой CRM-записи при первом обращении: deal, lead, contact, company." },
"welcomeMessage": { "type": "string", "readonly": false, "label": "Показывать приветствие", "description": "Показывать приветствие: Y/N." },
"workTimeFrom": { "type": "string", "readonly": false, "label": "Начало рабочего дня", "description": "Начало рабочего дня (например 8, 9.30)." }
},
"aggregatable": ["active", "queueType"],
"batch": []
}
}
# Пример ответа при ошибке403 — нет скоупа:
JSON
Скопировать
{
"success": false,
"error": {
"code": "SCOPE_DENIED",
"message": "Access denied. Required scope: imopenlines"
}
}
# Ошибки
HTTP
Код
Описание
401
TOKEN_MISSING
API-ключ не передан
403
SCOPE_DENIED
API-ключ не имеет скоупа imopenlines
Полный список общих ошибок API — Ошибки .
# Известные особенностиЕдиный набор имён — camelCase. Все поля ответов list/get/search приходят в camelCase. Эндпоинт /fields (data.fields) описывает каждое поле с type, readonly, label и description. По этим именам работают filter, sort, groupBy. Всего 91 поле в list/search, 95 в get (добавляются 4 поля очереди операторов). При записи (create/update) camelCase — канонический регистр. Имена в UPPER_SNAKE_CASE также принимаются для обратной совместимости. Булевы поля при записи принимают true/false (приводятся к "Y"/"N").
Числовые поля приходят строками. queueTime, noAnswerTime, autoCloseTime, maxChat, kpiFirstAnswerTime и другие — строки ("60", "180"). Исключение — id (number) и active (boolean): эти два поля трансформирует схема API Вайбкод.
dateCreate и dateModify всегда пустые объекты {}. Битрикс24 не передаёт значения дат через эти поля.
# Смотрите также