Доступ к API

Для успешного вызова API необходимы:

  • Корректные заголовки Accept и Content-Type: API Диска поддерживает только один MIME-тип, application/json. Любое другое значение приведет к ошибке формата данных.

  • URL, составленный согласно требованиям к нужному запросу.

  • OAuth-токен, выданный вашему приложению для доступа к Диску с определенными разрешениями. Для запросов, которые не требуют авторизации, это указано явно.

Общие правила для составления URL

Правила, общие для всех ресурсов:

  • Хост для всех запросов к API — disk-api.yandex.net. При загрузке и скачивании файла необходимо отдельно обращаться к сервису загрузки файлов и хранилищу Диска.

  • В каждом запросе необходимо указывать версию API, например, версия 1 обозначается так: disk-api.yandex.net/v1/.

  • Корневой каталог Диска может быть указан как явно, так и неявно – пути disk:/foo и /foo указывают на одну и ту же папку.

Получение OAuth-токенов

Яндекс Диск авторизует приложения с помощью OAuth-токенов. Токен предоставляет определенному приложению доступ к данным с определенными разрешениями.

Чтобы использовать протокол OAuth при работе с Яндекс Диском:

  1. Обратитесь к администратору вашего решения on-premises. Попросите его выдать вам идентификатор приложения (client ID). Он может скопировать его из значения APIGW360_CLIENT_ID, полученного на этапе пост-инициализации. Как администратор может получить client ID

  2. Получите OAuth-токен:

    1. Перейдите по ссылке
    https://oauth.yandex.ru/authorize?response_type=token&client_id=<ClientID>
    

    Вместо <ClientID> подставьте значение идентификатора приложения.

    1. Если токен вашему приложению выдается впервые или срок жизни предыдущего токена истек, откроется экран авторизации. Войдите в сервис.

    2. Скопируйте значение токена из адресной строки браузера и сохраните его.

      OAuth-токен

      Вы не сможете найти полученный токен в личном кабинете

      Сервис Яндекс OAuth не хранит выдаваемые токены в публичном доступе. Если вы не сохранили токен, вы можете получить его еще раз.

    Полученный токен следует передавать в заголовке Authorization при каждом вызове API Диска, указывая тип токена перед его значением. Пример такого заголовка:

    Authorization: OAuth 0c4181a7c2cf4521964a72ff57a34a07