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.

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

  • 200 (OK) - операция успешно завершена;
  • 400 (Bad Request) - данные в запросе имеют неверный формат или отсутствуют обязательные параметры;
  • 401 (Unauthorized) - в запросе отсутствует HTTP-заголовок Authorization, или в этом заголовке содержатся некорректные авторизационные данные;
  • 403 (Forbidden) - доступ к ящику с предоставленным авторизационным токеном запрещен;
  • 404 (Not Found) - в указанном ящике нет сообщений с данным идентификатором;
  • 405 (Method not allowed) - используется неподходящий HTTP-метод;
  • 500 (Internal server error) - при обработке запроса возникла непредвиденная ошибка.