Получить список блоков из репозитория landing.block.getrepository
Scope:
landingКто может выполнять метод: пользователь с доступом к разделу «Сайты и магазины»
Метод landing.block.getrepository возвращает доступные разделы репозитория блоков или данные одного раздела.
Параметры метода
Обязательные параметры отмечены *
|
Название |
Описание |
|
section |
Код раздела репозитория, например Если параметр не передан, метод вернет все доступные разделы. В этом случае ключами объекта Кроме стандартных разделов, в ответ могут появляться разделы партнерских приложений и служебные разделы. Чтобы получить актуальные коды разделов, вызовите метод без Если раздел с таким кодом не найден или передана пустая строка, метод вернет |
|
scope |
Дополнительный верхнеуровневый параметр REST-вызова, который влияет на тип сайта, для которого собирается репозиторий. Для сайтов типов Подробно правила выбора значения описаны в статье Работа с типами сайтов и скоупами. Если |
Примеры кода
Как использовать примеры в документации
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"section": "text"
}' \
"https://**put.your-domain-here**/rest/**user_id**/**webhook_code**/landing.block.getrepository.json"
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"section": "text",
"auth": "**put_access_token_here**"
}' \
"https://**put.your-domain-here**/rest/landing.block.getrepository.json"
try
{
const response = await $b24.callMethod(
'landing.block.getrepository',
{
section: 'text'
}
);
const result = response.getData().result;
console.info(result);
}
catch (error)
{
console.error(error);
}
try {
$response = $b24Service
->core
->call(
'landing.block.getrepository',
[
'section' => 'text',
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . var_export($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error getting repository blocks: ' . $e->getMessage();
}
BX24.callMethod(
'landing.block.getrepository',
{
section: 'text'
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.info(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'landing.block.getrepository',
[
'section' => 'text',
]
);
if (isset($result['error']))
{
echo 'Ошибка: ' . $result['error_description'];
}
else
{
echo '<pre>';
print_r($result['result']);
echo '</pre>';
}
Обработка ответа
HTTP-статус: 200
Пример ответа для запроса с параметром section
{
"result": {
"name": "Текст",
"meta": {
"ai_text_placeholder": "text for website, family business, sale of flowers",
"ai_text_max_tokens": 150
},
"new": false,
"type": null,
"specialType": null,
"separator": false,
"app_code": false,
"items": {
"03.1.three_cols_big_with_text_and_titles": {
"id": null,
"name": "Текст в 3 колонки на всю ширину страницы на цветном фоне",
"namespace": "bitrix",
"new": false,
"version": null,
"type": [],
"section": [
"columns",
"text"
],
"system": false,
"description": "Три колонки с заголовками и текстом",
"preview": "//example.bitrix24.ru/bitrix/blocks/bitrix/03.1.three_cols_big_with_text_and_titles/preview.jpg",
"restricted": false,
"repo_id": false,
"app_code": false,
"only_for_license": "",
"requires_updates": false
},
"repo_405": {
"id": null,
"new": false,
"name": "Блок \"Текст + изображение\" с кнопкой, текст справа, изображение слева",
"description": null,
"namespace": "krayt.monotovar",
"type": [],
"section": [
"about",
"text",
"image"
],
"preview": "https://krayt.moscow/upload/iblock/5aa/5aabf5b9241876561d5db49c482dcd96.png",
"restricted": true,
"repo_id": "405",
"app_code": "krayt.monotovar",
"requires_updates": false
}
}
},
"time": {
"start": 1774521670,
"finish": 1774521670.823288,
"duration": 0.8232879638671875,
"processing": 0,
"date_start": "2026-03-26T13:41:10+03:00",
"date_finish": "2026-03-26T13:41:10+03:00",
"operating_reset_at": 1774522270,
"operating": 0
}
}
Пример ответа для запроса без параметра section
{
"result": {
"favourite": {
"name": "Избранное",
"meta": [],
"new": false,
"type": null,
"specialType": null,
"separator": false,
"app_code": false,
"items": {}
},
"text": {
"name": "Текст",
"meta": {
"ai_text_placeholder": "text for website, family business, sale of flowers",
"ai_text_max_tokens": 150
},
"new": false,
"type": null,
"specialType": null,
"separator": false,
"app_code": false,
"items": {
"03.1.three_cols_big_with_text_and_titles": {
"id": null,
"name": "Текст в 3 колонки на всю ширину страницы на цветном фоне",
"namespace": "bitrix",
"new": false,
"version": null,
"type": [],
"section": [
"columns",
"text"
],
"system": false,
"description": "Три колонки с заголовками и текстом",
"preview": "//example.bitrix24.ru/bitrix/blocks/bitrix/03.1.three_cols_big_with_text_and_titles/preview.jpg",
"restricted": false,
"repo_id": false,
"app_code": false,
"only_for_license": "",
"requires_updates": false
}
}
}
},
"time": {
"start": 1774521670,
"finish": 1774521670.823288,
"duration": 0.8232879638671875,
"processing": 0,
"date_start": "2026-03-26T13:41:10+03:00",
"date_finish": "2026-03-26T13:41:10+03:00",
"operating_reset_at": 1774522270,
"operating": 0
}
}
Возвращаемые данные
|
Название |
Описание |
|
Результат запроса. Если Если Если |
|
|
time |
Информация о времени выполнения запроса |
Объект раздела
|
Название |
Описание |
|
name |
Название раздела |
|
Дополнительные данные раздела. Например, раздел может вернуть служебные поля для AI-подсказок |
|
|
new |
Признак того, что в разделе есть новые блоки |
|
Ограничение раздела по типу сайта, если оно задано. Значение может быть массивом типов, строкой или |
|
|
Дополнительный тип раздела, если он задан. Если дополнительный тип не задан, метод вернет |
|
|
separator |
Признак служебного разделителя. Разделы с таким флагом нужны для визуального разделения категорий в редакторе блоков. Они не содержат блоков, поэтому такие разделы можно пропускать при обходе ответа |
|
Код приложения, если раздел относится к партнерскому каталогу, иначе |
|
|
items |
Набор блоков раздела, где ключом служит код блока, а значением - объект блока (подробное описание). Для избранных блоков ключ может содержать суффикс |
Особенности разделов:
lastсодержит блоки, которые пользователь недавно добавлял в редакторе. Раздел заполняется только в режиме редактирования. При обычном REST-вызове раздел обычно не возвращается,favouriteсодержит избранные блоки и может возвращаться даже с пустымitems,- пример разделителя:
separator_apps, - состав полей раздела может отличаться. У разделов партнерских приложений могут отсутствовать
meta,typeиspecialType.
Объект блока
|
Название |
Описание |
|
Внутренний идентификатор блока из репозитория, если он задан. Для части блоков метод вернет |
|
|
name |
Название блока |
|
namespace |
Пространство имен блока |
|
new |
Признак нового блока |
|
Минимальная версия продукта, для которой рассчитан блок, если она указана. Если ограничение не задано, метод вернет |
|
|
type |
Список типов сайтов, для которых доступен блок. Пустой массив означает, что отдельное ограничение по типу сайта для блока не задано. Для правил выбора типа сайта используйте статью Работа с типами сайтов и скоупами |
|
Код раздела или список кодов разделов, в которых показывается блок. Обычно в ответе приходит массив кодов, например |
|
|
system |
Признак того, что блок является служебным и используется платформой внутри — не предназначен для добавления на страницу пользователем. Такие блоки по умолчанию не включаются в ответ метода |
|
Краткое описание блока. Поле может быть пустой строкой или |
|
|
preview |
Путь или URL изображения предпросмотра. Для стандартных блоков может возвращаться URL без указания протокола вида |
|
restricted |
Признак дополнительных ограничений блока |
|
Идентификатор партнерского блока из репозитория приложений или |
|
|
Код приложения, которому принадлежит блок, или |
|
|
only_for_license |
Код лицензии, для которой доступен блок, если ограничение задано. Если поле заполнено, значение соответствует текущей лицензии портала. Блоки для других лицензий в ответ не попадают |
|
app_expired |
Признак того, что срок действия приложения, которому принадлежит блок, истек. Поле присутствует только у партнерских блоков с истекшей подпиской |
|
requires_updates |
Признак того, что для корректной работы блока нужна более новая версия продукта |
|
favorite |
Дополнительный флаг избранного блока |
|
favoriteMy |
Дополнительный флаг избранного блока, который показывает, что блок сохранен текущим пользователем |
Состав полей блока может отличаться для стандартных, партнерских и избранных блоков. Метод возвращает только те поля, которые есть у конкретного блока.
Обработка ошибок
HTTP-статус: 400
{
"error": "ACCESS_DENIED",
"error_description": "Недостаточно прав."
}
|
Название |
Описание |
|
error |
Строковый код ошибки. Может состоять из цифр, латинских букв и знака подчеркивания |
|
error_description |
Текстовое описание ошибки. Описание не предназначено для показа конечному пользователю в необработанном виде |
Возможные коды ошибок
|
Код |
Описание |
|
|
У пользователя нет доступа к разделу «Сайты и магазины» |
Статусы и коды системных ошибок
HTTP-статус: 20x, 40x, 50x
Описанные ниже ошибки могут возникнуть при вызове любого метода
|
Статус |
Код |
Описание |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Превышен лимит на интенсивность запросов |
|
|
|
Текущий метод не разрешен для вызова с помощью batch |
|
|
|
Превышена максимальная длина параметров, переданных в метод batch |
|
|
|
Неверный access-токен или код вебхука |
|
|
|
Для вызовов методов требуется использовать протокол HTTPS |
|
|
|
REST API заблокирован из-за перегрузки. Это ручная индивидуальная блокировка, для снятия необходимо обращаться в техническую поддержку Битрикс24 |
|
|
|
REST API доступен только на коммерческих планах |
|
|
|
У пользователя, с чьим access-токеном или вебхуком был вызван метод, не хватает прав |
|
|
|
Манифест недоступен |
|
|
|
Запрос требует более высоких привилегий, чем предоставляет токен вебхука |
|
|
|
Предоставленный access-токен доступа истек |
|
|
|
Пользователь не имеет доступа к приложению. Это означает, что приложение установлено, но администратор портала разрешил доступ к этому приложению только конкретным пользователям |
|
|
|
Публичная часть сайта закрыта. Чтобы открыть публичную часть сайта на коробочной установке отключите опцию «Временное закрытие публичной части сайта». Путь к настройке: Рабочий стол > Настройки > Настройки продукта > Настройки модулей > Главный модуль > Временное закрытие публичной части сайта |
Продолжите изучение
- Получить контент блока из репозитория landing.block.getContentFromRepository
- Получить манифест блока `landing.block.getmanifest`
- Получить файл манифеста блока landing.block.getmanifestfile