Для AI-агентов: markdown этой страницы — /docs-content/entities/pages/catalog-manifest.md индекс документации — /llms.txt
Чтение манифеста каталога
GET /v1/block-repository/:code/manifest
Возвращает code и доступные поля block, nodes, cards, style, assets. Ключи nodes — селекторы узлов; ключи cards — селекторы карточек. Отсутствующий или пустой манифест даёт 404. У блоков приложений repo_N манифест-файла нет, ответ — 404. Кодируйте код с точками, двоеточием или @ в пути.
Требуется scope landing. READONLY-ключ может читать. Необязательный query scope=KNOWLEDGE|GROUP|MAINPAGE выбирает контекст страницы. Тело контрактом не предусмотрено. Строки с credential URL заменяются на [REDACTED], при необходимости целиком HTML. Ответ Б24 ограничен 8 MiB; превышение даёт 502.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
code |
string | yes | Непустой код блока, закодированный в пути, например bitrix:01.big_with_text_3 или repo_12. |
scope |
string | no | KNOWLEDGE, GROUP или MAINPAGE; для обычного сайта опускается. |
Примеры
curl — personal key
curl "https://vibecode.bitrix24.tech/v1/block-repository/bitrix%3A01.big_with_text_3/manifest" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth application
curl "https://vibecode.bitrix24.tech/v1/block-repository/bitrix%3A01.big_with_text_3/manifest" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — personal key
const response = await fetch("https://vibecode.bitrix24.tech/v1/block-repository/bitrix%3A01.big_with_text_3/manifest", {
headers: {"X-Api-Key": "YOUR_API_KEY"},
})
const result = await response.json()
if (!response.ok) throw new Error(result.error.message)
console.log(result.data)
JavaScript — OAuth application
const response = await fetch("https://vibecode.bitrix24.tech/v1/block-repository/bitrix%3A01.big_with_text_3/manifest", {
headers: {"X-Api-Key": "YOUR_APP_KEY", "Authorization": "Bearer USER_SESSION_TOKEN"},
})
const result = await response.json()
if (!response.ok) throw new Error(result.error.message)
console.log(result.data)
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | true |
data |
object | Результат операции. |
data.code |
string | Запрошенный код. |
data.block |
object | Необязательное описание блока. |
data.nodes |
object or array | Необязательный словарь селекторов узлов. |
data.cards |
object or array | Необязательный словарь селекторов карточек. |
data.style |
object or array | Необязательное описание стилей. |
data.assets |
object or array | Необязательные ресурсы. |
Ответ
{
"success": true,
"data": {
"code": "bitrix:01.big_with_text_3",
"block": {
"name": "Example"
},
"nodes": {
".title": {
"name": "Title"
}
},
"cards": {},
"style": {}
}
}
Ошибки
| HTTP | Код | Условие |
|---|---|---|
| 400 | INVALID_PARAMS |
Некорректный pageId/blockId или пустой code. |
| 400 | INVALID_SCOPE |
Некорректный scope. |
| 401 | TOKEN_MISSING |
Нет авторизации Б24. |
| 403 | SCOPE_DENIED |
У ключа нет scope landing. |
| 403 | BITRIX_ACCESS_DENIED |
Нет прав у пользователя Б24. |
| 404 | ENTITY_NOT_FOUND |
Блок другой страницы, нет образца или файла манифеста. |
| 409 | LANDING_MODULE_NOT_ENABLED |
Модуль «Сайты» недоступен на портале. |
| 422 | BITRIX_ERROR |
Бизнес-отказ Б24; текст сохраняется. |
| 502 | BITRIX_INVALID_RESPONSE |
Неожиданный результат или ответ Б24 больше 8 MiB. |