Метод «Создать задачи на перемещение файлов»¶
Endpoint: POST {hostname}/dh-files-service/api/v1/transfers/mass
Метод позволяет создать задачи на перемещение файлов (контента файлов) на одно целевое хранилище или используя одну политику размещения для определения целевого хранилища.
Более подробное описание метода находится в yaml файле «files_service», который расположен в папке с документацией.
Маппинг параметров запроса
| Входящие параметры | Способ передачи параметров | Требования к заполнению |
|---|---|---|
| targetStorageId | Body | Идентификатор целевого хранилища (id), куда будет перемещен файл (контент файла), полученный методом GET {hostname}/dh-files-service/api/storages. Обязателен, если targetPolicyId IS NULL |
| isUseTargetPolicy | Body | Признак, указывающий на использование политики размещения для преобразований файла (сжатие, шифрование) при перемещении. По умолчанию: true |
| targetPolicyId | Body | Идентификатор (код) политики размещения (id), полученный методом GET {hostname}/dh-files-service/api/policies, по которой будет определено хранилище, куда будет перемещен файл (контент файла). Обязателен, если targetStorageId IS NULL |
| targetTierLevel | Body | Уровень тиринга хранилища (0: Hot, 2: Cold), в которое нужно переместить файл в рамках политики. Используется, только если targetPolicyId is not null, иначе игнорируется. Если в политике нет хранилищ с указанным тирингом, то выбирается тиринг по умолчанию. Если политика не предусматривает тиринг, то данный параметр игнорируется |
| fileIds | Body | Массив идентификаторов перемещаемых файлов (id1, id2…), полученных методом GET {hostname}/dh-files-service/api/v1/files |
Пример запроса:
curl --location 'https://docshouse-test.k8s.lan.lanit.ru/dh-gateway-api-service/dh-files-service/api/v1/transfers/mass' \
-header 'accept: */*' \
-header 'Content-Type: application/json' \
-data '{
"targetStorageId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"targetPolicyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"isUseTargetPolicy": true,
"targetTierLevel": 0,
"files": [
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"c80755ab-79a6-49dc-9e09-1d3159d4e5b2"
]
}'