landing.site.addFolder
Добавить папку в сайт
Описание
Метод landing.site.addFolder создает папку в указанном сайте и возвращает идентификатор созданной папки.
Параметры
scope
string
необязательный
Внутренний скоуп лендингов. Он не связан с REST-скоупом landing в названии метода.
Значение scope должно соответствовать типу сайта (подробное описание)
siteId
integer
обязательный
Идентификатор сайта, в котором нужно создать папку.
Идентификатор сайта можно получить с помощью метода landing.site.getList или из результата метода landing.site.add
fields
object
обязательный
Набор полей создаваемой папки (подробное описание)
Параметр fields
TITLE
string
обязательный
Название папки, максимальная длина 255 символов
CODE
string
необязательный
Символьный код папки для URL, максимальная длина 255 символов. Если не передан или пустой, код создается из TITLE транслитерацией.
Если после транслитерации код пустой, создается случайная строка длиной 12 символов
PARENT_ID
integer
необязательный
Идентификатор родительской папки. Если значение 0, null или пустое, папка создается в корне сайта
ACTIVE
string
необязательный
Флаг активности папки Y/N, по умолчанию N
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"siteId": 1817,
"fields": {
"TITLE": "Новая папка",
"CODE": "new-folder",
"ACTIVE": "Y",
"PARENT_ID": 736
}
}' \
"https://**put.your-domain-here**/rest/**user_id**/**webhook_code**/landing.site.addFolder.json"
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"siteId": 1817,
"fields": {
"TITLE": "Новая папка",
"CODE": "new-folder",
"ACTIVE": "Y",
"PARENT_ID": 736
},
"auth": "**put_access_token_here**"
}' \
"https://**put.your-domain-here**/rest/landing.site.addFolder.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<number>({
method: 'landing.site.addFolder',
params: {
siteId: 1817,
fields: {
TITLE: 'New folder',
CODE: 'new-folder',
ACTIVE: 'Y',
PARENT_ID: 736,
},
},
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('Created folder ID:', 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 addFolder() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'landing.site.addFolder',
params: {
siteId: 1817,
fields: {
TITLE: 'New folder',
CODE: 'new-folder',
ACTIVE: 'Y',
PARENT_ID: 736,
},
},
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('Created folder ID:', result)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', addFolder)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.landing.site.add_folder(
site_id=1817,
fields={
"TITLE": "New folder",
"CODE": "new-folder",
"ACTIVE": "Y",
"PARENT_ID": 736,
},
).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.addFolder',
[
'siteId' => 1817,
'fields' => [
'TITLE' => 'Новая папка',
'CODE' => 'new-folder',
'ACTIVE' => 'Y',
'PARENT_ID' => 736,
],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error adding folder: ' . $e->getMessage();
}
BX24.callMethod(
'landing.site.addFolder',
{
siteId: 1817,
fields: {
TITLE: 'Новая папка',
CODE: 'new-folder',
ACTIVE: 'Y',
PARENT_ID: 736
}
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.info(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'landing.site.addFolder',
[
'siteId' => 1817,
'fields' => [
'TITLE' => 'Новая папка',
'CODE' => 'new-folder',
'ACTIVE' => 'Y',
'PARENT_ID' => 736,
],
]
);
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.addFolder", b24.Params{
"siteId": 1817,
"fields": b24.Params{
"TITLE": "Новая папка",
"CODE": "new-folder",
"ACTIVE": "Y",
"PARENT_ID": 736,
},
})
if err != nil {
return fmt.Errorf("landing.site.addFolder: %w", err)
}
var value b24.ID
if err := json.Unmarshal(res.Result, &value); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("результат:", value)
Ответ
HTTP-статус: 200
{
"result": 89,
"time": {
"start": 1773169396,
"finish": 1773169396.875899,
"duration": 0.875899076461792,
"processing": 0,
"date_start": "2026-03-10T22:03:16+03:00",
"date_finish": "2026-03-10T22:03:16+03:00",
"operating_reset_at": 1773169996,
"operating": 0
}
}
Возвращаемые данные
result
integer
Идентификатор созданной папки
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "ACCESS_DENIED",
"error_description": "Сайт не найден или доступ к нему запрещен."
}
| Код | Описание | Значение |
|---|---|---|
ACCESS_DENIED |
Сайт не найден или доступ к нему запрещен | |
BX_EMPTY_REQUIRED |
Не заполнено обязательное поле, например TITLE или CODE |
|
FOLDER_IS_NOT_UNIQUE |
С таким именем уже определена папка. Ошибка возникает при конфликте CODE в пределах сайта и родительской папки |
|
SLASH_IS_NOT_ALLOWED |
В fields.CODE передан символ / |

