Сценарий из mcp-everything. Актуально на 2026-10-25.
Лента событий ящика: каждое событие содержит новое сообщение или дополнение к нему.
Events[]: Message — новые документы, Patch — подписи, отказы, титулы.IndexKey последнего события и передавай его в afterIndexKey при следующем вызове.curl "https://diadoc-api.kontur.ru/V8/GetNewEvents?boxId=$BOX_ID&documentDirection=Inbound&afterIndexKey=$LAST_INDEX_KEY" \
-H "Authorization: DiadocAuth ddauth_api_client_id=$CLIENT_ID, ddauth_token=$TOKEN"
curl "https://diadoc-api.kontur.ru/V4/GetEntityContent?boxId=$BOX_ID&messageId=$MESSAGE_ID&entityId=$ENTITY_ID" \
-H "Authorization: DiadocAuth ddauth_api_client_id=$CLIENT_ID, ddauth_token=$TOKEN" -o document.xml
https://diadoc-api.kontur.ruhttps://diadoc-api.testkontur.ruТип: Другое
Нужны ключ разработчика (выдаётся по заявке на 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}}
Events[]: EventId, Message, Patch, IndexKey; TotalCount.
Документация: https://developer.kontur.ru/doc/diadoc.api/method?type=get&path=%2FV8%2FGetNewEvents
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
boxId |
query | string | да | Ящик (GUID) |
afterIndexKey |
query | string | нет | Ключ последнего полученного события |
documentDirection |
query | array | нет | Inbound, Outbound и др., через запятую |
messageType |
query | array | нет | Тип сообщения, например Draft |
typeNamedId |
query | array | нет | Типы документов |
counteragentBoxId |
query | string | нет | Ящик контрагента |
timestampFromTicks |
query | string | нет | Начало периода (тики от 01.01.0001) |
timestampToTicks |
query | string | нет | Конец периода |
orderBy |
query | string | нет | Ascending (по умолчанию) или Descending |
limit |
query | integer | нет | Элементов на странице |
Возвращает файл документа, титула или подписи.
Документация: https://developer.kontur.ru/doc/diadoc.api/method?type=get&path=%2FV4%2FGetEntityContent
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
boxId |
query | string | да | Ящик (GUID) |
messageId |
query | string | да | Сообщение |
entityId |
query | string | да | Сущность в сообщении |
BoxIdGuid из GetMyOrganizations (GUID).204 или пустым телом с Retry-After.operationId защищает от повторной отправки: при успешном вызове с тем же ID все следующие вернут тот же результат.IsTest и не имеют юридической силы.Invoices, Torg12Documents, UniversalTransferDocumentSellerTitles и др.) заменены универсальными DocumentAttachments и RecipientTitles.Если этого недостаточно — официальная документация: https://developer.kontur.ru/doc/diadoc-api/ Вся интеграция одним документом: https://mcp-everything.ru/integrations/diadoc.md