#Создать конфигурацию открытой линии
POST /v1/openline-configs
Создаёт новую конфигурацию открытой линии. Для создания достаточно передать одно поле — остальные параметры устанавливаются по умолчанию. Полная запись с идентификаторами и всеми полями доступна через GET /v1/openline-configs/:id.
#Поля запроса (body)
Поля передаются в UPPER_SNAKE_CASE — это формат данного эндпоинта. Минимум для создания: хотя бы одно поле (например LINE_NAME).
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
LINE_NAME |
string | нет | Название открытой линии |
ACTIVE |
boolean | нет | Активна ли линия (true / false) |
QUEUE_TYPE |
string | нет | Распределение очереди: all — всем одновременно, evenly — равномерно, strictly — строго по порядку |
QUEUE_TIME |
number | нет | Время ожидания в очереди (секунды) до перевода |
NO_ANSWER_TIME |
number | нет | Время без ответа (секунды), после которого срабатывает правило NO_ANSWER_RULE |
CRM |
boolean | нет | Включить интеграцию с CRM |
CRM_CREATE |
string | нет | Режим создания CRM-сущностей при новом обращении |
WORKTIME_ENABLE |
boolean | нет | Включить расписание рабочего времени |
WORKTIME_FROM |
string | нет | Начало рабочего дня (например "9" или "9.30") |
WORKTIME_TO |
string | нет | Конец рабочего дня (например "18" или "18.30") |
WORKTIME_TIMEZONE |
string | нет | Часовой пояс расписания (например "Europe/Moscow") |
WELCOME_MESSAGE |
boolean | нет | Включить приветственное сообщение |
WELCOME_MESSAGE_TEXT |
string | нет | Текст приветственного сообщения |
LANGUAGE_ID |
string | нет | Язык линии (например "ru", "en") |
Полный список полей — `GET /v1/openline-configs/fields`.
#Примеры
#curl — личный ключ
curl -X POST https://vibecode.bitrix24.tech/v1/openline-configs \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"LINE_NAME": "Поддержка клиентов",
"ACTIVE": true,
"QUEUE_TYPE": "evenly",
"WORKTIME_ENABLE": true,
"WORKTIME_FROM": "9",
"WORKTIME_TO": "18"
}'
#curl — OAuth-приложение
curl -X POST https://vibecode.bitrix24.tech/v1/openline-configs \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"LINE_NAME": "Поддержка клиентов",
"ACTIVE": true,
"QUEUE_TYPE": "evenly",
"WORKTIME_ENABLE": true,
"WORKTIME_FROM": "9",
"WORKTIME_TO": "18"
}'
#JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/openline-configs', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
LINE_NAME: 'Поддержка клиентов',
ACTIVE: true,
QUEUE_TYPE: 'evenly',
WORKTIME_ENABLE: true,
WORKTIME_FROM: '9',
WORKTIME_TO: '18',
}),
})
const { success, data } = await res.json()
console.log('Новая конфигурация ID:', data)
#JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/openline-configs', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({
LINE_NAME: 'Поддержка клиентов',
ACTIVE: true,
QUEUE_TYPE: 'evenly',
WORKTIME_ENABLE: true,
WORKTIME_FROM: '9',
WORKTIME_TO: '18',
}),
})
const { success, data } = await res.json()
console.log('Новая конфигурация ID:', data)
#Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
number | Идентификатор созданной конфигурации |
#Пример ответа
{
"success": true,
"data": 29
}
#Пример ответа при ошибке
400 — тело запроса не содержит ни одного поля:
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Request body must contain at least one field for imopenlines.config.add (e.g. lineName, queueType, agentId)."
}
}
#Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | VALIDATION_ERROR |
Тело запроса пустое — не передано ни одного поля |
| 401 | TOKEN_MISSING |
Заголовок X-Api-Key не передан |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа imopenlines |
Полный список общих ошибок API — Ошибки.
#Известные особенности
data в ответе — это число (идентификатор новой конфигурации), а не объект записи. Чтобы получить созданную конфигурацию со всеми полями, выполните отдельный запрос: GET /v1/openline-configs/:id.