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

iso.php

В этой статье

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

Методы API

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

iso/add

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: add
token ✅ string Токен авторизации
params ✅ array<string> Контейнер с параметрами для создания или обновления ISO-образа
iso_name ✅ string Имя ISO-образа.

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

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=add" \
--data "token=HOSTKEY_TOKEN" \
--data "params[]=param1" \
--data "params[]=param2" \
--data "iso_name=ubuntu-22.04.iso"
Пример успешного ответа
{
"result": "OK",
"action": "add",
"module": "iso",
"data": {
"id": 123,
"name": "ubuntu-22.04.iso",
"status": "active"
}
}
Примеры ошибок
{
"code": -1,
"message": "iso_name required"
}

iso/del

Удаляет ISO-образ из системы. В зависимости от прав доступа, может требовать привязки к владельцу.

HTTP-метод: POST

Параметры:

action ✅ string Идентификатор метода: del
token ✅ string Токен авторизации
id ✅ integer Уникальный идентификатор ISO-образа для удаления
pending ❌ boolean Флаг немедленного удаления записи из базы данных

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

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=del" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE" \
--data "pending=true"
Пример успешного ответа
{
"result": "OK",
"module": "iso",
"action": "del",
"data": null
}
Примеры ошибок
{
"PlatformException": [
{
"code": -1,
"message": "Can't find iso data for id={id}"
},
{
"code": -1,
"message": "invalid argument id"
}
]
}

iso/delete

Удаляет ISO-образ из системы.

HTTP-метод: POST

Параметры:

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

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

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

iso/history

Возвращает историю изменений для указанного ISO-образа.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: history
token ✅ string Токен авторизации
params[id] ✅ integer ID ISO-образа

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

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=history" \
--data "token=HOSTKEY_TOKEN" \
--data "params[id]=123"
Пример успешного ответа
{
"result": "OK",
"action": "history",
"module": "iso",
"data": [
{
"description": "ISO image was updated by admin on 2024-01-01",
"type": "string",
"login": "admin_user"
},
{
"description": "Image created at 2023-12-15T10:00:00Z",
"type": "string",
"login": "system"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "invalid argument id '...' "
}

iso/list_iso

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

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: list_iso
token ✅ string Токен авторизации
id ✅ integer 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": 1,
"iso_images": [
{
"id": 5,
"name": "debian-11.iso",
"size": 2048
},
{
"id": 6,
"name": "windows-server-2022.iso",
"size": 10240
}
]
}
Примеры ошибок
{
"code": -1,
"message": "Error getting list_iso"
}

iso/mount_iso

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: mount_iso
token ✅ string Токен авторизации
id ✅ integer 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": "failure: error message"
}

iso/unmount_iso

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: unmount_iso
token ✅ string Токен авторизации
id ✅ integer 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": "failure: error message"
}

iso/update

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update
token ✅ string Токен авторизации
params[id] ✅ integer ID ISO-образа для обновления.
params[name] ❌ string Полное название ISO-образа (max 255 chars).
params[short_name] ❌ string Краткое техническое имя образа (max 255 chars).
params[iso_name] ❌ string Отображаемое имя ISO-файла в системе (max 255 chars).
params[description] ❌ string Текстовое описание характеристик образа (max 255 chars).
params[private] ❌ string Признак приватности доступа к образу.
params[admin_only] ❌ integer Ограничение видимости образа только для администраторов (0 или 1).
params[status] ❌ string Текущий статус доступности ISO-образа.

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

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=update" \
--data "token=HOSTKEY_TOKEN" \
--data "params[id]=1" \
--data "params[name]=New Name"
Пример успешного ответа
{
"result": "OK",
"action": "update",
"module": "iso",
"data": {
"id": 1,
"name": "...",
"short_name": "...",
"iso_name": "...",
"description": "...",
"private": "...",
"admin_only": 0,
"status": "..."
}
}
Примеры ошибок
{
"-1": [
{
"message": "ISO not found",
"context": "iso_show returns empty array or throws exception"
},
{
"message": "invalid argument id '...' ",
"context": "validate_params runtime exception"
}
],
"-2": [
{
"message": "action required",
"context": "$_GET/$_POST action missing"
},
{
"message": "token required",
"context": "$_POST/$_GET token missing"
}
],
"-3": [
{
"message": "iso/update: params required",
"context": "is_array($params) check failed"
},
{
"message": "iso/update: ISO id required",
"context": "(int)$params['id'] < 1"
}
]
}

iso/upload

Загружает ISO-образ из внешнего источника по ссылке.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: upload
token ✅ string Токен авторизации
url ✅ string Прямая ссылка на .iso файл.
email ✅ string Электронная почта пользователя
customer_id ✅ integer Идентификатор клиента
params ✅ string Параметр params

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

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=upload" \
--data "token=HOSTKEY_TOKEN" \
--data "url=VALUE" \
--data "email=VALUE" \
--data "customer_id=VALUE" \
--data "params=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "upload",
"data": {
"id": 456,
"url": "https://example.com/image.iso",
"status": "uploaded"
}
}
Примеры ошибок
{
"code": -1,
"message": "Invalid URL"
}

iso/uploaded

Возвращает список ISO-образов, которые были загружены пользователем.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: uploaded
token ✅ string Токен авторизации
email ✅ string Электронная почта пользователя для получения списка образов

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

curl -s "https://invapi.hostkey.ru/iso.php" -X POST \
--data "action=uploaded" \
--data "token=HOSTKEY_TOKEN" \
--data "email=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "uploaded",
"data": [
{
"id": 10,
"name": "custom_image.iso",
"size": 5000
}
]
}
Примеры ошибок
{
"code": -1,
"message": "Incorrect parameter params iso/uploaded"
}
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×