PHPackages                             tigusigalpa/yandex-disk-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. tigusigalpa/yandex-disk-php

ActiveLibrary[API Development](/categories/api)

tigusigalpa/yandex-disk-php
===========================

PHP SDK for Yandex Disk API integration

v1.0.0(5mo ago)19151MITPHPPHP ^8.1

Since Nov 22Pushed 5mo agoCompare

[ Source](https://github.com/tigusigalpa/yandex-disk-php)[ Packagist](https://packagist.org/packages/tigusigalpa/yandex-disk-php)[ Docs](https://github.com/tigusigalpa/yandex-disk-php)[ RSS](/packages/tigusigalpa-yandex-disk-php/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (2)Versions (2)Used By (0)

Yandex Disk PHP SDK
===================

[](#yandex-disk-php-sdk)

 [![Yandex Disk PHP SDK](https://private-user-images.githubusercontent.com/2721390/517743811-e68c499e-7bc7-4dd1-bb91-319ffa138ab4.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzU0MjcwMTksIm5iZiI6MTc3NTQyNjcxOSwicGF0aCI6Ii8yNzIxMzkwLzUxNzc0MzgxMS1lNjhjNDk5ZS03YmM3LTRkZDEtYmI5MS0zMTlmZmExMzhhYjQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDQwNSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA0MDVUMjIwNTE5WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YjdkODdmMTNjYjI0YmZlMjQ3NmZjYjZkZTljZjVlMjgxMTk4MjM2Nzg3ZTViNDgxMjg4Y2U2YzBmNGNkODNiYiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.WOnTXEdDGUlMbBJHGD5fyi6Sa2rsX2gIKSBLeceRPVo)](https://private-user-images.githubusercontent.com/2721390/517743811-e68c499e-7bc7-4dd1-bb91-319ffa138ab4.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzU0MjcwMTksIm5iZiI6MTc3NTQyNjcxOSwicGF0aCI6Ii8yNzIxMzkwLzUxNzc0MzgxMS1lNjhjNDk5ZS03YmM3LTRkZDEtYmI5MS0zMTlmZmExMzhhYjQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDQwNSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA0MDVUMjIwNTE5WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YjdkODdmMTNjYjI0YmZlMjQ3NmZjYjZkZTljZjVlMjgxMTk4MjM2Nzg3ZTViNDgxMjg4Y2U2YzBmNGNkODNiYiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.WOnTXEdDGUlMbBJHGD5fyi6Sa2rsX2gIKSBLeceRPVo)

[![PHP Version](https://camo.githubusercontent.com/45d36955804bf3f4f17097b05a7f41a28e578dc24e0d3ad0d21ae9d9762f44c6/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d382e312b2d626c75652e737667)](https://php.net)[![License](https://camo.githubusercontent.com/784362b26e4b3546254f1893e778ba64616e362bd6ac791991d2c9e880a3a64e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d677265656e2e737667)](LICENSE)[![Yandex Disk API](https://camo.githubusercontent.com/93eca68ff7c4349e1093842efc762d28d1c17e82ec676d01109d69439561ead7/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4150492d59616e6465782532304469736b2532304150492d6f72616e67652e737667)](https://yandex.ru/dev/disk-api/doc/ru/)[![Laravel](https://camo.githubusercontent.com/885cbc9d02ff02a5bcc49b1ad9aaffa8e102c06541ecb0f269f2a03ad7d6e05e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d436f6d70617469626c652d6666326432302e737667)](https://laravel.com)

**🌐 Язык:** Русский | [English](README-en.md)

Комплексный PHP SDK для интеграции с [Yandex Disk API](https://yandex.ru/dev/disk-api/doc/ru/). Эта библиотека предоставляет чистый, интуитивный интерфейс для управления файлами и папками на Яндекс Диске с полным покрытием официального API.

📋 Справочник API
----------------

[](#-справочник-api)

МетодЭндпоинтДокументацияОписание`getAuthorizationUrl()`-[OAuth Guide](https://yandex.ru/dev/disk-api/doc/ru/concepts/quickstart)Генерация URL авторизации OAuth`getCapacity()``GET /`[Disk Info](https://yandex.ru/dev/disk-api/doc/ru/reference/capacity)Получение информации о диске`getMeta()``GET /resources`[Metadata](https://yandex.ru/dev/disk-api/doc/ru/reference/meta)Получение метаданных ресурса`addMeta()``PATCH /resources`[Add Metadata](https://yandex.ru/dev/disk-api/doc/ru/reference/meta-add)Добавление пользовательских метаданных`getAllFiles()``GET /resources/files`[All Files](https://yandex.ru/dev/disk-api/doc/ru/reference/all-files)Получение плоского списка всех файлов`getRecentUploads()``GET /resources/last-uploaded`[Recent Uploads](https://yandex.ru/dev/disk-api/doc/ru/reference/recent-upload)Получение недавно загруженных файлов`getRecentPublished()``GET /resources/public`[Published Files](https://yandex.ru/dev/disk-api/doc/ru/reference/recent-public)Получение недавно опубликованных файлов`createFolder()``PUT /resources`[Create Folder](https://yandex.ru/dev/disk-api/doc/ru/reference/create-folder)Создание папки`uploadFile()``GET /resources/upload`[Upload File](https://yandex.ru/dev/disk-api/doc/ru/reference/upload)Загрузка файла`uploadFromUrl()``POST /resources/upload`[Upload from URL](https://yandex.ru/dev/disk-api/doc/ru/reference/upload-ext)Загрузка файла из интернета`downloadFile()``GET /resources/download`[Download File](https://yandex.ru/dev/disk-api/doc/ru/reference/content)Скачивание файла`copy()``POST /resources/copy`[Copy Resource](https://yandex.ru/dev/disk-api/doc/ru/reference/copy)Копирование файла/папки`move()``POST /resources/move`[Move Resource](https://yandex.ru/dev/disk-api/doc/ru/reference/move)Перемещение файла/папки`delete()``DELETE /resources`[Delete Resource](https://yandex.ru/dev/disk-api/doc/ru/reference/delete)Удаление файла/папки`publish()``PUT /resources/publish`[Publish Resource](https://yandex.ru/dev/disk-api/doc/ru/reference/publish)Публикация ресурса`unpublish()``PUT /resources/unpublish`[Unpublish Resource](https://yandex.ru/dev/disk-api/doc/ru/reference/unpublish)Отмена публикации ресурса`getAvailablePublicSettings()``GET /public/resources/public-settings/available`[Available Settings](https://yandex.ru/dev/disk-api/doc/ru/reference/public-settings-get-available)Получение доступных публичных настроек`getPublicSettings()``GET /public/resources/public-settings`[Public Settings](https://yandex.ru/dev/disk-api/doc/ru/reference/public-settings-get)Получение публичных настроек ресурса`changePublicSettings()``PUT /resources/public`[Change Settings](https://yandex.ru/dev/disk-api/doc/ru/reference/public-settings-change)Изменение публичных настроек`getPublicResourceMeta()``GET /public/resources`[Public Metadata](https://yandex.ru/dev/disk-api/doc/ru/reference/public)Получение метаданных публичного ресурса`downloadPublicResource()``GET /public/resources/download`[Download Public](https://yandex.ru/dev/disk-api/doc/ru/reference/public)Скачивание публичного ресурса`savePublicResource()``POST /public/resources/save`[Save Public Resource](https://yandex.ru/dev/disk-api/doc/ru/reference/public)Сохранение публичного ресурса`getTrash()``GET /trash/resources`[Trash List](https://yandex.ru/dev/disk-api/doc/ru/reference/trash-delete)Получение содержимого корзины`restoreFromTrash()``PUT /trash/resources/restore`[Restore from Trash](https://yandex.ru/dev/disk-api/doc/ru/reference/trash-restore)Восстановление из корзины`clearTrash()``DELETE /trash/resources`[Clear Trash](https://yandex.ru/dev/disk-api/doc/ru/reference/trash-delete)Очистка корзины`getOperationStatus()``GET /operations/{id}`[Operation Status](https://yandex.ru/dev/disk-api/doc/ru/reference/operations)Получение статуса операции`getPublicResourcesOwnedByUser()``GET /public/resources/admin/public-resources`[Owned Resources](https://yandex.ru/dev/disk-api/doc/ru/reference/public-owned-by-user)Администратор: публичные ресурсы пользователя`getPublicResourcesAccessedByUser()``GET /public/resources/admin/accessible-resources`[Accessible Resources](https://yandex.ru/dev/disk-api/doc/ru/reference/public-accessed-by-user)Администратор: доступные пользователю ресурсы`unpublishUserResource()``PUT /public/resources/admin/unpublish`[Admin Unpublish](https://yandex.ru/dev/disk-api/doc/ru/reference/unpublish-admin-phash)Администратор: отмена публикации ресурса🔐 Получение OAuth-токена
------------------------

[](#-получение-oauth-токена)

Для работы с Yandex Disk API необходимо получить OAuth-токен. Следуйте этим шагам:

### 1. Создание приложения на Яндекс OAuth

[](#1-создание-приложения-на-яндекс-oauth)

1. Зайдите под своей учётной записью на Яндекс OAuth:
2. Нажмите на кнопку "+ Создать"
3. Во всплывающем окне "Какое приложение хотите создать?" укажите "Для доступа к API или отладки" и нажмите "Перейти к созданию"
4. Заполните форму:
    - **Название сервиса**: Укажите название вашего приложения
    - **Почта для связи**: Ваш контактный email
    - **Доступ к данным**: Выберите необходимые права:
        - `cloud_api:disk.write` — Запись в любом месте на Диске
        - `cloud_api:disk.read` — Чтение всего Диска
        - `cloud_api:disk.app_folder` — Доступ к папке приложения на Диске
        - `cloud_api:disk.info` — Доступ к информации о Диске

После создания приложения вам будут показаны:

- **ClientID** — понадобится для получения OAuth-токена
- **Client secret** — для работы с Яндекс Диском он не понадобится

### 2. Формирование ссылки авторизации

[](#2-формирование-ссылки-авторизации)

Используйте функцию `getAuthorizationUrl()` для генерации ссылки авторизации:

```
use Tigusigalpa\YandexDisk\YandexDiskClient;

$clientId = 'ваш_client_id_из_настроек_приложения';
$authUrl = YandexDiskClient::getAuthorizationUrl($clientId);

echo "Перейдите по ссылке для авторизации:\n";
echo $authUrl;
// Вывод: https://oauth.yandex.ru/authorize?response_type=token&client_id=
```

Или сформируйте ссылку вручную:

```
https://oauth.yandex.ru/authorize?response_type=token&client_id=

```

### 3. Получение токена

[](#3-получение-токена)

1. Перейдите по сгенерированной ссылке
2. Авторизуйтесь в своём аккаунте Яндекса (если еще не авторизованы)
3. Разрешите доступ для вашего приложения
4. После подтверждения вы будете перенаправлены на страницу с токеном в URL
5. Скопируйте токен на странице, что-то вроде `y0__xCD2tUFGKDjOyD2-Myl...`

### 4. Использование токена

[](#4-использование-токена)

Полученный токен используйте при создании клиента:

```
use Tigusigalpa\YandexDisk\YandexDiskClient;

$accessToken = 'ваш_oauth_токен';
$client = new YandexDiskClient($accessToken);

// Теперь можно использовать все методы API
$diskInfo = $client->getCapacity();
```

Примеры использования
---------------------

[](#примеры-использования)

### Информация о диске

[](#информация-о-диске)

```
// Получение информации о диске
$diskInfo = $client->getCapacity();
echo "Использовано: " . $diskInfo['used'] . " байт\n";
echo "Всего: " . $diskInfo['total_space'] . " байт\n";
echo "Свободно: " . ($diskInfo['total_space'] - $diskInfo['used']) . " байт\n";
```

### Работа с ресурсами

[](#работа-с-ресурсами)

```
use Tigusigalpa\YandexDisk\Models\{Resource, DiskInfo};

// Получение информации о диске
$diskData = $client->getCapacity();
$diskInfo = DiskInfo::fromArray($diskData);

echo "Всего: " . $diskInfo->getTotalSpace() . " байт\n";
echo "Использовано: " . $diskInfo->getUsedSpace() . " байт\n";
echo "Свободно: " . $diskInfo->getFreeSpace() . " байт\n";
echo "Использование: " . $diskInfo->getUsagePercentage() . "%\n";
echo "Корзина: " . $diskInfo->getTrashSize() . " байт\n";
echo "Платный: " . ($diskInfo->isPaid() ? 'Да' : 'Нет') . "\n";

// Получение метаданных ресурса
$meta = $client->getMeta('/disk/MyFile.txt');
$resource = Resource::fromArray($meta);

echo "Имя: " . $resource->getName() . "\n";
echo "Тип: " . $resource->getType() . "\n";        // 'file' или 'dir'
echo "Размер: " . $resource->getSize() . " байт\n";
echo "Создан: " . $resource->getCreated() . "\n";
echo "Изменён: " . $resource->getModified() . "\n";
echo "MIME тип: " . $resource->getMimeType() . "\n";
echo "MD5: " . $resource->getMd5() . "\n";
echo "SHA256: " . $resource->getSha256() . "\n";
```

### Операции с файлами

[](#операции-с-файлами)

#### Загрузка файла

[](#загрузка-файла)

```
// Загрузка файла
$result = $client->uploadFile(
    '/local/path/file.txt',
    '/disk/MyFolder/file.txt',
    true  // перезаписать существующий файл
);

echo "Статус: " . $result['status'] . "\n";  // 201 для успеха
echo "Успешно: " . ($result['success'] ? 'Да' : 'Нет') . "\n";
```

#### Скачивание файла

[](#скачивание-файла)

```
// Скачивание файла
$success = $client->downloadFile(
    '/disk/MyFile.txt',
    '/local/path/downloaded.txt'
);

echo $success ? "Скачивание успешно\n" : "Скачивание не удалось\n";
```

#### Копирование файла

[](#копирование-файла)

```
// Копирование файла
$result = $client->copy(
    '/disk/original.txt',
    '/disk/copy.txt',
    true  // перезаписать, если существует
);

echo "Скопировано в: " . $result['path'] . "\n";
```

#### Перемещение файла

[](#перемещение-файла)

```
// Перемещение файла
$result = $client->move(
    '/disk/old-location/file.txt',
    '/disk/new-location/file.txt',
    true  // перезаписать, если существует
);

echo "Перемещено в: " . $result['path'] . "\n";
```

#### Удаление файла

[](#удаление-файла)

```
// Удаление файла
$result = $client->delete(
    '/disk/file.txt',
    true  // окончательное удаление (false = в корзину)
);

echo "Удалено\n";
```

### Операции с папками

[](#операции-с-папками)

```
// Создание папки
$result = $client->createFolder('/disk/MyNewFolder');
echo "Папка создана: " . $result['path'] . "\n";

// Создание вложенной структуры папок
$client->createFolder('/disk/Projects');
$client->createFolder('/disk/Projects/WebDev');
$client->createFolder('/disk/Projects/WebDev/Site1');
```

### Список файлов и папок

[](#список-файлов-и-папок)

```
// Получение всех файлов на диске
$allFiles = $client->getAllFiles(limit: 100, offset: 0);
echo "Всего файлов: " . $allFiles['total'] . "\n";

foreach ($allFiles['items'] as $file) {
    $resource = Resource::fromArray($file);
    echo "- " . $resource->getName() . " (" . $resource->getType() . ")\n";
}

// Получение недавно загруженных файлов
$recent = $client->getRecentUploads(limit: 10);
foreach ($recent['items'] as $file) {
    $resource = Resource::fromArray($file);
    echo "- " . $resource->getName() . "\n";
}

// Список файлов в директории
$dirMeta = $client->getMeta('/disk/MyFolder');
$directory = Resource::fromArray($dirMeta);

if ($directory->isDir()) {
    foreach ($directory->getItems() as $item) {
        echo "- " . $item->getName() . " (" . $item->getSize() . " байт)\n";
    }
    echo "Всего элементов: " . $directory->getTotalItems() . "\n";
}
```

### Управление метаданными

[](#управление-метаданными)

```
// Добавление пользовательских метаданных
$result = $client->addMeta('/disk/file.txt', [
    'description' => 'Моё пользовательское описание',
    'author' => 'John Doe',
    'version' => '1.0.0'
]);

// Получение метаданных ресурса
$meta = $client->getMeta('/disk/file.txt');
$resource = ResourceResponse::fromArray($meta);

// Доступ к пользовательским свойствам
$customProps = $resource->toArray()['custom_properties'] ?? [];
```

### Управление публичным доступом

[](#управление-публичным-доступом)

#### Публикация ресурса

[](#публикация-ресурса)

```
// Сделать файл публичным
$result = $client->publish('/disk/document.pdf');

echo "Публичный URL: " . $result['public_url'] . "\n";
// Вывод: https://yadi.sk/d/abc123...
```

#### Получение опубликованных файлов

[](#получение-опубликованных-файлов)

```
// Получение недавно опубликованных файлов
$published = $client->getRecentPublished(limit: 10);

foreach ($published['items'] as $file) {
    $resource = Resource::fromArray($file);

    if ($resource->isPublished()) {
        echo "- " . $resource->getName() . "\n";
        echo "  URL: " . $resource->getPublicUrl() . "\n";
        echo "  Ключ: " . $resource->getPublicKey() . "\n";
    }
}
```

#### Отмена публикации ресурса

[](#отмена-публикации-ресурса)

```
// Отозвать публичный доступ
$result = $client->unpublish('/disk/document.pdf');
```

#### Управление публичными настройками

[](#управление-публичными-настройками)

```
// Получение доступных публичных настроек
$available = $client->getAvailablePublicSettings();
print_r($available);

// Получение текущих публичных настроек ресурса
$settings = $client->getPublicSettings('/disk/document.pdf');
print_r($settings);

// Изменение публичных настроек
$client->changePublicSettings('/disk/document.pdf', [
    'access' => [
        'type' => 'public',
        'view' => true,
        'comment' => true,
        'edit' => false
    ]
]);
```

#### Работа с публичными ресурсами

[](#работа-с-публичными-ресурсами)

```
// Получение метаданных публичного ресурса
$publicMeta = $client->getPublicResourceMeta('https://yadi.sk/d/abc123...');
echo "Публичный файл: " . $publicMeta['name'] . "\n";

// Скачивание публичного ресурса
$client->downloadPublicResource('https://yadi.sk/d/abc123...', '/local/downloaded.pdf');

// Сохранение публичного ресурса на ваш диск
$saveResult = $client->savePublicResource(
    'https://yadi.sk/d/abc123...',
    'saved-document.pdf',
    '/disk/downloads/'
);
```

### Управление корзиной

[](#управление-корзиной)

```
// Получение содержимого корзины
$trash = $client->getTrash('/', 50, 0);
foreach ($trash['items'] as $item) {
    echo "- " . $item['name'] . " (удалён: " . $item['deleted'] . ")\n";
}

// Восстановление файла из корзины
$restoreResult = $client->restoreFromTrash('/disk/document.pdf');
echo "Восстановлено: " . $restoreResult['name'] . "\n";

// Восстановление с новым именем
$client->restoreFromTrash('/disk/document.pdf', 'restored-document.pdf', false);

// Удаление конкретного файла из корзины
$client->clearTrash('/disk/document.pdf');

// Очистка всей корзины
$client->clearTrash();
```

### Загрузка из URL

[](#загрузка-из-url)

```
// Загрузка файла из интернет-URL
$uploadResult = $client->uploadFromUrl(
    'https://example.com/document.pdf',
    '/disk/downloads/document.pdf'
);

echo "Загрузка начата\n";

// Проверка статуса операции, если асинхронная
if (isset($uploadResult['href'])) {
    $operationId = basename($uploadResult['href']);
    $status = $client->getOperationStatus($operationId);

    echo "Статус: " . $status['status'] . "\n";
    echo "Завершено: " . ($status['status'] === 'success' ? 'Да' : 'Нет') . "\n";
}

// Загрузка без перенаправлений
$client->uploadFromUrl(
    'https://example.com/document.pdf',
    '/disk/downloads/document.pdf',
    true // отключить перенаправления
);
```

### Методы администратора организации

[](#методы-администратора-организации)

```
// Получение публичных ресурсов, принадлежащих конкретному пользователю
$ownedResources = $client->getPublicResourcesOwnedByUser(
    'user-uid-123',
    'org-id-456',
    20,
    0
);

foreach ($ownedResources['items'] as $resource) {
    echo "- " . $resource['name'] . " (" . $resource['public_url'] . ")\n";
}

// Получение публичных ресурсов, доступных пользователю (включая групповой доступ)
$accessibleResources = $client->getPublicResourcesAccessedByUser(
    'user-uid-123',
    'org-id-456',
    true, // включить групповой доступ
    20
);

// Отмена публикации ресурса пользователя как администратор
$client->unpublishUserResource(
    'public-key-789',
    'user-uid-123',
    'org-id-456'
);
```

🚀 Интеграция с Laravel
----------------------

[](#-интеграция-с-laravel)

### Установка

[](#установка)

```
composer require tigusigalpa/yandex-disk-php
```

### Конфигурация

[](#конфигурация)

Опубликуйте конфигурационный файл:

```
php artisan vendor:publish --provider="Tigusigalpa\YandexDisk\YandexDiskServiceProvider"
```

Добавьте в ваш файл `.env`:

```
YANDEX_DISK_ACCESS_TOKEN=ваш_oauth_токен
```

### Использование

[](#использование)

```
use Tigusigalpa\YandexDisk\Facades\YandexDisk;

// Использование фасада
$diskInfo = YandexDisk::getCapacity();

// Использование сервис-контейнера
$client = app('yandex-disk');
$client->uploadFile($localPath, $remotePath);
```

🔧 Обработка ошибок
------------------

[](#-обработка-ошибок)

SDK предоставляет комплексную обработку ошибок с пользовательскими исключениями:

```
use Tigusigalpa\YandexDisk\Exceptions\YandexDiskException;

try {
    $client->uploadFile('/path/to/file.txt', '/disk/file.txt');
} catch (YandexDiskException $e) {
    echo "Ошибка: " . $e->getMessage() . "\n";
    echo "Код ошибки: " . $e->getErrorCode() . "\n";

    // Получить полный ответ API, если доступен
    if ($e->getResponse()) {
        print_r($e->getResponse());
    }
}
```

📊 Покрытие API
--------------

[](#-покрытие-api)

КатегорияРеализованоВсегоПроцентИнформация о диске✅ 11100%Операции с файлами✅ 88100%Публичные ресурсы✅ 88100%Управление корзиной✅ 33100%Метаданные✅ 22100%Методы администратора✅ 33100%Операции✅ 11100%**Всего**✅ 2626**100%**🤝 Участие в разработке
----------------------

[](#-участие-в-разработке)

Вклады приветствуются! Не стесняйтесь отправлять Pull Request.

📄 Лицензия
----------

[](#-лицензия)

Этот пакет лицензирован под MIT License. Подробности смотрите в файле [LICENSE](LICENSE).

🔗 Ссылки
--------

[](#-ссылки)

- [Официальная документация Yandex Disk API](https://yandex.ru/dev/disk-api/doc/ru/)
- [Документация OAuth](https://yandex.ru/dev/id/doc/ru/)
- [Packagist](https://packagist.org/packages/tigusigalpa/yandex-disk-php)
- [Репозиторий GitHub](https://github.com/tigusigalpa/yandex-disk-php)

📞 Поддержка
-----------

[](#-поддержка)

Для проблем, вопросов или вкладов:

- Создайте issue на [GitHub](https://github.com/tigusigalpa/yandex-disk-php/issues)
- Проверьте [официальную документацию](https://yandex.ru/dev/disk-api/doc/ru/)
- Ознакомьтесь с [руководством по устранению неполадок](https://yandex.ru/dev/disk-api/doc/ru/concepts/troubleshooting)

---

**Сделано с ❤️ для PHP сообщества**

Ресурсы
-------

[](#ресурсы)

- [Документация Yandex Disk API](https://yandex.ru/dev/disk-api/doc/ru/)
- [Yandex OAuth](https://oauth.yandex.ru/)
- [Справочник API](https://yandex.ru/dev/disk-api/doc/ru/reference/)
- [Репозиторий GitHub](https://github.com/tigusigalpa/yandex-disk-php)

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance70

Regular maintenance activity

Popularity17

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

169d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/76c3a1d93c3213a8a22b4b637708d8b66a1ba3a5252624046cae7683a198b3a8?d=identicon)[tigusigalpa](/maintainers/tigusigalpa)

---

Top Contributors

[![tigusigalpa](https://avatars.githubusercontent.com/u/2721390?v=4)](https://github.com/tigusigalpa "tigusigalpa (4 commits)")

---

Tags

apicloud-storagelaraveloauth2phpsdkyandexyandex-apiyandex-diskapisdkyandexfile downloadfile-uploaddisk

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/tigusigalpa-yandex-disk-php/health.svg)

```
[![Health](https://phpackages.com/badges/tigusigalpa-yandex-disk-php/health.svg)](https://phpackages.com/packages/tigusigalpa-yandex-disk-php)
```

###  Alternatives

[openai-php/laravel

OpenAI PHP for Laravel is a supercharged PHP API client that allows you to interact with the Open AI API

3.7k7.6M74](/packages/openai-php-laravel)[hubspot/api-client

Hubspot API client

23414.2M16](/packages/hubspot-api-client)[mailchimp/transactional

458.9M16](/packages/mailchimp-transactional)[resend/resend-php

Resend PHP library.

564.7M21](/packages/resend-resend-php)[checkout/checkout-sdk-php

Checkout.com SDK for PHP

553.3M7](/packages/checkout-checkout-sdk-php)[crowdin/crowdin-api-client

PHP client library for Crowdin API v2

611.5M5](/packages/crowdin-crowdin-api-client)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
