knowledgebase.section.list
Scope:
knowledgebaseКто может вызывать: авторизованный пользователь; дерево разделов из
Post::getSectionsInfo()с in-memory фильтрацией. Подробнее: Права доступа
Список разделов базы знаний с Mongo-фильтром (фильтрация в памяти)
HTTP: GET
Побочные эффекты: none
Параметры метода
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
limit |
int |
нет | Размер страницы, по умолчанию 50, максимум 500 |
offset |
int |
нет | Смещение, по умолчанию 0 |
fetchAll |
bool |
нет | Вернуть все записи одним ответом |
filter |
object |
нет | Mongo-фильтр по полям раздела (см. ниже) |
Поля filter (Mongo, in-memory)
Поддерживаемые поля: id, name, depth, parentId, left, right, count.
Операторы: $eq, $ne, $gt, $gte, $lt, $lte, $in, $nin.
Фильтрация выполняется в памяти после загрузки полного дерева разделов.
Пагинация
limit (default 50, max 500), offset, fetchAll (защитный лимит 5000, иначе FETCH_ALL_LIMIT_EXCEEDED).
Возвращаемые данные
Ответ в конверте модуля: result.result — массив разделов; result.next; result.error; верхнеуровневый Bitrix total.
Поля раздела: id, name, parentId, left, right, depth, count.
Обработка ошибок
Справочник кодов: error-codes.md.
| Код | Описание |
|---|---|
UNAUTHORIZED |
Пользователь не авторизован |
INVALID_LIMIT |
limit вне диапазона 1..500 |
INVALID_OFFSET |
offset < 0 |
INVALID_FILTER |
Некорректный filter или неизвестное поле |
INVALID_FILTER_OPERATOR |
Неизвестный оператор фильтра |
FETCH_ALL_LIMIT_EXCEEDED |
При fetchAll=true записей больше защитного лимита (5000) |
INTERNAL_ERROR |
Внутренняя ошибка сервера |
Пример запроса (GET)
curl -G "https://{портал}/rest/{user_id}/{webhook_code}/knowledgebase.section.list.json" \
-H "Accept: application/json" \
--data-urlencode "limit=50" \
--data-urlencode "offset=0" \
--data-urlencode "filter[depth][$eq]=1"
Пример ответа
{
"result": {
"result": [
{
"id": 96,
"name": "Регламенты и инструкции",
"parentId": 0,
"left": 1,
"right": 12,
"depth": 1,
"count": 5
},
{
"id": 101,
"name": "Инструкции",
"parentId": 96,
"left": 2,
"right": 3,
"depth": 2,
"count": 0
}
],
"error": null
},
"next": 3,
"total": 7
}