Скачивание файла с Диска

Чтобы скачать файл с Диска, необходимо:

  1. Запросить URL для скачивания.
  2. Скачать файл по полученному адресу, указав тот же OAuth-токен, что и в исходном запросе.

Запрос URL для скачивания

Чтобы получить URL для непосредственной загрузки файла, необходимо передать API путь на Диске, по которому загруженный файл должен быть доступен.

Формат запроса

Запрос URL для скачивания следует отправлять с помощью метода GET.

https://cloud-api.yandex.net/v1/disk/resources/download
 ? path=<путь к скачиваемому файлу>
 & [fields=<свойства, которые нужно включить в ответ>]
path*

Путь к скачиваемому файлу. Например, %2Fbar%2Fphoto.png.

Путь в значении параметра следует кодировать в URL-формате.

fields

Список свойств JSON, которые следует включить в ответ. Ключи, не указанные в этом списке, будут отброшены при составлении ответа. Если параметр не указан, ответ возвращается полностью, без сокращений.

Имена ключей следует указывать через запятую, а вложенные ключи разделять точками. Например: name,_embedded.items.path.

* Обязательный параметр.

Формат ответа

Если запрос был обработан без ошибок, API отвечает кодом 200 OK. В теле ответа в объекте Link возвращается сгенерированный URL для скачивания файла. Время жизни ссылки на скачивание ограничено.

Если запрос вызвал ошибку, возвращается подходящий код ответа, а тело ответа содержит описание ошибки.

Пример ответа:

{
  "href": "https://downloader.dst.yandex.ru/disk/...",
  "method": "GET",
  "templated": false
}

Элемент

Описание

href

URL. Может быть шаблонизирован, см. ключ templated.

method

HTTP-метод для запроса URL из ключа href.

templated

Признак URL, который был шаблонизирован согласно RFC 6570. Возможные значения:

  • «true» — URL шаблонизирован: прежде чем отправлять запрос на этот адрес, следует указать нужные значения параметров вместо значений в фигурных скобках.
  • «false» — URL может быть запрошен без изменений.

Скачивание файла по полученному URL

Скачивать файл следует с помощью метода GET:

https://downloader.dst.yandex.ru/disk/53139aa0et584d3bac7eeab405d3574b/535320b4/YyjTJtEHob8R5WbpojJbiiUuU2HC_2JSTU0gW9qE0NHGW2uncmBjM_-IXun3Msyij96FTHQGSX-fDL-XwokDvA%3D%3D?uid=202727674&filename=photo.png&disposition=attachment&hash=&limit=0&content_type=application%2Fx-www-form-urlencoded&fsize=34524&hid=93528043563b8r55723a253f4730290a&media_type=document

Если запрос был обработан без ошибок, API отвечает файлом с кодом 200 OK.