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

Список блоков страницы

GET /v1/pages/:pageId/blocks

Возвращает блоки одной страницы сайта в том порядке, в котором они стоят на странице.

Параметры

Параметр Тип Обяз. По умолч. Описание
pageId (path) number да — ID страницы. Список: GET /v1/pages
version (query) string нет draft Версия страницы: draft — черновик, published — то, что видит посетитель сайта
deleted (query) boolean нет false true — вернуть блоки из корзины страницы вместо блоков на странице
content (query) boolean нет false true — добавить к каждому блоку его разметку content и подключения css, js. Увеличивает ответ на объём HTML всех блоков страницы
scope (query) string нет — Область сайта: KNOWLEDGE — база знаний, GROUP — страницы рабочих групп, MAINPAGE — главные страницы. Для страниц остальных сайтов параметр не передаётся

Пагинация. Параметров limit и offset у метода нет: ответ содержит все блоки страницы за один вызов.

Примеры

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/pages/20/blocks" \
  -H "X-Api-Key: YOUR_API_KEY"

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

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

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/pages/20/blocks', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { data, meta } = await res.json()
console.log(`Версия ${meta.version}, блоков: ${meta.count}`)
for (const block of data) {
  console.log(block.id, block.code, block.active ? 'виден' : 'скрыт')
}

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

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

const { data, meta } = await res.json()

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data array Блоки страницы в порядке их расположения на странице. Пустой массив, если блоков нет
data[].id number ID блока в прочитанной версии страницы
data[].pageId number ID страницы
data[].code string Код блока из каталога. Каталог: GET /v1/block-repository
data[].name string Название блока на языке портала
data[].active boolean false — блок скрыт на странице
data[].meta object Служебные сведения о блоке. Ключи в верхнем регистре, все значения строками: CREATED_BY_ID и MODIFIED_BY_ID — ID сотрудников, DATE_CREATE и DATE_MODIFY — даты в формате локали портала, DESIGNER_MODE, XML_ID и другие. FAVORITE_META приходит строкой "Array" и данных не содержит
data[].content string | null Только при content=true. HTML блока вместе с внешней обёрткой <div id="b<id>" class="block-wrapper …">. У скрытого блока — null
data[].css array Только при content=true. Подключаемые стили блока
data[].js array Только при content=true. Подключаемые скрипты блока
data[].version string Версия, из которой прочитан блок: draft или published
meta.version string Версия страницы, которую прочитал запрос: draft или published
meta.count number Число блоков в data

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

Черновик страницы с тремя блоками, первый скрыт:

JSON
{
  "success": true,
  "data": [
    {
      "id": 32,
      "pageId": 20,
      "code": "01.big_with_text",
      "name": "Обложка с меняющимися на фоне картинками",
      "active": false,
      "meta": {
        "LID": "20",
        "FAVORITE_META": "Array",
        "CREATED_BY_ID": "1",
        "DATE_CREATE": "10/12/2026 02:16:49 pm",
        "MODIFIED_BY_ID": "1",
        "DATE_MODIFY": "10/12/2026 02:16:49 pm",
        "SITE_TYPE": "PAGE",
        "LANDING_TITLE": "",
        "LANDING_TPL_CODE": "",
        "SITE_TPL_CODE": "",
        "XML_ID": "",
        "DESIGNER_MODE": ""
      },
      "version": "draft"
    },
    {
      "id": 30,
      "pageId": 20,
      "code": "03.1.three_cols_big_with_text_and_titles",
      "name": "Текст в 3 колонки на всю ширину страницы на цветном фоне",
      "active": true,
      "meta": {
        "LID": "20",
        "FAVORITE_META": "Array",
        "CREATED_BY_ID": "1",
        "DATE_CREATE": "10/12/2026 02:16:48 pm",
        "MODIFIED_BY_ID": "1",
        "DATE_MODIFY": "10/12/2026 02:16:48 pm",
        "SITE_TYPE": "PAGE",
        "LANDING_TITLE": "",
        "LANDING_TPL_CODE": "",
        "SITE_TPL_CODE": "",
        "XML_ID": "",
        "DESIGNER_MODE": ""
      },
      "version": "draft"
    },
    {
      "id": 34,
      "pageId": 20,
      "code": "03.1.three_cols_big_with_text_and_titles",
      "name": "Текст в 3 колонки на всю ширину страницы на цветном фоне",
      "active": true,
      "meta": {
        "LID": "20",
        "FAVORITE_META": "Array",
        "CREATED_BY_ID": "1",
        "DATE_CREATE": "10/12/2026 02:16:55 pm",
        "MODIFIED_BY_ID": "1",
        "DATE_MODIFY": "10/12/2026 02:16:55 pm",
        "SITE_TYPE": "PAGE",
        "LANDING_TITLE": "",
        "LANDING_TPL_CODE": "",
        "SITE_TPL_CODE": "",
        "XML_ID": "",
        "DESIGNER_MODE": ""
      },
      "version": "draft"
    }
  ],
  "meta": {
    "version": "draft",
    "count": 3
  }
}

