Конфигурации открытых линий

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

Битрикс24 API: imopenlines.config.* Скоуп: imopenlines

Создать конфигурацию открытой линии

POST /v1/openline-configs

Создаёт новую конфигурацию открытой линии. Для создания достаточно передать одно поле — остальные параметры устанавливаются по умолчанию. Полная запись с идентификаторами и всеми полями доступна через GET /v1/openline-configs/:id.

Поля запроса (body)

Минимум для создания: хотя бы одно поле.

Имена полей. Все поля передавайте в camelCase (name, active, queueType, crmCreate, workTimeFrom и т. д. — см. Поля конфигурации) — это канонический регистр, как они приходят в ответе и в GET /v1/openline-configs/fields. B24-native UPPER_SNAKE_CASE-имена также принимаются для обратной совместимости и приводятся к нужному имени Битрикс24 автоматически. Пример ниже использует camelCase.

Булевы поля (active, crm, workTimeEnable, welcomeMessage, …) принимают true / false — значение приводится к ожидаемому Битрикс24 "Y"/"N" автоматически.

Поле Тип Обяз. Описание
name string нет Название открытой линии
active boolean нет Активна ли линия (true / false)
queueType string нет Распределение очереди: all — всем одновременно, evenly — равномерно, strictly — строго по порядку
queueTime number нет Время ожидания в очереди (секунды) до перевода
noAnswerTime number нет Время без ответа (секунды), после которого срабатывает правило noAnswerRule
crm boolean нет Включить интеграцию с CRM
crmCreate string нет Режим создания CRM-сущностей при новом обращении
workTimeEnable boolean нет Включить расписание рабочего времени
workTimeFrom string нет Начало рабочего дня (например "9" или "9.30")
workTimeTo string нет Конец рабочего дня (например "18" или "18.30")
workTimeTimezone string нет Часовой пояс расписания (например "Europe/Moscow")
welcomeMessage boolean нет Включить приветственное сообщение
welcomeMessageText string нет Текст приветственного сообщения
languageId string нет Язык линии (например "ru", "en")

Полный список полей — `GET /v1/openline-configs/fields`.

Примеры

curl — личный ключ

Terminal
curl -X POST https://vibecode.bitrix24.tech/v1/openline-configs \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Поддержка клиентов",
    "active": true,
    "queueType": "evenly",
    "workTimeEnable": true,
    "workTimeFrom": "9",
    "workTimeTo": "18"
  }'

curl — OAuth-приложение

Terminal
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 '{
    "name": "Поддержка клиентов",
    "active": true,
    "queueType": "evenly",
    "workTimeEnable": true,
    "workTimeFrom": "9",
    "workTimeTo": "18"
  }'

JavaScript — личный ключ

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({
    name: 'Поддержка клиентов',
    active: true,
    queueType: 'evenly',
    workTimeEnable: true,
    workTimeFrom: '9',
    workTimeTo: '18',
  }),
})

const { success, data } = await res.json()
console.log('Новая конфигурация ID:', data)

JavaScript — OAuth-приложение

javascript
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({
    name: 'Поддержка клиентов',
    active: true,
    queueType: 'evenly',
    workTimeEnable: true,
    workTimeFrom: '9',
    workTimeTo: '18',
  }),
})

const { success, data } = await res.json()
console.log('Новая конфигурация ID:', data)

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data number Идентификатор созданной конфигурации

Пример ответа

JSON
{
  "success": true,
  "data": 29
}

Пример ответа при ошибке

400 — тело запроса не содержит ни одного поля:

JSON
{
  "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.

Неизвестное имя поля не отклоняется. У метода imopenlines.config.add нет схемы полей, и Битрикс24 молча игнорирует незнакомые ключи. Поэтому тело только из несуществующего поля (например { "bogusField": "x" }) пройдёт валидацию «непустого тела» и создаст конфигурацию со значениями по умолчанию. Проверяйте имена полей по Поля конфигурации.

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