Перейти к содержанию

iso.php

Модуль управления ISO-образами: загрузка, удаление, монтирование и размонтирование образов на серверах, а также получение списков доступных и загруженных образов.

Методы API

Метод Действие Описание
add добавление ISO-образа Добавляет новый ISO-образ или обновляет существующий по имени.
delete удаление ISO-образа Удаляет ISO-образ по ID.
list_iso получение списка ISO-образов Возвращает список доступных ISO-образов.
mount_iso монтирование ISO-образа Монтирует ISO-образ на указанный сервер.
unmount_iso размонтирование ISO-образа Размонтирует ISO-образ с указанного сервера.
upload загрузка ISO-образа Загружает ISO-образ по URL.
uploaded получение списка загруженных ISO-образов Возвращает список загруженных ISO-образов для клиента или сотрудника.

iso/add

Добавляет новый ISO-образ или обновляет существующий по имени.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: add
token string Токен авторизации
params[name] string Полное имя ISO-образа
params[short_name] string Короткое имя ISO-образа
params[iso_name] string Имя файла ISO-образа
params[private] string Email клиента (валидный email)
params[description] string Описание образа
params[admin_only] integer Флаг доступности только для администраторов (0 или 1)
params[status] string Статус образа (по умолчанию 'Pending')

Пример запроса

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=add" \
--data "token=HOSTKEY_TOKEN" \
--data "params[name]=VALUE" \
--data "params[short_name]=VALUE" \
--data "params[iso_name]=VALUE" \
--data "params[private]=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "add",
"module": "iso",
"data": {
"id": 123,
"name": "Ubuntu 22.04",
"short_name": "ubuntu-22.04",
"iso_name": "ubuntu-22.04.iso",
"private": "user@example.com",
"description": "Ubuntu 22.04 LTS",
"admin_only": 0,
"status": "Pending"
}
}
Примеры ошибок
{
"code": -1,
"message": "invalid argument iso_name"
}

iso/delete

Удаляет ISO-образ по ID.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: delete
token string Токен авторизации
id int ID ISO-образа для удаления

Пример запроса

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=delete" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "delete",
"module": "iso",
"data": {
"id": 123,
"status": "deleted"
}
}
Примеры ошибок
{
"code": -1,
"message": "ISO not found"
}

iso/list_iso

Возвращает список доступных ISO-образов.

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: list_iso
token string Токен авторизации
id int ID сервера (обязателен для клиентов)

Пример запроса

curl -s "https://invapi.hostkey.ru/iso.php" -X GET \
--data "action=list_iso" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "list_iso",
"module": "iso",
"server_id": 456,
"iso_images": [
{
"id": 1,
"iso_name": "ubuntu-22.04.iso",
"url": "https://example.com/ubuntu-22.04.iso",
"description": "Ubuntu 22.04 LTS",
"created_at": "2024-01-15T10:30:00Z"
},
{
"id": 2,
"iso_name": "windows-11.iso",
"url": "https://example.com/windows-11.iso",
"description": "Windows 11 Pro",
"created_at": "2024-01-16T11:45:00Z"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "Server id required"
}

iso/mount_iso

Монтирует ISO-образ на указанный сервер.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: mount_iso
token string Токен авторизации
id int ID сервера
iso string Имя ISO-образа для монтирования

Пример запроса

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=mount_iso" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE" \
--data "iso=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "mount_iso",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Примеры ошибок
{
"code": -1,
"message": "ISO name required"
}

iso/unmount_iso

Размонтирует ISO-образ с указанного сервера.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: unmount_iso
token string Токен авторизации
id int ID сервера

Пример запроса

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=unmount_iso" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "unmount_iso",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Примеры ошибок
{
"code": -1,
"message": "iso/unmount_iso: Server id required"
}

iso/upload

Загружает ISO-образ по URL.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: upload
token string Токен авторизации
params[url] string URL для загрузки образа (должен заканчиваться на .iso)
params[email] string Email клиента (обязательно для сотрудников)
params[customer_id] int ID клиента (обязательно для сотрудников)

Пример запроса

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=upload" \
--data "token=HOSTKEY_TOKEN" \
--data "params[url]=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "upload",
"module": "iso",
"data": {
"id": 124,
"name": "custom-image",
"url": "https://example.com/custom-image.iso",
"size": 1073741824,
"key": "7bc29eb23fb1b879b21fce509597f07c"
}
}
Примеры ошибок
{
"code": -1,
"message": "Invalid URL"
}

iso/uploaded

Возвращает список загруженных ISO-образов для клиента или сотрудника.

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: uploaded
token string Токен авторизации
params[email] string Email клиента (обязателен для сотрудников)

Пример запроса

curl -s "https://invapi.hostkey.ru/iso.php" -X GET \
--data "action=uploaded" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "uploaded",
"module": "iso",
"data": [
{
"id": 125,
"name": "debian-12.iso",
"status": "active"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "Incorrect parameter params"
}

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×