Запрос GET /v1/pages/20/blocks?content=true — показаны два блока из трёх, у скрытого блока content равен null:

JSON
{
  "success": true,
  "data": [
    {
      "id": 32,
      "pageId": 20,
      "code": "01.big_with_text",
      "name": "Обложка с меняющимися на фоне картинками",
      "active": false,
      "meta": {
        "LID": "20",
        "FAVORITE_META": "Array",
        "CREATED_BY_ID": "1",
        "DATE_CREATE": "10/12/2026 02:16:49 pm",
        "MODIFIED_BY_ID": "1",
        "DATE_MODIFY": "10/12/2026 02:16:49 pm",
        "SITE_TYPE": "PAGE",
        "LANDING_TITLE": "",
        "LANDING_TPL_CODE": "",
        "SITE_TPL_CODE": "",
        "XML_ID": "",
        "DESIGNER_MODE": ""
      },
      "content": null,
      "css": [],
      "js": [],
      "version": "draft"
    },
    {
      "id": 34,
      "pageId": 20,
      "code": "03.1.three_cols_big_with_text_and_titles",
      "name": "Текст в 3 колонки на всю ширину страницы на цветном фоне",
      "active": true,
      "meta": {
        "LID": "20",
        "FAVORITE_META": "Array",
        "CREATED_BY_ID": "1",
        "DATE_CREATE": "10/12/2026 02:16:55 pm",
        "MODIFIED_BY_ID": "1",
        "DATE_MODIFY": "10/12/2026 02:16:55 pm",
        "SITE_TYPE": "PAGE",
        "LANDING_TITLE": "",
        "LANDING_TPL_CODE": "",
        "SITE_TPL_CODE": "",
        "XML_ID": "",
        "DESIGNER_MODE": ""
      },
      "content": "<div id=\"b34\" class=\"block-wrapper block-03-1-three-cols-big-with-text-and-titles\"><section class=\"landing-block\"><div class=\"container\"><h2>Hello</h2></div></section></div>",
      "css": [],
      "js": [],
      "version": "draft"
    }
  ],
  "meta": {
    "version": "draft",
    "count": 3
  }
}

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

404 — страница не найдена:

JSON
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "No such landing page, or it is not visible to this key. A knowledge-base, group or vibe page also needs `?scope=`."
  }
}

Ошибки

HTTP Код Описание
400 INVALID_PAGE_ID pageId не положительное целое число
400 INVALID_VERSION version не равен draft или published
400 INVALID_SCOPE scope не входит в KNOWLEDGE, GROUP, MAINPAGE
400 INVALID_PARAMS Битрикс24 отклонил запрос: не хватает обязательного параметра
400 WRONG_PATH Запрос отправлен на /v1/blocks без страницы. Сообщение перечисляет правильные пути
404 ENTITY_NOT_FOUND Страницы нет или она не видна владельцу ключа. Страница базы знаний, рабочей группы или главная страница не находится без параметра scope
413 RESPONSE_TOO_LARGE Ответ больше 5 МБ. Прочитайте страницу без content=true
502 BLOCK_LIST_UNCONFIRMED Битрикс24 не вернул список блоков. Повторите запрос
403 BITRIX_ACCESS_DENIED У сотрудника, под которым выпущен ключ, нет прав на страницу в Битрикс24
422 BITRIX_ERROR Битрикс24 отклонил запрос, текст ошибки — в message
403 SCOPE_DENIED API-ключ не имеет скоупа landing
401 TOKEN_MISSING API-ключ не имеет настроенных токенов

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

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

Черновик и опубликованная версия — разные блоки. Добавление, изменение и удаление блоков меняют черновик страницы, посетитель видит изменения только после публикации страницы — POST /v1/pages/:id/publication. После публикации у блоков опубликованной версии свои ID, не совпадающие с ID в черновике. Методы записи принимают только ID из черновика: ID, взятый из ответа с version=published, они отклоняют с 404 BLOCK_NOT_IN_DRAFT.

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