метод REST scope: crm

crm.documentgenerator.document.add

Создать новый документ

Кто может выполнять: пользователь с правом "изменения" документов генератора документов

Описание

Метод crm.documentgenerator.document.add создает документ по шаблону для CRM-объекта.

Параметры

templateId integer необязательный

Идентификатор шаблона документа

entityTypeId integer необязательный

Идентификатор типа CRM-объекта, для которого создается документ.

Типичные значения:
- 1 — лид
- 2 — сделка
- 3 — контакт
- 4 — компания
- 5 — счет (старая версия)
- 7 — коммерческое предложение
- 31 — счет

Для смарт-процессов передается их entityTypeId, например 177

entityId integer необязательный

Идентификатор CRM-объекта, по данным которого создается документ

values object необязательный

Объект со значениями полей документа.

Формат:

{
    "field_1": "value_1",
    "field_2": "value_2"
}

где:
- field_n — код поля документа
- value_n — значение поля

Набор ключей зависит от конкретного шаблона и провайдера данных. Посмотреть доступные поля можно методом crm.documentgenerator.document.getfields

stampsEnabled integer необязательный

Подставлять печать и подпись:
- 1 — подставлять
- 0 — не подставлять

По умолчанию 0

fields object необязательный

Дополнительные описания полей документа для генерации.

Параметр fields используется для более точечной настройки полей. В большинстве сценариев достаточно параметра values.

В fields передается объект-описание поля (descriptor). Пример:

{
    "DocumentTitle": {
        "title": "Название документа",
        "value": "Демонстрационная реализация товара 1",
        "required": "Y",
        "default": "Демонстрационная реализация товара 1",
        "chain": [
            {},
            "getTitle"
        ],
        "VALUE": "Тест через fields"
    }
}

Список ключей fields не фиксированный и зависит от шаблона.

Как получить доступные параметры:
- до создания документа — crm.documentgenerator.template.getfields, поле templateFields
- для созданного документа — crm.documentgenerator.document.getfields, поле documentFields

Служебные поля SOURCE и DOCUMENT игнорируются.

Некоторые вычисляемые поля могут не переопределяться через fields

Примеры запроса

curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"templateId":39,"entityTypeId":2,"entityId":101,"values":{"DocumentNumber":"2026-001"},"fields":{"DocumentTitle":{"title":"Название документа","value":"Демонстрационная реализация товара 1","required":"Y","default":"Демонстрационная реализация товара 1","chain":[{},"getTitle"],"VALUE":"Тест через fields"}},"stampsEnabled":1}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.documentgenerator.document.add

Ответ

HTTP-статус: 200

{
    "result": {
        "document": {
            "changeStampsEnabled": false,
            "changeStampsDisabledReason": "В шаблоне нет печатей и подписей",
            "changeQrCodeEnabled": false,
            "qrCodeEnabled": false,
            "changeQrCodeDisabledReason": "В шаблоне нет QR-кода",
            "products": {
                "currencyId": "UAH",
                "totalSum": "0.00",
                "totalRows": 0
            },
            "downloadUrl": "https://bitrix.bitrix24.ru/bitrix/services/main/ajax.php?action=crm.documentgenerator.document.download&SITE_ID=s1&id=61",
            "downloadUrlMachine": "https://bitrix.bitrix24.ru/rest/crm.documentgenerator.document.download.json?...",
            "publicUrl": null,
            "id": 61,
            "title": "Демонстрационная реализация товара 2026-001",
            "number": "2026-001",
            "createTime": "2026-03-20T13:51:45+03:00",
            "createdBy": 577,
            "updateTime": "2026-03-20T13:51:45+03:00",
            "updatedBy": null,
            "stampsEnabled": true,
            "isTransformationError": false,
            "values": {
                "productsTableVariant": "",
                "_creationMethod": "rest",
                "stampsEnabled": true,
                "DocumentNumber": "2026-001"
            },
            "templateId": "39",
            "pullTag": "TRANSFORMDOCUMENT61",
            "imageUrl": "https://bitrix.bitrix24.ru/bitrix/services/main/ajax.php?action=crm.documentgenerator.document.getImage&SITE_ID=s1&id=61",
            "pdfUrl": "https://bitrix.bitrix24.ru/bitrix/services/main/ajax.php?action=crm.documentgenerator.document.getPdf&SITE_ID=s1&id=61",
            "emailDiskFile": 5605,
            "entityId": "101",
            "entityTypeId": "2"
        }
    },
    "time": {
        "start": 1774003904,
        "finish": 1774003905.448804,
        "duration": 1.4488039016723633,
        "processing": 1,
        "date_start": "2026-03-20T13:51:44+03:00",
        "date_finish": "2026-03-20T13:51:45+03:00",
        "operating_reset_at": 1774004504,
        "operating": 0.9240179061889648
    }
}

Возвращаемые данные

result object

Корневой элемент ответа. Возвращает объект result

time time

Информация о времени выполнения запроса

Обработка ошибок

HTTP-статус: 400

{
    "error": "0",
    "error_description": "No provider for entityTypeId"
}
Код Описание Значение
0 No provider for entityTypeId Не найден провайдер данных для переданного entityTypeId
0 Empty required parameter "value" Не передан или передан пустой entityId
0 Cannot create document on deleted template Нельзя создать документ по удаленному шаблону
0 Cannot create document Ошибка при создании документа по шаблону
DOCGEN_ACCESS_ERROR Access denied Нет доступа к созданию документа
DOCGEN_LIMIT_ERROR Maximum count of documents has been reached Превышен лимит количества документов в тарифе
0 Error getting next number Не удалось получить следующий номер документа из нумератора
100 Bitrix\\DocumentGenerator\\Template constructor must be is public Низкоуровневая ошибка при вызове без корректного templateId
0 Module documentgenerator is not installed Модуль documentgenerator недоступен
0 Шаблон не найден Шаблон с указанным templateId не найден или недоступен

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.