landing.block.getmanifest
Получить манифест блока
Описание
Метод landing.block.getmanifest возвращает подготовленный манифест блока, размещенного на странице.
Он возвращает не исходный файл, а подготовленные данные для конкретного блока. Например, локализованные названия, поля code, preview, assets, timestamp, callbacks.
Параметры
scope
string
необязательный
Внутренний скоуп лендингов. Он не связан с REST-скоупом landing в названии метода.
Значение scope должно соответствовать типу сайта (подробное описание)
lid
integer
обязательный
Идентификатор страницы.
Идентификатор страницы можно получить методом landing.landing.getlist
block
integer
обязательный
Идентификатор блока. Блок должен принадлежать странице lid в выбранной версии страницы.
Идентификатор блока можно получить методом landing.block.getlist
params
object
необязательный
Дополнительные параметры чтения манифеста (подробное описание)
Параметр params
edit_mode
boolean
необязательный
Если значение приводится к true, метод читает черновик страницы вместо опубликованной версии. По умолчанию — false.
Без этого параметра метод ищет блок только в опубликованной версии страницы
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"lid": 4858,
"block": 39556,
"params": {
"edit_mode": true
}
}' \
"https://**put.your-domain-here**/rest/**user_id**/**webhook_code**/landing.block.getmanifest.json"
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"lid": 4858,
"block": 39556,
"params": {
"edit_mode": true
},
"auth": "**put_access_token_here**"
}' \
"https://**put.your-domain-here**/rest/landing.block.getmanifest.json"
// This snippet is an ES module: top-level await requires type="module" or a bundler.
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide).
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
// Shape of the payload returned in result (match the "response handling" section of the page)
type GetManifestResult = {
block: {
name: string
section: string[]
dynamic: boolean
subtype?: string | string[]
}
nodes: Record<string, unknown>
style: Record<string, unknown>
assets: {
css: string[]
js: string[]
ext: string[]
class: string[]
callbacks: unknown[]
}
timestamp: number
callbacks: Record<string, unknown>
attrs: Record<string, unknown>
cards: unknown[]
menu: unknown[]
namespace: string
code: string
preview: string
}
try {
const response = await $b24.actions.v2.call.make<GetManifestResult>({
method: 'landing.block.getmanifest',
params: {
lid: 4858,
block: 39556,
params: {
edit_mode: true,
},
},
requestId: Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info(result.block.name, result.code, result.preview)
}
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function getBlockManifest() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'landing.block.getmanifest',
params: {
lid: 4858,
block: 39556,
params: {
edit_mode: true,
},
},
requestId: B24Js.Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info(result.block.name, result.code, result.preview)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', getBlockManifest)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.landing.block.getmanifest(
lid=4858,
block=39556,
params={
"edit_mode": True,
},
).response
result = bitrix_response.result
print(result)
except BitrixAPIError as error:
print(
"Ошибка Bitrix API",
f"error: {error.error}",
f"error_description: {error.error_description}",
sep="\n",
)
except BitrixSDKException as error:
print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
print(f"Непредвиденная ошибка: {error}")
try {
$response = $b24Service
->core
->call(
'landing.block.getmanifest',
[
'lid' => 4858,
'block' => 39556,
'params' => [
'edit_mode' => true,
],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . var_export($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error getting block manifest: ' . $e->getMessage();
}
BX24.callMethod(
'landing.block.getmanifest',
{
lid: 4858,
block: 39556,
params: {
edit_mode: true
}
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.info(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'landing.block.getmanifest',
[
'lid' => 4858,
'block' => 39556,
'params' => [
'edit_mode' => true,
],
]
);
if (isset($result['error']))
{
echo 'Ошибка: ' . $result['error_description'];
}
else
{
echo '<pre>';
print_r($result['result']);
echo '</pre>';
}
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "landing.block.getmanifest", b24.Params{
"lid": 4858,
"block": 39556,
"params": b24.Params{
"edit_mode": true,
},
})
if err != nil {
return fmt.Errorf("landing.block.getmanifest: %w", err)
}
var item struct {
Timestamp int `json:"timestamp"`
Namespace string `json:"namespace"`
Code string `json:"code"`
Preview string `json:"preview"`
}
if err := json.Unmarshal(res.Result, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.Timestamp, item.Namespace)
Ответ
HTTP-статус: 200
{
"result": {
"block": {
"name": "Форма на светлом фоне по центру",
"section": [
"forms"
],
"dynamic": false,
"subtype": "form",
"attrsFormDescription": "<a href=\"/crm/webform/\" target=\"_blank\">Настроить CRM-формы</a>"
},
"nodes": {
"#wrapper": {
"type": "styleimg",
"code": "#wrapper"
}
},
"style": {
"block": {
"type": [
"block-default",
"block-border"
]
},
"nodes": {
".bitrix24forms": {
"type": "crm-form"
}
}
},
"assets": {
"css": [],
"js": [],
"ext": [
"landing_form"
],
"class": [],
"callbacks": []
},
"timestamp": 1751467642,
"callbacks": {
"afteradd": {}
},
"attrs": {
".bitrix24forms": [
{
"name": "Embed form flag",
"attribute": "data-b24form-embed",
"type": "string",
"hidden": true
},
{
"name": "Form design",
"attribute": "data-b24form-design",
"type": "string",
"hidden": true
},
{
"name": "Form from connector flag",
"attribute": "data-b24form-connector",
"type": "string",
"hidden": true
},
{
"name": "CRM-форма",
"attribute": "data-b24form",
"items": [
{
"name": "Форма обратной связи",
"value": "#crmFormInline3"
},
{
"name": "Контактные данные с комментарием",
"value": "#crmFormInline39"
}
],
"type": "list"
},
{
"name": "Дизайн формы",
"attribute": "data-b24form-use-style",
"type": "list",
"items": [
{
"name": "Использовать дизайн блока",
"value": "Y"
},
{
"name": "Использовать дизайн CRM-формы",
"value": "N"
}
]
}
]
},
"cards": [],
"menu": [],
"namespace": "bitrix",
"code": "33.13.form_2_light_no_text",
"preview": "/bitrix/blocks/bitrix/33.13.form_2_light_no_text/preview.jpg"
},
"time": {
"start": 1774521323,
"finish": 1774521323.212432,
"duration": 0.2124319076538086,
"processing": 0,
"date_start": "2026-03-26T13:35:23+03:00",
"date_finish": "2026-03-26T13:35:23+03:00",
"operating_reset_at": 1774521923,
"operating": 0
}
}
Возвращаемые данные
result
object
Подготовленный манифест блока (подробное описание). Общий формат манифеста описан в статье Файл манифеста.
Пустые разделы манифеста могут вернуться как пустые массивы [], даже если обычно содержат объект с ключами
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "BLOCK_NOT_FOUND",
"error_description": "Блок не найден"
}
| Код | Описание | Значение |
|---|---|---|
MISSING_PARAMS |
Не передан обязательный параметр lid или block |
|
ACCESS_DENIED |
У пользователя нет права на просмотр страницы | |
LANDING_NOT_EXIST |
Страница с идентификатором lid не найдена, удалена или недоступна текущему пользователю |
|
BLOCK_NOT_FOUND |
Блок с идентификатором block не найден на странице в выбранной версии |

