landing.site.update
Изменить сайт
Описание
Метод landing.site.update обновляет параметры сайта.
Параметры
scope
string
необязательный
Внутренний скоуп лендингов. Он не связан с REST-скоупом landing в названии метода.
Значение scope должно соответствовать типу сайта (подробное описание)
id
integer
обязательный
Идентификатор сайта.
Идентификатор сайта можно получить методом landing.site.getList или из результата метода landing.site.add
fields
object
обязательный
Набор полей для обновления сайта (подробное описание)
Параметр fields
TITLE
string
необязательный
Название сайта, длина до 255 символов
CODE
string
необязательный
Символьный код сайта. При передаче пустой строки код генерируется из TITLE или из строки site.
Код не может содержать /, код из одних цифр получает префикс site, максимальная длина кода 253 символа.
Если код уже занят в домене, к нему автоматически добавляется числовой суффикс
TYPE
string
необязательный
Тип сайта. Поддерживаются PAGE, STORE, SMN, KNOWLEDGE, GROUP, MAINPAGE.
Это внутренний тип лендинга, он связан с внутренним scope (подробное описание)
DOMAIN_ID
integer
необязательный
Домен сайта. Обычно передают доменное имя. Для сайтов типов PAGE, STORE, SMN, если параметр не передан или передана пустая строка, значение параметра игнорируется. Для GROUP, KNOWLEDGE и MAINPAGE параметр обычно не передают.
Для 1С-Битрикс: Управление сайтом передайте идентификатор существующего домена. Доменное имя в виде строки не поддерживается, метод вернет ошибку
DESCRIPTION
string
необязательный
Описание сайта, длина до 255 символов
XML_ID
string
необязательный
Внешний идентификатор сайта
LANDING_ID_INDEX
integer
необязательный
Идентификатор страницы сайта, которая будет главной
LANDING_ID_404
integer
необязательный
Идентификатор страницы ошибки 404
LANDING_ID_503
integer
необязательный
Идентификатор страницы ошибки 503
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"id": 206,
"fields": {
"TITLE": "Support portal",
"CODE": "support-portal",
"DESCRIPTION": "Обновленное описание сайта",
"LANDING_ID_INDEX": 987
}
}' \
"https://**put.your-domain-here**/rest/**user_id**/**webhook_code**/landing.site.update.json"
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"id": 206,
"fields": {
"TITLE": "Support portal",
"CODE": "support-portal",
"DESCRIPTION": "Обновленное описание сайта",
"LANDING_ID_INDEX": 987
},
"auth": "**put_access_token_here**"
}' \
"https://**put.your-domain-here**/rest/landing.site.update.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.site.update',
params: {
id: 206,
fields: {
TITLE: 'Support portal',
CODE: 'support-portal',
DESCRIPTION: 'Updated site description',
LANDING_ID_INDEX: 987,
},
},
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 updated:', 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 updateSite() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'landing.site.update',
params: {
id: 206,
fields: {
TITLE: 'Support portal',
CODE: 'support-portal',
DESCRIPTION: 'Updated site description',
LANDING_ID_INDEX: 987,
},
},
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 updated:', result)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', updateSite)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.landing.site.update(
bitrix_id=206,
fields={
"TITLE": "Support portal",
"CODE": "support-portal",
"DESCRIPTION": "Updated site description",
"LANDING_ID_INDEX": 987,
},
).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.site.update',
[
'id' => 206,
'fields' => [
'TITLE' => 'Support portal',
'CODE' => 'support-portal',
'DESCRIPTION' => 'Обновленное описание сайта',
'LANDING_ID_INDEX' => 987,
],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . var_export($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error updating site: ' . $e->getMessage();
}
BX24.callMethod(
'landing.site.update',
{
id: 206,
fields: {
TITLE: 'Support portal',
CODE: 'support-portal',
DESCRIPTION: 'Обновленное описание сайта',
LANDING_ID_INDEX: 987
}
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.info(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'landing.site.update',
[
'id' => 206,
'fields' => [
'TITLE' => 'Support portal',
'CODE' => 'support-portal',
'DESCRIPTION' => 'Обновленное описание сайта',
'LANDING_ID_INDEX' => 987,
],
]
);
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.site.update", b24.Params{
"id": 206,
"fields": b24.Params{
"TITLE": "Support portal",
"CODE": "support-portal",
"DESCRIPTION": "Обновленное описание сайта",
"LANDING_ID_INDEX": 987,
},
})
if err != nil {
return fmt.Errorf("landing.site.update: %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": 1773288229,
"finish": 1773288229.999823,
"duration": 0.9998230934143066,
"processing": 0,
"date_start": "2026-03-12T07:03:49+03:00",
"date_finish": "2026-03-12T07:03:49+03:00",
"operating_reset_at": 1773288829,
"operating": 0
}
}
Возвращаемые данные
result
boolean
true, если сайт успешно обновлен
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "MISSING_PARAMS",
"error_description": "Недостаточно параметров вызова, пропущены: id"
}
| Код | Описание | Значение |
|---|---|---|
MISSING_PARAMS |
Не передан обязательный параметр id или fields |
|
ACCESS_DENIED |
Недостаточно прав для изменения сайта или конкретных полей | |
DOMAIN_NOT_FOUND |
Указан несуществующий домен | |
DOMAIN_IS_INCORRECT |
Передан некорректный формат доменного имени | |
DOMAIN_EXIST_TRASH |
Домен уже привязан к сайту в корзине | |
DOMAIN_DISABLE |
Нельзя использовать запрещенное имя домена в Битрикс24 | |
DOMAIN_EXIST |
Домен уже занят | |
CODE_IS_NOT_UNIQUE |
Код сайта не уникален в рамках домена | |
SLASH_IS_NOT_ALLOWED |
В fields.CODE передан символ / |
|
CONTROLLER_ERROR_BADRESPONSE |
Неопознанный ответ внешнего сервиса регистрации домена | |
CONTROLLER_ERROR_BADLICENSE |
Ошибка лицензии во внешнем сервисе регистрации домена | |
CONTROLLER_ERROR_<ERROR_CODE> |
Ошибка внешнего сервиса регистрации домена с кодом <ERROR_CODE> |

