Загрузка файла в папку Т1 Диск (через API)

С помощью API можно загружать файлы в определённую папку Т1 Диск. Для этого:

  1. Получите токен с помощью POST-запроса:
curl 'https://api.disk.t1.cloud/api/1/accounts/login/'
-d '{
	"login": "<логин для входа в Т1 Диск>",
	"password": "<пароль для входа в Т1 Диск>",
	"permanent_auth": true
 }'

где:

  • login — логин для входа в Т1 Диск. Например, email:<email пользователя>;
  • password — пароль для входа в Т1 Диск;
  • permanent_auth — укажите true, чтобы при загрузке следующего файла не запрашивать токен заново.

В результате должен прийти код ответа 200. В ответе передаётся параметр token, необходимый на следующих шагах.

2. Получите ссылку на загрузку файла в Объектное хранилище S3 с помощью POST-запроса:

curl 'https://api.disk.t1.cloud/api/1/files/create/'
-H 'Mountbit-Auth: <токен>'
-d '{
	"path": "<путь до файла>"	
 }'

где:

  • Mountbit-Auth — токен, полученный на шаге 1;
  • path — путь до файла в Т1 Диск. Например, T1 Диск/Презентации/Презентация компании.pptx.
    Если размер файла более 2 ГБ, укажите параметр multipart со значением true. Файл будет загружаться частями по 2 ГБ.
-d '{
	"multipart": true
}'

В результате должен прийти код ответа 200. В ответе передаётся параметр url, содержащий ссылку на загрузку файла в Объектное хранилище S3.

3. Загрузите файл в Объектное хранилище S3 с помощью PUT-запроса:

curl '<ссылка из параметра url, полученная на шаге 2>'
-H 'Mountbit-Auth: <токен>'
-H 'content-type: <значение параметра Content-Type, полученное на шаге 2>'
-d '@<путь до файла на локальном диске>'

где:

  • Mountbit-Auth  токен, полученный на шаге 1;
  • content-type значение параметра Content-Type, полученное на шаге 2;
  • <путь до файла на локальном диске> путь до файла, который нужно загрузить в Объектное хранилище S3. Например, /C:/Users/iivanov/Downloads/Презентация компании.pptx.

В результате должен прийти код ответа 200.

4. Подтвердите, что файл успешно загружен, с помощью POST-запроса:

curl '<ссылка из параметра confirm_url, полученная на шаге 2>'
-H 'Mountbit-Auth: <токен>'

где Mountbit-Auth  токен, полученный на шаге 1.

В результате должен прийти код ответа 200.

Пример в Postman

Рассмотрим пример загрузки файла в папку Т1 Диск с помощью API-запросов в Postman.

  1. Получите токен:
    1. Выполните POST-запрос со ссылкой https://api.disk.t1.cloud/api/1/accounts/login/.
    2. На вкладке Params укажите параметры:

      • login — логин для входа в Т1 Диск. Например, email:<email пользователя>;

      • password — пароль для входа в Т1 Диск;
      • permanent_auth — укажите true, чтобы сохранить логин и пароль. В результате они не будут требоваться при каждом входе в Т1 Диск.
        В результате получите токен:
  2. Получите ссылку на загрузку файла в Объектное хранилище S3:
    1. Выполните POST-запрос со ссылкой https://api.disk.t1.cloud/api/1/files/create/.
    2. На вкладке Params в параметре path укажите путь до файла в Т1 Диск:
      Если размер файла более 2 ГБ, укажите параметр multipart со значением true. В результате файл будет загружаться частями по 2 ГБ.
    3. На вкладке Headers укажите заголовок Mountbit-Auth токен, полученный на шаге 1:

      В результате получите ссылку на загрузку файла в Объектное хранилище S3:
  3. Загрузите файл в Объектное хранилище S3:
    1. Выполните PUT-запрос со ссылкой из параметра url, полученной на шаге 2.
    2. На вкладке Headers укажите заголовки:
      • content-type — значение, полученное в параметре Content-Type на шаге 2;
      • Mountbit-Auth токен, полученный на шаге 1.

    3. На вкладке Body выберите формат binary и загрузите файл:

      В результате должен прийти код ответа 200.
  4. Подтвердите, что файл успешно загружен:
    1. Выполните POST-запрос со ссылкой из параметра confirm_url, полученной на шаге 2.
    2. На вкладке Headers укажите заголовок Mountbit-Auth токен, полученный на шаге 1.

      В результате должен прийти код ответа 200.

В этой статье

Мы ответили на ваш вопрос?