Для AI-агентов: markdown этой страницы — /docs-content/note/collections/list.md индекс документации — /llms.txt

Список баз знаний

GET /v1/note/collections

Возвращает базы знаний, доступные текущему API-ключу на портале. Поддерживает курсорную пагинацию для обхода больших списков.

Общий параметр filter этим эндпоинтом не применяется. По умолчанию API сохраняет прежний ответ HTTP 200 и прежние данные, добавляет заголовок Warning: 299 - "filter is not supported on this endpoint and was ignored", а сервер фиксирует использование неподдерживаемого фильтра в журнале.

Параметры

Параметр Тип Обяз. Описание
Параметрlimit (query) Типinteger Обяз.нет ОписаниеРазмер страницы. По умолчанию 50, от 1 до 200
ПараметрafterPosition (query) Типinteger Обяз.нет ОписаниеЗначение position из meta.nextCursor предыдущего ответа. Передаётся вместе с afterId
ПараметрafterId (query) Типinteger Обяз.нет ОписаниеЗначение id из meta.nextCursor предыдущего ответа. Передаётся вместе с afterPosition

Пагинация. Курсорная. limit задаёт размер страницы. Для следующей страницы передайте afterPosition и afterId из meta.nextCursor предыдущего ответа. Когда meta.nextCursor равен null, страниц больше нет.

Примеры

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

Terminal
curl https://vibecode.bitrix24.tech/v1/note/collections \
  -H "X-Api-Key: YOUR_API_KEY"

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

Terminal
curl https://vibecode.bitrix24.tech/v1/note/collections \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/note/collections', {
  headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { data } = await res.json()
console.log('Базы знаний:', data)

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/note/collections', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})
const { data } = await res.json()

Поля ответа

Поле Тип Описание
Полеsuccess Типboolean ОписаниеВсегда true при успехе
Полеdata Типarray ОписаниеМассив баз знаний
Полеdata[].id Типnumber ОписаниеИдентификатор базы знаний
Полеdata[].name Типstring ОписаниеНазвание базы знаний
Полеdata[].position Типnumber ОписаниеЧисловая позиция базы знаний
Полеdata[].policyLevel Типstring ОписаниеПолитика доступа базы знаний. На проверенном портале — portal у общей базы компании и private у остальных
Полеdata[].accessLevel Типstring ОписаниеУровень доступа к базе знаний. На проверенных базах — full
Полеdata[].isArchived Типboolean Описаниеtrue у архивированной базы знаний
Полеdata[].createdBy Типnumber ОписаниеИдентификатор сотрудника, создавшего базу знаний. Список: GET /v1/users
Полеdata[].createdAt Типstring ОписаниеДата создания в формате ISO 8601
Полеdata[].updatedBy Типnumber ОписаниеИдентификатор сотрудника, изменившего базу знаний последним. Список: GET /v1/users
Полеdata[].updatedAt Типstring ОписаниеДата последнего изменения в формате ISO 8601
Полеdata[].markdownDescription Типstring или null ОписаниеОписание базы знаний в Markdown. На проверенных базах — null
Полеmeta.nextCursor Типobject или null ОписаниеКурсор следующей страницы — объект с полями position и id. null, когда страниц больше нет

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

JSON
{
  "success": true,
  "data": [
    {
      "id": 1,
      "name": "Моя компания",
      "position": 1000,
      "policyLevel": "portal",
      "accessLevel": "full",
      "isArchived": false,
      "createdBy": 0,
      "createdAt": "2026-05-21T17:36:10Z",
      "updatedBy": 0,
      "updatedAt": "2026-05-21T17:36:10Z",
      "markdownDescription": null
    },
    {
      "id": 9,
      "name": "Документация продукта",
      "position": 100,
      "policyLevel": "private",
      "accessLevel": "full",
      "isArchived": false,
      "createdBy": 1269,
      "createdAt": "2026-06-23T19:01:03Z",
      "updatedBy": 1269,
      "updatedAt": "2026-06-23T19:05:39Z",
      "markdownDescription": null
    },
    {
      "id": 7,
      "name": "Тест БЗ",
      "position": 100,
      "policyLevel": "private",
      "accessLevel": "full",
      "isArchived": false,
      "createdBy": 1269,
      "createdAt": "2026-06-22T09:16:33Z",
      "updatedBy": 1269,
      "updatedAt": "2026-06-22T09:16:33Z",
      "markdownDescription": null
    }
  ],
  "meta": { "nextCursor": null }
}

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

400 — некорректный limit:

JSON
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "`limit` must be an integer between 1 and 200"
  }
}

Ошибки

HTTP Код Описание
HTTP200 КодWarning: 299 ОписаниеФильтр игнорируется по умолчанию; прежние данные сохраняются, предупреждение передаётся заголовком Warning.
HTTP400 только при включённом строгом режиме КодUNSUPPORTED_FILTER ОписаниеСерверный режим выключен по умолчанию; до его включения эндпоинт сохраняет HTTP 200 и прежние данные.
HTTP400 КодINVALID_PARAMS Описаниеlimit вне диапазона от 1 до 200, либо передан только один из afterPosition / afterId
HTTP403 КодSCOPE_DENIED ОписаниеКлючу не хватает скоупа note
HTTP401 КодTOKEN_MISSING ОписаниеУ ключа нет настроенных токенов

Полный список общих ошибок API — Ошибки.

Известные особенности

Архивированные базы знаний в список не попадают. После архивации база знаний исчезает из выдачи, но остаётся доступной по идентификатору через GET /v1/note/collections/:id — в ответе у неё isArchived: true.

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