Exportcenter:UploadAttachment:v2.3

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску

Общие сведения

Операция UploadAttachment предназначена для загрузки файлов в хранилище и получения уникальных идентификаторов (ссылок) на файлы для дальнейшего использования в операциях.


Передача файлов осуществляется с использованием технологий:

Технология Ссылка на спецификацию Описание
MTOM (SOAP Message Transmission Optimization Mechanism) https://www.w3.org/TR/soap12-mtom MTOM - это W3C Механизм оптимизации передачи сообщений, метод эффективной отправки двоичных данных к и от веб-сервисов. Обычно используется с XOP.
XOP (XML-binary Optimized Packaging) https://www.w3.org/TR/xop10 XOP - это W3C Механизм сериализации и десериализации набора элементов XML, содержащих двоичные данные.

Спецификация запроса

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <def:uploadAttachmentRequest>
002 ···<def:apiKey>?</def:apiKey> apl:APIKey [1..1] API Key
003 ···<def:attachment> def:ApplicationAttachment [1..1] Вложение/файл, ассоциированный с заявкой интеграционного шлюза ВетИС.API
004 ······<def:serviceId>exportcenter.service:2.3</def:serviceId> xs:Name [1..1] Идентификатор сервиса
005 ······<def:issuerId>?</def:issuerId> bs:UUID [1..1] Идентификатор заявителя, клиента интеграционного шлюза ВетИС.API
006 ······<def:data> def:AttachmentDataWrapper [1..1] Содержимое загружаемого вложения/файлов с поддержкой пакетной загрузки
007 ·········<def:includedFile> exc:ExcDocumentFile [1..*] Содержимое вложенного документа с возможностью передачи открепленной подписи
008 ············<exc:id>?</exc:id> bs:Identifier [1..1] Идентификатор файла
009 ············<exc:fileName>?</exc:fileName> bs:String255 [1..1] Название файла
010 ············<exc:mimeCode>?</exc:mimeCode> xs:token [1..1] MIME-код файла, представленного в бинарном виде
011 ············<exc:encoding>?</exc:encoding> xs:token [0..1] Кодировка файла, представленного в бинарном виде
012 ············<exc:fileSize>?</exc:fileSize> xs:nonNegativeInteger [0..1] Размер файла в байтах
013 ············<exc:fileDigest algorithmId="?">?</exc:fileDigest> exc:ExcFileDigest [1..1]

Хеш-значение для файла в соответствии с указанным алгоритмом

  • Возможные значения algorithmId:
    • GOST3411-2012.256
    • GOST3411-2012.512
    • SHA-1
    • SHA-256
014 ············<exc:binaryData xmime:contentType="?">?</exc:binaryData> exc:ExcDocumentBinaryData [1..1] Содержимое файла в формате base64
015 ············<exc:signature>?</exc:signature> exc:ExcDocumentBinaryData [0..*] Открепленная подпись файла
016 ·········</def:includedFile>
017 ······</def:data>
018 ···</def:attachment>
019 </def:uploadAttachmentRequest>

Спецификация ответа

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <def:uploadAttachmentResponse>
002 ···<def:attachment> def:ApplicationAttachment [1..1] Вложение/файл, ассоциированный с заявкой интеграционного шлюза ВетИС.API
003 ······<def:attachmentId>?</def:attachmentId> bs:UUID [1..1] Идентификатор загружаемого вложения
004 ······<def:uploadStatus>?</def:uploadStatus> def:AttachmentUploadStatus [1..1]

Результат загрузки вложения/файла

  • UPLOADED - Загружено
  • PARTIALLY_UPLOADED - Частично загружено
  • REJECTED - Отказано (не загружено)
005 ······<def:uploadDate>?</def:uploadDate> xs:dateTime [1..1] Дата и время загрузки
006 ······<def:result> def:AttachmentDataWrapper [0..1]

Результат успешной или частично успешной загрузки вложения/файлов

  • Обязательно при статусах UPLOADED и PARTIALLY_UPLOADED
007 ·········<def:includedFile> exc:ExcDocumentFile [1..*] Содержимое вложенного документа
008 ············<exc:id>?</exc:id> bs:Identifier [1..1] Идентификатор файла
009 ············<exc:fileName>?</exc:fileName> bs:String255 [1..1] Название файла
010 ············<exc:mimeCode>?</exc:mimeCode> xs:token [1..1] MIME-код файла, представленного в бинарном виде
011 ············<exc:fileSize>?</exc:fileSize> xs:nonNegativeInteger [1..1] Размер файла в байтах
012 ············<exc:referenceId>?</exc:referenceId> exc:ExcDocumentFileReference [1..1] Ссылка или идентификатор файла в хранилище
013 ·········</def:includedFile>
014 ······</def:result>
015 ······<def:errors> app:BusinessErrorList [0..1]

Ошибки при загрузке вложения/файлов

  • Обязательно при статусах PARTIALLY_UPLOADED и REJECTED
016 ·········<app:error code="?" qualifier="?">?</app:error> app:BusinessError [1..*] Код и описание ошибки
017 ······</def:errors>
018 ···</def:attachment>
019 </def:uploadAttachmentResponse>