Контур.Диадок API: Получить печатную форму PDF

Сценарий из mcp-everything. Актуально на 2026-10-25.

  1. Вызови GET /GeneratePrintForm?boxId=...&messageId=...&documentId=....
  2. Если тело пустое и есть заголовок Retry-After — повтори запрос через указанное число секунд.
  3. Готовая форма приходит PDF-файлом.
curl -i "https://diadoc-api.kontur.ru/GeneratePrintForm?boxId=$BOX_ID&messageId=$MESSAGE_ID&documentId=$DOCUMENT_ID" \
  -H "Authorization: DiadocAuth ddauth_api_client_id=$CLIENT_ID, ddauth_token=$TOKEN" -o printform.pdf

Базовые URL

Авторизация

Тип: Другое

Нужны ключ разработчика (выдаётся по заявке на https://www.diadoc.ru/integrations/api) и авторизационный токен пользователя. Оба передаются в заголовке по схеме DiadocAuth:

Токен выдаёт POST /V3/Authenticate: по логину и паролю (type=password, JSON с login и password), по сертификату (type=certificate, ответ расшифровывается закрытым ключом и подтверждается через /V3/AuthenticateConfirm) или по auth.sid (type=sid).

Authorization: DiadocAuth ddauth_api_client_id={{client_id}}, ddauth_token={{auth_token}}

Методы сценария

GET /GeneratePrintForm — Печатная форма

PDF; если форма ещё готовится — 200 с пустым телом и заголовком Retry-After.

Документация: https://developer.kontur.ru/doc/diadoc.api/method?type=get&path=%2FGeneratePrintForm

Параметр Где Тип Обяз. Описание
boxId query string да Ящик (GUID)
messageId query string да Сообщение
documentId query string да Документ в сообщении

Нюансы

Другие сценарии


Если этого недостаточно — официальная документация: https://developer.kontur.ru/doc/diadoc-api/ Вся интеграция одним документом: https://mcp-everything.ru/integrations/diadoc.md