s3.php¶
Модуль управления S3-хранилищем: создание и удаление аккаунтов, управление бакетами и файлами, получение статистики использования, управление тарифными планами и биллингом.
Методы API¶
| Метод | Действие | Описание |
|---|---|---|
create_account | создание бесплатного S3 аккаунта | Создает бесплатный S3 аккаунт для клиента с указанным планом и локацией, создает бакет и инициализирует счетчики. |
create_bucket | создание бакета | Создает новый бакет в существующем S3 аккаунте. |
create_order | создание оплачиваемого заказа | Создает оплачиваемый заказ на S3 хранилище, создает сервис в биллинге и аккаунт пользователя. |
delete_account | удаление S3 аккаунта | Полностью удаляет S3 аккаунт пользователя и все связанные с ним данные. |
delete_bucket | удаление бакета | Удаляет указанный бакет из S3 аккаунта. |
delete_file | удаление файла | Удаляет указанный файл из бакета S3. |
delete_payment_account | удаление оплачиваемого аккаунта | Устанавливает дату прекращения обслуживания для оплачиваемого S3 аккаунта. |
get_buckets | получение списка бакетов (AWS) | Возвращает список бакетов пользователя через AWS API, включая информацию о трафике и снапшотах. |
get_buckets_rmq | получение списка бакетов (RMQ) | Возвращает список бакетов через очередь сообщений (RMQ), включая детальную статистику использования и ключи доступа. |
get_files | получение списка файлов | Возвращает список файлов и папок в указанном бакете с поддержкой пагинации и поиска. |
get_users | получение списка пользователей | Возвращает список S3 пользователей с фильтрацией по плану, локации, email и статистикой трафика. |
history | получение истории плана | Возвращает историю изменений для указанного тарифного плана. |
list_plans | получение списка тарифных планов | Возвращает список доступных тарифных планов S3 хранилища. |
show_key | получение ключа доступа | Возвращает расшифрованный ключ доступа (access_key или secret_key) для S3 аккаунта. |
s3/create_account¶
Создает бесплатный S3 аккаунт для клиента с указанным планом и локацией, создает бакет и инициализирует счетчики.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: create_account |
| token | ✅ | string | Токен авторизации |
| plan_id | ✅ | int | ID тарифного плана |
| bucket_name | ✅ | string | Имя бакета для создания |
| location | ✅ | string | Код локации (например, NL) |
Пример запроса
s3/create_bucket¶
Создает новый бакет в существующем S3 аккаунте.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: create_bucket |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
| bucket_name | ✅ | string | Имя бакета для создания |
Пример запроса
Пример успешного ответа
s3/create_order¶
Создает оплачиваемый заказ на S3 хранилище, создает сервис в биллинге и аккаунт пользователя.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: create_order |
| token | ✅ | string | Токен авторизации |
| plan_id | ✅ | int | ID тарифного плана |
| bucket_name | ✅ | string | Имя бакета для создания |
| location | ✅ | string | Код локации (например, NL) |
Пример запроса
s3/delete_account¶
Полностью удаляет S3 аккаунт пользователя и все связанные с ним данные.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: delete_account |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
Пример запроса
Пример успешного ответа
s3/delete_bucket¶
Удаляет указанный бакет из S3 аккаунта.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: delete_bucket |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
| bucket_name | ✅ | string | Имя бакета для удаления |
Пример запроса
s3/delete_file¶
Удаляет указанный файл из бакета S3.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: delete_file |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
| bucket_name | ✅ | string | Имя бакета |
| filename | ✅ | string | Путь к файлу для удаления |
Пример запроса
Пример успешного ответа
s3/delete_payment_account¶
Устанавливает дату прекращения обслуживания для оплачиваемого S3 аккаунта.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: delete_payment_account |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
Пример запроса
Пример успешного ответа
s3/get_buckets¶
Возвращает список бакетов пользователя через AWS API, включая информацию о трафике и снапшотах.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: get_buckets |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
Пример запроса
Пример успешного ответа
s3/get_buckets_rmq¶
Возвращает список бакетов через очередь сообщений (RMQ), включая детальную статистику использования и ключи доступа.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: get_buckets_rmq |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
Пример запроса
Пример успешного ответа
{
"result": "OK",
"action": "get_buckets_rmq",
"message": [
{
"name": "data-bucket",
"usage": 1073741824
}
],
"bandwidth": 204800,
"usage_storage": 1073741824,
"quota": 5368709120,
"snapshots": [
{
"bandwidth_usage": 204800,
"storage_usage": 1073741824,
"created_at": "2023-10-27T10:00:00Z"
}
],
"access_key": "AKIAIOSFODNN7EXAMPLE",
"secret_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
}
s3/get_files¶
Возвращает список файлов и папок в указанном бакете с поддержкой пагинации и поиска.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: get_files |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
| bucket_name | ✅ | string | Имя бакета |
| continuation_token | ❌ | string | Токен для пагинации |
| max_keys | ❌ | int | Максимальное количество файлов (до 100) |
| search | ❌ | string | Строка поиска в именах файлов |
Пример запроса
Пример успешного ответа
s3/get_users¶
Возвращает список S3 пользователей с фильтрацией по плану, локации, email и статистикой трафика.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: get_users |
| token | ✅ | string | Токен авторизации |
| id | ❌ | int | ID клиента (для админа) |
| plan_id | ❌ | int | Фильтр по ID плана |
| s3uid | ❌ | string | Фильтр по S3UID |
| ❌ | string | Фильтр по email | |
| billing | ❌ | string | Фильтр по локации биллинга |
| limit | ❌ | int | Лимит записей |
| order | ❌ | string | Поле сортировки |
| order_by | ❌ | string | Направление сортировки (ASC/DESC) |
| period_from | ❌ | string | Начало периода для трафика (YYYY-MM-DD) |
| period_to | ❌ | string | Конец периода для трафика (YYYY-MM-DD) |
Пример запроса
Пример успешного ответа
s3/history¶
Возвращает историю изменений для указанного тарифного плана.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: history |
| token | ✅ | string | Токен авторизации |
| id | ✅ | int | ID тарифного плана |
Пример запроса
s3/list_plans¶
Возвращает список доступных тарифных планов S3 хранилища.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: list_plans |
| token | ✅ | string | Токен авторизации |
| id | ❌ | int | ID конкретного плана (для админа) |
Пример запроса
Пример успешного ответа
{
"result": "OK",
"action": "list_plans",
"plans": [
{
"id": 1,
"name": "Basic S3",
"quota": 10737418240,
"active": 1,
"locations": [
"NL",
"DE"
],
"monthly_rub": 500,
"monthly_eur": 5.0,
"monthly_usd": 5.5,
"storage_type": "standard",
"bandwidth_limit": 0,
"price": {
"monthly_rub": 500,
"monthly_eur": 5.0,
"monthly_usd": 5.5
}
}
]
}
s3/show_key¶
Возвращает расшифрованный ключ доступа (access_key или secret_key) для S3 аккаунта.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: show_key |
| token | ✅ | string | Токен авторизации |
| s3uid | ✅ | string | Уникальный идентификатор S3 аккаунта |
| s3_key | ✅ | string | Тип ключа: 'access_key' или 'secret_key' |
Пример запроса