Для AI-агентов: markdown этой страницы — /docs-content/lists/elements/list.md индекс документации — /llms.txt
Элементы списка
GET /v1/lists/:iblockId/elements
Возвращает элементы списка с фильтрацией и постраничным обходом.
Параметры
| Параметр | Тип | Обяз. | По умолч. | Описание |
|---|---|---|---|---|
iblockId (path) |
string | да | — | Числовой идентификатор списка IBLOCK_ID или символьный код IBLOCK_CODE |
iblockTypeId (query) |
string | нет | lists |
Тип инфоблока. Значения:lists — обычные списки, по умолчаниюlists_socnet — списки рабочих группbitrix_processes — служебные бизнес-процессыstructure — тип структуры компании (здесь лежит штатный инфоблок графика отсутствий absence) |
filter (query) |
string | нет | — | JSON-объект фильтра по полям элемента. Ключ — имя поля, значение — условие. Пример: ?filter={"NAME":"%отчёт%"}. Важно: фильтр передаётся ЦЕЛИКОМ в одной форме — либо скобочной, либо одним объектом JSON. Смешанный конверт (?filter[NAME]=x&filter=) и скобочное условие глубже двух уровней отклоняются с 400 INVALID_FILTER: при разборе строки запроса половина условий теряется безвозвратно. Пустое значение ?filter= означает «без фильтра». Поле, по которому фильтровать нельзя, отклоняется с 422 BITRIX_ERROR. Фильтр по ACTIVE принимается и применяется: значение вне Y и N возвращает пустой массив. |
select (query) |
string | нет | — | Список возвращаемых полей через запятую. Пользовательское свойство запрашивается как PROPERTY_<id>. Пример: ?select=ID,NAME,PROPERTY_1149. Имя, которое список не отдаёт, не вызывает ошибку: такого поля просто нет в ответе. ID приходит всегда, даже если его нет в select |
start (query) |
number | нет | 0 | Смещение от начала выборки для постраничного обхода |
offset (query) |
number | нет | 0 | Синоним start. Применяется, когда start не передан И значение больше нуля — ноль адресует ту же первую страницу, что и отсутствие смещения |
Префикс операции ставится перед именем поля: без префикса — сравнение без явной операции, = — точное равенство, ! — неравенство, % — содержит подстроку, !% — не содержит подстроку, >, >=, <, <= — сравнение, >< — входит в диапазон, !>< — вне диапазона, * — частичный полнотекстовый поиск. Для диапазона передайте массив из двух значений. Например: filter={"=NAME":"Отчёт"}, filter={"%NAME":"отчёт"}, filter={">=ID":500}, filter={"><ID":[500,1000]}. JSON и специальные символы в URL кодируйте через URLSearchParams или curl --get --data-urlencode.
Примеры
curl — личный ключ
curl https://vibecode.bitrix24.tech/v1/lists/121/elements \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth-приложение
curl https://vibecode.bitrix24.tech/v1/lists/121/elements \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/lists/121/elements', {
headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { data, meta } = await res.json()
console.log(`Элементов: ${meta.total}`, data)
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/lists/121/elements', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { data, meta } = await res.json()
Поля ответа
Набор полей в ответе не фиксирован: часть полей, указанных в select, может не прийти, а у разных элементов одного списка набор ключей различается. Отсутствие поля не означает ни пустого значения, ни N. Признак активности ACTIVE в ответе не возвращается ни с select, ни без него. Отобрать активные элементы можно фильтром ?filter={"ACTIVE":"Y"}.
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
array | Массив элементов списка |
data[].ID |
string | Идентификатор элемента |
data[].NAME |
string | Название элемента |
data[].IBLOCK_SECTION_ID |
string или null | Идентификатор раздела, null для элемента вне разделов |
data[].PROPERTY_<id> |
object | Значения пользовательского свойства. Ключ — идентификатор свойства из Поля списка. Форма значения — в разделе «Известные особенности» |
meta.total |
number | Общее количество элементов, соответствующих фильтру |
Пример ответа
Показаны системные поля. Пользовательские свойства возвращаются под ключами PROPERTY_<id> — их форма показана в Получить элемент.
{
"success": true,
"data": [
{ "ID": "501", "NAME": "Пример элемента", "IBLOCK_SECTION_ID": null },
{ "ID": "502", "NAME": "Черновик", "IBLOCK_SECTION_ID": "12" }
],
"meta": { "total": 2 }
}
Пример ответа при ошибке
403 — нет доступа к списку:
{
"success": false,
"error": {
"code": "BITRIX_ACCESS_DENIED",
"message": "Нет прав для просмотра и редактирования списка."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | INVALID_IBLOCK_TYPE |
iblockTypeId не входит в набор lists, bitrix_processes, lists_socnet, structure |
| 400 | INVALID_FILTER |
Параметр filter не является корректным JSON. Также отклоняется неоднозначный конверт: скобочная форма и JSON в одном запросе (в любом порядке), два написания одного условия либо скобочное условие глубже двух уровней — половина условий при разборе теряется безвозвратно, поэтому запрос отклоняется, а не выполняется частично. |
| 400 | INVALID_PARAMS |
start или offset — не неотрицательное целое. Прежде такое значение молча не применялось, и страница приходила не та, что ожидалась |
| 422 | BITRIX_ERROR |
В filter передано поле, по которому фильтровать нельзя. Текст ошибки называет поле: Filter field not allowed: <поле> |
| 422 | BITRIX_ERROR |
Недопустимый префикс операции фильтра. error.b24Code равен ERROR_ARGUMENT, сообщение называет операцию: Filter operation not allowed: <операция> |
| 403 | BITRIX_ACCESS_DENIED |
Нет доступа к списку. Отсутствие самого списка на этом адресе, по замеру от 2026-09-02, приходит в 404 — но Битрикс24 отвечает здесь и когда прав действительно нет |
| 404 | LIST_NOT_FOUND |
Списка с указанным iblockId не существует. Битрикс24 сообщает об этом машинным кодом, поэтому отсутствие списка отличимо от нехватки прав |
| 409 | LISTS_MODULE_NOT_ENABLED |
На портале не подключён модуль «Списки» |
| 403 | SCOPE_DENIED |
Ключу не хватает скоупа lists |
| 401 | TOKEN_MISSING |
У ключа не настроены токены доступа |
Полный список общих ошибок API — Ошибки.
Известные особенности
Значения пользовательских свойств приходят под ключами PROPERTY_<id> в виде отображения «идентификатор значения — значение». Ту же форму подробно показывает Получить элемент.