#Поиск конфигураций открытых линий
POST /v1/openline-configs/search
Возвращает список конфигураций открытых линий с фильтрацией, сортировкой и пагинацией. Параметры передаются в теле запроса — удобнее для сложных условий, чем query-строка.
#Поля запроса (body)
| Параметр | Тип | По умолч. | Допустимые значения | Описание |
|---|---|---|---|---|
filter |
object | — | ключи — те же 8 полей, что и в sort; значения — по типу поля |
Фильтрация по полям схемы. Доступные поля — `GET /v1/openline-configs/fields`. Пример: {"active": false} |
limit |
number | 50 |
1–200 |
Количество записей на запрос |
offset |
number | 0 |
0 и больше |
Пропустить N записей |
sort |
string | — | id, name, active, lineId, queueType, agentId, workTimeFrom, workTimeTo |
Поле для сортировки |
order |
string | asc |
asc, desc |
Направление сортировки |
Пустое тело запроса возвращает все конфигурации — эквивалент GET /v1/openline-configs без параметров.
#Примеры
#curl — личный ключ
curl -X POST "https://vibecode.bitrix24.tech/v1/openline-configs/search" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"filter": { "active": true },
"limit": 3,
"sort": "id",
"order": "desc"
}'
#curl — OAuth-приложение
curl -X POST "https://vibecode.bitrix24.tech/v1/openline-configs/search" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"filter": { "active": true },
"limit": 3,
"sort": "id",
"order": "desc"
}'
#JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/openline-configs/search', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
filter: { active: true },
limit: 3,
sort: 'id',
order: 'desc',
}),
})
const { success, data, total } = await res.json()
console.log('Найдено:', total, 'записей, возвращено:', data.length)
#JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/openline-configs/search', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({
filter: { active: true },
limit: 3,
sort: 'id',
order: 'desc',
}),
})
const { success, data, total } = await res.json()
#Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
array | Массив конфигураций (все поля — см. Поля конфигурации) |
total |
number | Количество записей в текущей странице (не общий счётчик портала — Битрикс24 не передаёт глобальный total для этого метода) |
limit |
number | Применённое ограничение на количество записей |
offset |
number | Применённое смещение |
hasMore |
boolean | Есть ли ещё записи за пределами limit |
#Пример ответа
{
"success": true,
"data": [
{
"id": 21,
"active": true,
"name": "Открытая линия 12",
"queueType": "all",
"workTimeFrom": "9",
"workTimeTo": "18.30",
"CRM": "Y",
"CRM_CREATE": "lead",
"QUEUE_TIME": "60",
"NO_ANSWER_TIME": "60",
"WELCOME_MESSAGE": "Y",
"DATE_CREATE": {},
"DATE_MODIFY": {}
}
],
"total": 10,
"limit": 3,
"offset": 0,
"hasMore": true
}
Показаны основные поля. Каждый элемент массива содержит ~91 поле. Полный список — Поля конфигурации.
#Пример ответа при ошибке
400 — неизвестное поле сортировки:
{
"success": false,
"error": {
"code": "UNKNOWN_SORT_FIELD",
"message": "Unknown sort field: statusCode"
}
}
#Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | UNKNOWN_SORT_FIELD |
Передано поле sort, которого нет в схеме |
| 401 | TOKEN_MISSING |
Не передан X-Api-Key |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа imopenlines |
Полный список общих ошибок API — Ошибки.
#Известные особенности
Пустое тело возвращает все записи — эквивалент GET /v1/openline-configs без параметров.
Остальные особенности — те же, что и у списка (total как счётчик текущей страницы, фильтр и сортировка только по camelCase-полям схемы, отсутствие полей очереди операторов): подробности — Известные особенности списка.