GetMessage

Предупреждение

Версия метода устарела. Для получения документов используйте метод GetMessage.

Имя ресурса: /V4/GetMessage

HTTP метод: GET

Параметры строки запроса:

  • boxId: идентификатор ящика;

  • messageId: идентификатор сообщения;

  • entityId: идентификатор документа из сообщения (может отсутствовать, если указан, то возвращаются не все сущности, а только связанные с данным документом);

  • originalSignature: параметр, указывающий тип возвращаемой подписи (если присутствует, то возвращается оригинальная подпись. Если параметр не передан, то возвращается подпись в формате CADES-T, в этом случае, в качестве родительской сущности будет указана оригинальная подпись).

  • injectEntityContent: параметр, указывающий следует ли возвращать содержимое сущностей. Если передано значение true то содержимое сущностей будет добавлено к ответу. Будьте осторожны, если вам не требуется содержимое сущностей, следует передавать false, так как это существенно влияет на производительность (приблизительно в 2-3 раза). Если параметр не передан, будет установлено значение по умолчанию false.

Примечание

Значения параметра injectEntityContent для версии метода V3 по умолчанию true, что позволяет сохранить прежнее поведение без изменений.

В запросе должен присутствовать HTTP-заголовок Authorization с необходимыми данными для авторизации. Для использования этого метода текущий пользователь должен иметь доступ ко всем документам сообщения, в противном случае возвращается код ошибки 403 (Forbidden). Если в запросе был указан параметр entityId, то требуется доступ только к заданному документу.

В теле ответа содержится сообщение (цепочка документооборота) с идентификатором messageId из ящика boxId, сериализованное в протобуфер Message. Выдаваемая структура Message включает в себя сущности из всех дополнений, составляющих цепочку документооборота messageId.

Вся информация, относящаяся к данной цепочке (в частности, документы и подписи), по возможности помещается в протобуфер. Суммарный размер бинарных представлений (структура Content, поле Data) не может превышать 1 048 576 байт. Если добавление очередного бинарного представления вызовет превышение этого ограничения, то это бинарное представление не будет добавлено в протобуфер.

В тех ситуациях, когда для каких-то документов цепочки документооборота бинарное представление не было получено, его всегда можно запросить при помощи метода GetEntityContent.

Если в запросе передать идентификатор шаблона, то метод вернет ошибку 409 (Conflict). Чтобы получить шаблоны, используйте новую версию метода GetMessage.

Возможные HTTP-коды возврата:

  • 200 (OK) — операция успешно завершена;

  • 400 (Bad Request) — данные в запросе имеют неверный формат или отсутствуют обязательные параметры;

  • 401 (Unauthorized) — в запросе отсутствует HTTP-заголовок Authorization, или в этом заголовке содержатся некорректные авторизационные данные;

  • 402 (Payment Required) — у организации с указанным идентификатором boxId закончилась подписка на API.

  • 403 (Forbidden) — доступ к ящику с предоставленным авторизационным токеном запрещен;

  • 404 (Not Found) — в указанном ящике нет сообщений с данным идентификатором;

  • 405 (Method not allowed) — используется неподходящий HTTP-метод;

  • 409 (Conflict) — сообщение с идентификатором messageId является шаблоном.

  • 500 (Internal server error) — при обработке запроса возникла непредвиденная ошибка.