Платформа
Контур.Диадок
Документы ЭДО, статусы, контрагенты и подготовка черновиков.
Контур.Диадок
Приложение Контур.Диадок подключает ящик электронного документооборота к рабочему столу Promto. Агент читает документы, контрагентов, статусы и события, готовит черновики и может запустить процесс подписи, который завершает владелец сертификата.
Назначение
Диадок подходит для разбора входящих документов, контроля зависших документооборотов, проверки статусов приглашений контрагентов и подготовки юридически значимых документов к подписи.
Подключение
Для подключения нужна OIDC-пара:
access_token;refresh_token.
Получите доступ к API для организации, пройдите авторизацию OIDC и вставьте оба токена в приложении. Refresh-токен обязателен: access-токен живёт ограниченное время.
BoxId обычно вводить не нужно. Promto проверяет токен через GET /GetMyOrganizations, получает список ящиков и автоматически выбирает единственный. Если ящиков несколько, выберите нужный в настройках. Ручной BoxId доступен как дополнительное поле.
Подключение настраивает владелец рабочего стола. Токены хранятся только на сервере. Для автоматического обновления access-токена на сервере должны быть настроены интеграторские PROMTO_DIADOC_CLIENT_ID и PROMTO_DIADOC_CLIENT_SECRET; интерфейс отдельно предупреждает, если обновление недоступно.
Интерфейс и данные
На главной находятся сценарии:
- Входящие документы;
- Статусы документооборотов;
- Контрагенты;
- Подготовить черновик;
- Подключить Диадок.
Настройки показывают маски access- и refresh-токенов, срок access-токена, доступные ящики, выбранный BoxId, последнюю ошибку, доступ агента и отключение. Если ящиков несколько и выбор не сделан, действия требуют передать box_id явно.
Возможности агента
Инструмент — promto_diadoc. Доступны:
list_organizations— организации и ящики;get_counteragents— контрагенты;list_documentsиget_document— документы и их метаданные;list_docflows,get_docflow_events,get_new_events— состояние документооборота и события;create_draft— создать черновик с принудительнымIsDraft=true;send_draft— отправить уже подписанный черновик;recycle_draft— удалить черновик;start_dss_sign,get_dss_sign_result— запустить подпись DSS и проверить результат;request— вызвать поддерживаемый JSON-метод Диадок API.
Для list_documents обязателен filter_category, например Any.InboundWaitingToBeSigned. Пагинация курсорная: для следующей страницы передайте IndexKey последнего документа как after_index_key. За страницу возвращается не более 100 элементов.
Сценарии
Входящие, ожидающие подписи
Через promto_diadoc вызови list_documents с filter_category=Any.InboundWaitingToBeSigned. Покажи номера, даты, контрагентов и длительность ожидания. Ничего не подписывай и не отправляй.
Черновик документа
Через promto_diadoc помоги подготовить create_draft. Сначала уточни ящик, контрагента, тип и содержание, затем покажи точное тело черновика и дождись моего подтверждения. После создания остановись на шаге подписи человеком.
Ограничения и подтверждения
create_draft,send_draft,recycle_draftиstart_dss_signизменяют живой ящик и требуютconfirm=trueпосле явного согласия.send_draftне создаёт подпись и сработает только для уже подписанного черновика.- DSS требует действия владельца сертификата на телефоне. Одновременно у пользователя может быть только одно неподтверждённое действие; запускайте подписи последовательно.
- Сырые файлы, печатные формы и ZIP не передаются через JSON-прокси.
get_document_contentобъяснит ограничение; оригинал открывайте в веб-интерфейсе Диадока. - Promto делает не более четырёх параллельных запросов, а ответ ограничен 512 КБ.
Если что-то не работает
- Access-токен истёк. Сервер обновит его по refresh-токену. Если интеграторские ключи не настроены или refresh-токен отозван, переподключите Диадок и обратитесь к администратору Promto.
- 402. У выбранного ящика закончилась подписка на API Диадока.
- 403. Токен не имеет доступа к выбранному BoxId.
- Не выбран ящик. Выберите его в настройках или передайте
box_idв действие. - Пустая следующая страница. Проверьте, что
after_index_keyвзят у последнего элемента предыдущего ответа; offset здесь не используется. - DSS не завершается. Посмотрите статус:
InProgressждёт человека,UserHasUnconfirmedOperationтребует завершить предыдущее подтверждение,OperationRetryRequired— повторить позднее.