[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"docs-note":3,"docs-tabs-note":6},{"content":4,"lastmod":5},"# База знаний 2.0\n\nПрограммный доступ к Базе знаний 2.0 Битрикс24: базы знаний, документы с содержимым в Markdown и вложения к ним.\n\n**Скоуп:** `note` | **Базовый URL:** `https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1` | **Авторизация:** `X-Api-Key`\n\n> **Терминология.** Сущность, которая в путях называется `collection` (`\u002Fv1\u002Fnote\u002Fcollections`), в интерфейсе Битрикс24 называется базой знаний. Идентификаторы путей остаются на `collection`.\n\n## Разделы документации\n\n- [Базы знаний](\u002Fdocs\u002Fnote\u002Fcollections) — создать, список, получить, переименовать, архивировать, удалить, дерево документов\n- [Документы](\u002Fdocs\u002Fnote\u002Fdocuments) — создать, получить, обновить, архивировать, удалить, полнотекстовый поиск\n- [Файлы](\u002Fdocs\u002Fnote\u002Ffiles) — загрузить вложение и получить готовый фрагмент для вставки в документ\n\n## Доступ\n\nТребуется скоуп `note`. Дополнительно действует контроль доступа Базы знаний: создание баз знаний доступно сотрудникам портала, изменение и удаление — пользователям с правом управления базой знаний, редактирование документа — пользователям с правом редактирования. Администратор портала имеет полный доступ. При нехватке прав API возвращает `403 BITRIX_ACCESS_DENIED`.\n\nКлюч в режиме «только чтение» получает `403 WRITE_BLOCKED_READONLY_KEY` на любом методе, изменяющем данные. Чтение — список и получение базы знаний, дерево документов, получение и поиск документов, метаданные файла — доступно любому ключу.\n\n`OAuth`-приложения добавляют заголовок `Authorization: Bearer USER_SESSION_TOKEN` вместе с `X-Api-Key` к каждому вызову.\n\n## Быстрый старт\n\nСписок доступных баз знаний:\n\n```bash\ncurl https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Fnote\u002Fcollections \\\n  -H \"X-Api-Key: YOUR_API_KEY\"\n```\n\nОтвет содержит массив баз знаний в `data` и курсор следующей страницы в `meta.nextCursor`:\n\n```json\n{\n  \"success\": true,\n  \"data\": [\n    { \"id\": 9, \"name\": \"Документация продукта\", \"position\": 100, \"policyLevel\": \"none\" }\n  ],\n  \"meta\": { \"nextCursor\": null }\n}\n```\n\n## Полный пример\n\nДокумент с картинкой. Вложение добавляется в два шага. Загрузка сохраняет файл и привязывает его к документу, но не вставляет в содержимое. Чтобы вложение стало видимым, получите готовый фрагмент `assetMarkdown` и добавьте его в Markdown документа.\n\n```bash\nBASE='https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1'\n\n# 1. Документ (пустой) → запоминаем id\nDID=$(curl -s -X POST \"$BASE\u002Fnote\u002Fdocuments\" \\\n  -H \"X-Api-Key: YOUR_API_KEY\" -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"collectionId\": 42, \"title\": \"Архитектура\"}' | jq -r '.data.id')\n\n# 2. Файл (Base64) → запоминаем fileId\nFID=$(curl -s -X POST \"$BASE\u002Fnote\u002Fdocuments\u002F$DID\u002Ffiles\" \\\n  -H \"X-Api-Key: YOUR_API_KEY\" -H \"Content-Type: application\u002Fjson\" \\\n  -d \"{\\\"fileName\\\": \\\"arch.png\\\", \\\"fileContent\\\": \\\"$(base64 -w0 arch.png)\\\"}\" | jq -r '.data.id')\n\n# 3. Готовый фрагмент вложения\nMD=$(curl -s \"$BASE\u002Fnote\u002Fdocuments\u002F$DID\u002Ffiles\u002F$FID\" \\\n  -H \"X-Api-Key: YOUR_API_KEY\" | jq -r '.data.assetMarkdown')\n\n# 4. Вставляем фрагмент в содержимое документа\ncurl -s -X PATCH \"$BASE\u002Fnote\u002Fdocuments\u002F$DID\" \\\n  -H \"X-Api-Key: YOUR_API_KEY\" -H \"Content-Type: application\u002Fjson\" \\\n  -d \"{\\\"markdown\\\": \\\"# Архитектура\\n\\n$MD\\\", \\\"overwrite\\\": true}\"\n```\n\n## Справочник эндпоинтов\n\n| Метод | Путь | Bitrix24 метод | Описание |\n|-------|------|---------------|----------|\n| POST | [`\u002Fv1\u002Fnote\u002Fcollections`](\u002Fdocs\u002Fnote\u002Fcollections\u002Fcreate) | note.collection.add | Создать базу знаний |\n| GET | [`\u002Fv1\u002Fnote\u002Fcollections`](\u002Fdocs\u002Fnote\u002Fcollections\u002Flist) | note.collection.list | Список баз знаний |\n| GET | [`\u002Fv1\u002Fnote\u002Fcollections\u002F:id`](\u002Fdocs\u002Fnote\u002Fcollections\u002Fget) | note.collection.get | Получить базу знаний |\n| PATCH | [`\u002Fv1\u002Fnote\u002Fcollections\u002F:id`](\u002Fdocs\u002Fnote\u002Fcollections\u002Fupdate) | note.collection.update | Переименовать базу знаний |\n| POST | [`\u002Fv1\u002Fnote\u002Fcollections\u002F:id\u002Farchive`](\u002Fdocs\u002Fnote\u002Fcollections\u002Farchive) | note.collection.archive | Архивировать базу знаний |\n| DELETE | [`\u002Fv1\u002Fnote\u002Fcollections\u002F:id`](\u002Fdocs\u002Fnote\u002Fcollections\u002Fdelete) | note.collection.delete | Удалить базу знаний |\n| GET | [`\u002Fv1\u002Fnote\u002Fcollections\u002F:collectionId\u002Fdocuments`](\u002Fdocs\u002Fnote\u002Fcollections\u002Ftree) | note.document.tree.list | Дерево документов базы знаний |\n| POST | [`\u002Fv1\u002Fnote\u002Fdocuments`](\u002Fdocs\u002Fnote\u002Fdocuments\u002Fcreate) | note.document.add | Создать документ |\n| GET | [`\u002Fv1\u002Fnote\u002Fdocuments\u002F:id`](\u002Fdocs\u002Fnote\u002Fdocuments\u002Fget) | note.document.get | Получить документ |\n| PATCH | [`\u002Fv1\u002Fnote\u002Fdocuments\u002F:id`](\u002Fdocs\u002Fnote\u002Fdocuments\u002Fupdate) | note.document.update | Обновить документ |\n| POST | [`\u002Fv1\u002Fnote\u002Fdocuments\u002F:id\u002Farchive`](\u002Fdocs\u002Fnote\u002Fdocuments\u002Farchive) | note.document.archive | Архивировать документ |\n| DELETE | [`\u002Fv1\u002Fnote\u002Fdocuments\u002F:id`](\u002Fdocs\u002Fnote\u002Fdocuments\u002Fdelete) | note.document.delete | Удалить документ |\n| GET | [`\u002Fv1\u002Fnote\u002Fdocuments\u002Fsearch`](\u002Fdocs\u002Fnote\u002Fdocuments\u002Fsearch) | note.document.search.list | Поиск документов |\n| POST | [`\u002Fv1\u002Fnote\u002Fdocuments\u002F:documentId\u002Ffiles`](\u002Fdocs\u002Fnote\u002Ffiles\u002Fupload) | note.file.add | Загрузить файл |\n| GET | [`\u002Fv1\u002Fnote\u002Fdocuments\u002F:documentId\u002Ffiles\u002F:id`](\u002Fdocs\u002Fnote\u002Ffiles\u002Fget) | note.file.get | Получить метаданные файла |\n\n## Коды ошибок\n\n| HTTP | Код | Когда |\n|------|-----|-------|\n| 403 | `SCOPE_DENIED` | Ключу не хватает скоупа `note` |\n| 403 | `WRITE_BLOCKED_READONLY_KEY` | Ключ в режиме «только чтение» вызвал метод записи |\n| 403 | `BITRIX_ACCESS_DENIED` | Нет права на операцию с базой знаний или документом |\n| 404 | `ENTITY_NOT_FOUND` | База знаний, документ или файл не существуют, удалены или архивированы |\n| 502 | `BITRIX_UNAVAILABLE` | Bitrix24 недоступен |\n\nПолный список общих ошибок API — [Ошибки](\u002Fdocs\u002Ferrors).\n\n## Смотрите также\n\n- [Базы знаний](\u002Fdocs\u002Fnote\u002Fcollections)\n- [Документы](\u002Fdocs\u002Fnote\u002Fdocuments)\n- [Файлы](\u002Fdocs\u002Fnote\u002Ffiles)\n","2026-07-08",{}]