метод REST
scope: documentgenerator
documentgenerator.template.getfields
Получить список полей шаблона
Описание
Метод documentgenerator.template.getfields возвращает карточку полей шаблона.
Параметры
id
integer
обязательный
Идентификатор шаблона.
Получить идентификатор шаблона можно после создания шаблона или методом получения списка шаблонов
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":57}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/documentgenerator.template.getfields
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":57,"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/documentgenerator.template.getfields
// 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
type TemplateField = {
title?: string
value: unknown
default: unknown
required?: string
type?: string
group?: string[]
chain?: string | unknown[]
}
// Shape of the payload returned in result (match the "response handling" section of the page)
type TemplateGetFieldsResult = {
templateFields: Record<string, TemplateField>
}
try {
const response = await $b24.actions.v2.call.make<TemplateGetFieldsResult>({
method: 'documentgenerator.template.getfields',
params: {
id: 57,
},
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(Object.keys(result.templateFields))
}
} 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 getTemplateFields() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'documentgenerator.template.getfields',
params: {
id: 57,
},
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(Object.keys(result.templateFields))
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', getTemplateFields)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.documentgenerator.template.getfields(
bitrix_id=57,
).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.template.getfields',
[
'id' => 57,
]
);
$result = $response->getResponseData()->getResult();
print_r($result);
} catch (Throwable $e) {
echo $e->getMessage();
}
BX24.callMethod(
'documentgenerator.template.getfields',
{
id: 57
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.log(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'documentgenerator.template.getfields',
[
'id' => 57,
]
);
print_r($result);
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "documentgenerator.template.getfields", b24.Params{
"id": 57,
}, b24.WithIdempotent())
if err != nil {
return fmt.Errorf("documentgenerator.template.getfields: %w", err)
}
// Метод заворачивает ответ в объект с ключом "templateFields".
raw, ok := b24.Unwrap(res.Result, "templateFields")
if !ok {
return fmt.Errorf("в ответе нет ключа templateFields")
}
fmt.Printf("%s\n", raw)
Ответ
HTTP-статус: 200
{
"result": {
"templateFields": {
"DocumentNumber": {
"title": "Номер",
"value": "9",
"required": "Y",
"group": [
"Документ"
],
"chain": "this.DOCUMENT.DOCUMENT_NUMBER",
"default": "9"
},
"CurrentDate": {
"value": "",
"default": ""
},
"ClientName": {
"value": "",
"default": ""
},
"ClientPhone": {
"value": "",
"default": ""
},
"Total": {
"value": "",
"default": ""
},
"Comment": {
"value": "",
"default": ""
},
"UserName": {
"value": "",
"default": ""
},
"DocumentTitle": {
"title": "Название документа",
"value": "SUPPLY_CONTRACT_NEW Template 1773843147554 9",
"group": [
"Документ"
],
"chain": [
{},
"getTitle"
],
"required": "Y",
"default": "SUPPLY_CONTRACT_NEW Template 1773843147554 9"
}
}
},
"time": {
"start": 1774332782,
"finish": 1774332783.055467,
"duration": 1.055466890335083,
"processing": 1,
"date_start": "2026-03-24T09:13:02+03:00",
"date_finish": "2026-03-24T09:13:03+03:00",
"operating_reset_at": 1774333382,
"operating": 0
}
}
Возвращаемые данные
result
object
Корневой элемент ответа (подробное описание)
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "0",
"error_description": "Cannot get fields from deleted template"
}
| Код | Описание | Значение |
|---|---|---|
400 |
100 |
Bitrix\DocumentGenerator\Template constructor must be is public |
400 |
0 |
Шаблон не найден |
400 |
0 |
Cannot get fields from deleted template |
400 |
0 |
You do not have permissions to modify templates |

