Клуб API Диска

Не создается папка

16 апреля 2016, 20:55

В полигоне работает, а через ssh ошибка. Токен использую один и тот-же.

Команда:
curl -H "Authorization: OAuth %token%" "https://cloud-api.yandex.net:443/v1/disk/resources?path=%2Ffolder1%2Ffolder2%2F"

Ответ:
{"message":"Не удалось найти запрошенный ресурс.","description":"Resource not found.","error":"DiskNotFoundError"}

Хотя с получением ссылки на скачивание файла все работает.

p.s. Еще хотел уточнить права:
- Доступ к папке приложения на Диске
- Доступ к информации о Диске
- Чтение всего Диска
- Запись в любом месте на Диске

2 комментария
Подписаться на комментарии к посту
Для создания папки нужно использовать метод PUT (в полигоне он выбирается автоматически), а в curl метод по-умолчанию - это GET. Так как папки не существует, то он и возвращает ошибку 404.


Такой запрос создает папку:
curl -H "Authorization: OAuth <token>" "https://cloud-api.yandex.net:443/v1/disk/resources?path=/folder1" -X PUT


Пример ответа:
{"href":"https://cloud-api.yandex.net/v1/disk/resources?path=disk%3A%2Ffolder1","method":"GET","templated":false}



При этом для того, чтобы создать папку "/folder1/folder2", необходимо, чтобы папка "/folder1" уже была создана.


Вот ссылка на документацию по созданию папки: https://tech.yandex.ru/disk/api/reference/create-folder-docpage/https://tech.yandex.ru/disk/api/reference/create-folder-docpage/
Насчет прав не очень понял вопрос. Если имеется ввиду, где их можно поменять, то это настройки приложения.