landing.template.setSiteRef
Установить включаемые области для сайта
Описание
Метод landing.template.setSiteRef сохраняет привязки включаемых областей для сайта. Он работает только с привязками сайта и не меняет привязки отдельных страниц.
Параметры
id
integer
обязательный
Идентификатор сайта.
Идентификатор сайта можно получить методом landing.site.getList
data
object
необязательный
Набор привязок включаемых областей сайта (подробное описание).
Если не передать параметр или передать пустой объект {} или массив [], метод удалит все текущие привязки включаемых областей для этого сайта
Параметр data
<ID_ОБЛАСТИ>
integer
необязательный
Идентификатор страницы, которую нужно назначить в соответствующую включаемую область.
Ключом служит идентификатор области шаблона, значением — идентификатор страницы.
Идентификаторы областей зависят от шаблона сайта. Их можно определить по шаблону, например через метод landing.template.getlist и поле CONTENT: в разметке области обозначаются как #AREA_1#, #AREA_2# и так далее
В data нужно передавать только числовую часть такого идентификатора: 1, 2. Если для сохраненной области не передать ключ в data или передать для нее значение 0, пустую строку, null либо отрицательное число, привязка будет удалена
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"id": 157,
"data": {
"1": 614,
"2": 615,
"3": 616
}
}' \
"https://**put.your-domain-here**/rest/**user_id**/**webhook_code**/landing.template.setSiteRef.json"
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"id": 157,
"data": {
"1": 614,
"2": 615,
"3": 616
},
"auth": "**put_access_token_here**"
}' \
"https://**put.your-domain-here**/rest/landing.template.setSiteRef.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
try {
const response = await $b24.actions.v2.call.make<boolean>({
method: 'landing.template.setSiteRef',
params: {
id: 157,
data: {
1: 614,
2: 615,
3: 616,
},
},
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('Site refs saved:', result)
}
} 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 setSiteRef() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'landing.template.setSiteRef',
params: {
id: 157,
data: {
1: 614,
2: 615,
3: 616,
},
},
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('Site refs saved:', result)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', setSiteRef)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.landing.template.set_site_ref(
bitrix_id=157,
data={
1: 614,
2: 615,
3: 616,
},
).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.template.setSiteRef',
[
'id' => 157,
'data' => [
1 => 614,
2 => 615,
3 => 616,
],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . var_export($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error setting site refs: ' . $e->getMessage();
}
BX24.callMethod(
'landing.template.setSiteRef',
{
id: 157,
data: {
1: 614,
2: 615,
3: 616
}
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.info(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'landing.template.setSiteRef',
[
'id' => 157,
'data' => [
1 => 614,
2 => 615,
3 => 616,
],
]
);
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.template.setSiteRef", b24.Params{
"id": 157,
"data": b24.Params{
"1": 614,
"2": 615,
"3": 616,
},
})
if err != nil {
return fmt.Errorf("landing.template.setSiteRef: %w", err)
}
var ok bool
if err := json.Unmarshal(res.Result, &ok); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("выполнено:", ok)
Ответ
HTTP-статус: 200
{
"result": true,
"time": {
"start": 1774893504,
"finish": 1774893504.131602,
"duration": 0.13160204887390137,
"processing": 0,
"date_start": "2026-03-30T20:58:24+03:00",
"date_finish": "2026-03-30T20:58:24+03:00",
"operating_reset_at": 1774894104,
"operating": 0
}
}
Возвращаемые данные
result
boolean
Результат вызова.
Метод возвращает true, если запрос завершился без ошибки.
Метод может вернуть true, если ничего не изменилось. Например, когда для сайта уже сохранены такие же привязки, у пользователя нет права на изменение настроек или переданы только значения, которые не сохраняются
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "ENTITY_NOT_FOUND",
"error_description": "Сущность не найдена"
}
| Код | Описание | Значение |
|---|---|---|
MISSING_PARAMS |
Не передан обязательный параметр id |
|
ENTITY_NOT_FOUND |
Сайт не найден или недоступен | |
ACCESS_DENIED |
У пользователя нет прав на изменение настроек сайта |

