Загрузка документов в М2
Работа с файлами через API основана на загрузке в хранилище платформы вашего файла и затем использование полученного идентификатора в различных частях и методах API.
Заметка
Такой способ дает гарантию, что если вы получили идентификатор, то файл загружен в систему, и позволяет избежать дублирования загрузки при использовании одинаковых файлов в различных сделках и частях сделок.
API включает 2 метода для работы с файлами
Загрузка файла
Пример запроса
POST https://m2.ru/api/public/deal-api/v1/files HTTP/1.1
Authorization: Bearer
Content-type: multipart/form-data
file=@form-data
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json
{
"fileId": "62a9ab44ff35605064674068",
"originalFileName": "имя.pdf"
}
Справка
Для загрузки файлов есть несколько ограничений:
- Общий размер файла не должен превышать
100 МБ
- Загрузить можно файлы имеющие только следующие расширения:
- html
- zip
- xml
- sig
Важно
Подписать документ в формате zip с помощью УКЭП Госключ невозможно.
Получение файла
Пример запроса
GET https://m2.ru/api/public/deal-api/v1/files/{id} HTTP/1.1
Authorization: Bearer
В результате получается редирект (304) на загрузку файла с ограниченной по времени жизни публичной ссылке
Пример ответа
HTTP/1.1 304 Not Modified
Location: "https://m2.ru/api/document-storage/download/62a9ab44ff35605064674068?token=eyJhbGciOiJIUzI1NiJ9.eyJmaWxlX2lkIjoiNjJlM2NkOWMxYTZjOGE0NmFhNWEyN2FiIiwiZXhwaXJ5IjoxNjU5NDMwODU4Mjc5fQ.1oH-XAOzq9muTZsJAurQIps4fGJOP5UOVHATzG0bqGo"