landing.syspage.getSpecialPage
Получить адрес специальной страницы сайта
Описание
Метод landing.syspage.getSpecialPage возвращает URL специальной страницы сайта.
Параметры
siteId
integer
обязательный
Идентификатор сайта.
Идентификатор сайта можно получить методом landing.site.getList или из результата метода landing.site.add
type
string
обязательный
Код специальной страницы, который метод ищет в привязках сайта.
Метод ищет точное совпадение по строке, без обрезки пробелов и без нормализации регистра.
Возможные значения:
- mainpage — главная страница
- catalog — главная страница каталога
- personal — персональный раздел
- cart — корзина
- order — оформление заказа
- payment — страница оплаты
- compare — страница сравнения
- feedback — страница обратной связи
Метод landing.syspage.set при сохранении убирает пробелы по краям значения type. Поэтому в landing.syspage.getSpecialPage параметр type нужно передавать без лишних пробелов. Иначе метод может не найти нужную страницу.
Если вместо строки передать число, true, false или null, метод вернет пустую строку "". Если передать массив, запрос завершится ошибкой
additional
object
необязательный
Дополнительные параметры URL (подробное описание).
Каждая пара ключ-значение добавляется к итоговому URL найденной страницы. По умолчанию — пустой объект
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"siteId": 1390,
"type": "personal",
"additional": {
"SECTION": "private"
}
}' \
"https://**put.your-domain-here**/rest/**user_id**/**webhook_code**/landing.syspage.getSpecialPage.json"
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"siteId": 1390,
"type": "personal",
"additional": {
"SECTION": "private"
},
"auth": "**put_access_token_here**"
}' \
"https://**put.your-domain-here**/rest/landing.syspage.getSpecialPage.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<string | null>({
method: 'landing.syspage.getSpecialPage',
params: {
siteId: 1390,
type: 'personal',
additional: {
SECTION: 'private',
},
},
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)
}
} 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 getSpecialPage() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'landing.syspage.getSpecialPage',
params: {
siteId: 1390,
type: 'personal',
additional: {
SECTION: 'private',
},
},
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)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', getSpecialPage)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.landing.syspage.get_special_page(
site_id=1390,
type="personal",
).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.syspage.getSpecialPage',
[
'siteId' => 1390,
'type' => 'personal',
'additional' => [
'SECTION' => 'private',
],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error getting special page URL: ' . $e->getMessage();
}
BX24.callMethod(
'landing.syspage.getSpecialPage',
{
siteId: 1390,
type: 'personal',
additional: {
SECTION: 'private'
}
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.info(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'landing.syspage.getSpecialPage',
[
'siteId' => 1390,
'type' => 'personal',
'additional' => [
'SECTION' => 'private',
],
]
);
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.syspage.getSpecialPage", b24.Params{
"siteId": 1390,
"type": "personal",
"additional": b24.Params{
"SECTION": "private",
},
})
if err != nil {
return fmt.Errorf("landing.syspage.getSpecialPage: %w", err)
}
var value string
if err := json.Unmarshal(res.Result, &value); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("результат:", value)
Ответ
HTTP-статус: 200
{
"result": "https://btest.bitrix24.shop/personalnyyrazdel/?SECTION=private",
"time": {
"start": 1774359422,
"finish": 1774359422.588757,
"duration": 0.5887570381164551,
"processing": 0,
"date_start": "2026-03-24T16:37:02+03:00",
"date_finish": "2026-03-24T16:37:02+03:00",
"operating_reset_at": 1774360022,
"operating": 0
}
}
Возвращаемые данные
result
string
URL специальной страницы.
Если передан additional и страница найдена, параметры будут добавлены в строку запроса.
Метод не проверяет, активна ли страница и не помечена ли она как удаленная. Возвращает null, если сайт не найден или у пользователя нет права «чтение» сайта siteId.
Пустая строка "" возвращается в двух случаях:
- если для переданного type не найдена привязка,
- если type передан не строкой и не массивом
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "MISSING_PARAMS",
"error_description": "Недостаточно параметров вызова, пропущены: type"
}
| Код | Описание | Значение |
|---|---|---|
MISSING_PARAMS |
Не передан обязательный параметр siteId, type или оба параметра |
|
ACCESS_DENIED |
Доступ к вызову метода запрещен: недостаточно прав для работы с разделом Сайты и магазины | |
ERROR_ARGUMENT |
Передан неверный тип данных в параметре siteId, type или additional |
|
SYSTEM_ERROR |
Во время выполнения метода возникла внутренняя ошибка |

