documentgenerator.region.add
Добавить регион
Описание
Метод documentgenerator.region.add добавляет новый пользовательский регион.
Параметры
fields
object
обязательный
Параметры региона (подробное описание)
Параметр fields
title
string
обязательный
Название региона
languageId
string
необязательный
Идентификатор языка региона, например, ru
formatDate
string
необязательный
Формат даты
formatDatetime
string
необязательный
Формат даты и времени
formatName
string
необязательный
Шаблон полного имени, например, #LAST_NAME# #NAME# #SECOND_NAME#.
Список возможных модификаторов:
#TITLE#— обращение#NAME#— имя#LAST_NAME#— фамилия#SECOND_NAME#— отчество#NAME_SHORT#— первая буква имени с точкой#LAST_NAME_SHORT#— первая буква фамилии с точкой#SECOND_NAME_SHORT#— первая буква отчества с точкой
Пользовательская документация
phrases
object
необязательный
Набор локализованных фраз региона в формате код: текст.
Ключи объекта строковые и задаются произвольно в зависимости от шаблона. Значения ключей тоже строковые.
Чтобы понять, какие поля используются в шаблоне документа, получите их список методом documentgenerator.template.getfields. По этим полям удобно определить, для каких значений шаблона нужны свои языковые фразы.
Примеры:
TAX_INCLUDED:НДС включен в ценуTAX_NOT_INCLUDED:НДС не включен в цену
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"fields": {
"title": "Россия (Пользовательский)",
"languageId": "ru",
"formatDate": "DD.MM.YYYY",
"formatDatetime": "DD.MM.YYYY HH:MI:SS",
"formatName": "#LAST_NAME# #NAME# #SECOND_NAME#",
"phrases": {
"TAX_INCLUDED": "НДС включен в цену",
"TAX_NOT_INCLUDED": "НДС не включен в цену"
}
}
}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/documentgenerator.region.add
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"fields": {
"title": "Россия (Пользовательский)",
"languageId": "ru",
"formatDate": "DD.MM.YYYY",
"formatDatetime": "DD.MM.YYYY HH:MI:SS",
"formatName": "#LAST_NAME# #NAME# #SECOND_NAME#",
"phrases": {
"TAX_INCLUDED": "НДС включен в цену",
"TAX_NOT_INCLUDED": "НДС не включен в цену"
}
},
"auth": "**put_access_token_here**"
}' \
https://**put_your_bitrix24_address**/rest/documentgenerator.region.add
// 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 AddRegionResult = {
region: {
id: string
title: string
languageId: string
formatDate: string
formatDatetime: string
formatName: string
phrases: Record<string, string>
}
}
try {
const response = await $b24.actions.v2.call.make<AddRegionResult>({
method: 'documentgenerator.region.add',
params: {
fields: {
title: 'Russia (Custom)',
languageId: 'ru',
formatDate: 'DD.MM.YYYY',
formatDatetime: 'DD.MM.YYYY HH:MI:SS',
formatName: '#LAST_NAME# #NAME# #SECOND_NAME#',
phrases: {
TAX_INCLUDED: 'VAT included in price',
TAX_NOT_INCLUDED: 'VAT not included in price',
},
},
},
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.region.id, result.region.title)
}
} 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 addRegion() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'documentgenerator.region.add',
params: {
fields: {
title: 'Russia (Custom)',
languageId: 'ru',
formatDate: 'DD.MM.YYYY',
formatDatetime: 'DD.MM.YYYY HH:MI:SS',
formatName: '#LAST_NAME# #NAME# #SECOND_NAME#',
phrases: {
TAX_INCLUDED: 'VAT included in price',
TAX_NOT_INCLUDED: 'VAT not included in price',
},
},
},
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.region.id, result.region.title)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', addRegion)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
region_fields = {
"title": "Россия (Пользовательский)",
"languageId": "ru",
"formatDate": "DD.MM.YYYY",
"formatDatetime": "DD.MM.YYYY HH:MI:SS",
"formatName": "#LAST_NAME# #NAME# #SECOND_NAME#",
"phrases": {
"TAX_INCLUDED": "НДС включен в цену",
"TAX_NOT_INCLUDED": "НДС не включен в цену",
},
}
try:
bitrix_response = client.documentgenerator.region.add(
fields=region_fields,
).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(
'documentgenerator.region.add',
[
'fields' => [
'title' => 'Россия (Пользовательский)',
'languageId' => 'ru',
'formatDate' => 'DD.MM.YYYY',
'formatDatetime' => 'DD.MM.YYYY HH:MI:SS',
'formatName' => '#LAST_NAME# #NAME# #SECOND_NAME#',
'phrases' => [
'TAX_INCLUDED' => 'НДС включен в цену',
'TAX_NOT_INCLUDED' => 'НДС не включен в цену',
],
],
]
);
$result = $response->getResponseData()->getResult();
print_r($result);
} catch (Throwable $e) {
echo $e->getMessage();
}
BX24.callMethod(
'documentgenerator.region.add',
{
fields: {
title: 'Россия (Пользовательский)',
languageId: 'ru',
formatDate: 'DD.MM.YYYY',
formatDatetime: 'DD.MM.YYYY HH:MI:SS',
formatName: '#LAST_NAME# #NAME# #SECOND_NAME#',
phrases: {
TAX_INCLUDED: 'НДС включен в цену',
TAX_NOT_INCLUDED: 'НДС не включен в цену'
}
}
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.log(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'documentgenerator.region.add',
[
'fields' => [
'title' => 'Россия (Пользовательский)',
'languageId' => 'ru',
'formatDate' => 'DD.MM.YYYY',
'formatDatetime' => 'DD.MM.YYYY HH:MI:SS',
'formatName' => '#LAST_NAME# #NAME# #SECOND_NAME#',
'phrases' => [
'TAX_INCLUDED' => 'НДС включен в цену',
'TAX_NOT_INCLUDED' => 'НДС не включен в цену',
],
],
]
);
print_r($result);
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "documentgenerator.region.add", b24.Params{
"fields": b24.Params{
"title": "Россия (Пользовательский)",
"languageId": "ru",
"formatDate": "DD.MM.YYYY",
"formatDatetime": "DD.MM.YYYY HH:MI:SS",
"formatName": "#LAST_NAME# #NAME# #SECOND_NAME#",
"phrases": b24.Params{
"TAX_INCLUDED": "НДС включен в цену",
"TAX_NOT_INCLUDED": "НДС не включен в цену",
},
},
})
if err != nil {
return fmt.Errorf("documentgenerator.region.add: %w", err)
}
// Метод заворачивает ответ в объект с ключом "region".
raw, ok := b24.Unwrap(res.Result, "region")
if !ok {
return fmt.Errorf("в ответе нет ключа region")
}
var item struct {
ID b24.ID `json:"id"`
Title string `json:"title"`
LanguageID string `json:"languageId"`
FormatDate string `json:"formatDate"`
FormatDatetime string `json:"formatDatetime"`
FormatName string `json:"formatName"`
}
if err := json.Unmarshal(raw, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.ID, item.Title)
Ответ
HTTP-статус: 200
{
"result": {
"region": {
"id": "1",
"title": "Россия (Пользовательский)",
"languageId": "ru",
"formatDate": "DD.MM.YYYY",
"formatDatetime": "DD.MM.YYYY HH:MI:SS",
"formatName": "#LAST_NAME# #NAME# #SECOND_NAME#",
"phrases": {
"TAX_INCLUDED": "НДС включен в цену",
"TAX_NOT_INCLUDED": "НДС не включен в цену"
}
}
},
"time": {
"start": 1774431594,
"finish": 1774431594.911013,
"duration": 0.9110128879547119,
"processing": 0,
"date_start": "2026-03-25T12:39:54+03:00",
"date_finish": "2026-03-25T12:39:54+03:00",
"operating_reset_at": 1774432194,
"operating": 0.23056697845458984
}
}
Возвращаемые данные
result
object
Корневой элемент ответа (подробное описание)
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "100",
"error_description": "Could not find value for parameter {fields}"
}
| Код | Описание | Значение |
|---|---|---|
400 |
100 |
Could not find value for parameter {fields} |
400 |
BX_EMPTY_REQUIRED |
Не заполнено обязательное поле "TITLE" |
400 |
0 |
You do not have permissions to modify templates |

