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

options.php

В этой статье

Модуль управления опциями и настройками: получение, обновление, удаление, привязка к серверам и просмотр истории изменений

Методы API

Метод Действие Описание
bind привязка опции Привязывает выбранную опцию (например, лицензию) к серверу по его ID или IP-адресу.
get получение опции Возвращает данные конкретной опции по её ID.
history история изменений Возвращает историю действий (логи) для указанной опции или компонента.
list список опций Возвращает список всех доступных опций или лицензий для конкретного сервера/IP.
logs логи опции Возвращает логи для программного обеспечения (software). Доступно только для опции 'software'.
remove удаление опции Удаляет существующую опцию по её ID.
servers серверы для опции Возвращает список серверов, связанных с указанной опцией.
update обновление опции Создает новую или обновляет существующую конфигурацию (опцию). Если указан id, происходит обновление текущей записи.

options/bind

Привязывает выбранную опцию (например, лицензию) к серверу по его ID или IP-адресу.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: bind
token ✅ string Токен авторизации
option_id ❌ integer ID опции для привязки
id ❌ integer ID сервера или IP-адрес (в зависимости от контекста)
ip ❌ string IP-адрес сервера для привязки лицензии
option_count ❌ integer Количество опций. По умолчанию 1.
bind ✅ string Тип привязки: ip или server
server_id ❌ integer ID сервера (внутренний идентификатор)
eq ❌ string Идентификатор оборудования (equipment ID)
bm ❌ integer Флаг для типа таблицы Server
vm ❌ integer Флаг для типа таблицы VPS
option ❌ string Тип привязываемого параметра, например, лицензия.

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

curl -s "https://invapi.hostkey.ru/options.php" -X POST \
--data "action=bind" \
--data "token=YOUR_TOKEN" \
--data "option_id=123" \
--data "ip=192.168.1.1" \
--data "bind=ip"
Пример успешного ответа
{
"list": {},
"license_result": {},
"debug": {}
}
Примеры ошибок
{
"code": -1,
"message": "failed to list option bind: error message while ..."
}

options/get

Возвращает данные конкретной опции по её ID.

HTTP-метод: POST

Параметры:

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

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

curl -s "https://invapi.hostkey.ru/options.php" -X POST \
--data "action=get" \
--data "token=YOUR_TOKEN" \
--data "id=50"
Пример успешного ответа
{
"option": {
"id": 50,
"name": "Premium License",
"status": "active"
}
}
Примеры ошибок
{
"code": -1,
"message": "get: failed to get option $module $id: error message"
}

options/history

Возвращает историю действий (логи) для указанной опции или компонента.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: history
token ✅ string Токен авторизации
id ❌ integer ID объекта истории
component ❌ string Компонент для фильтрации. Допустимые значения: api_keys, cl, component1, cust, customers, dash, dash-rep, dashboard, dashboards, datacenter, dc, distributors, empl, employee1, employees, eq, hardware, ip, ipaddress, ipadress2, ipmip, ipv4r, ipv4rs, iso, iso-image, iso-images, iso_list, lic, license, loc, location, locations, ma, net, netinterface, netinterface1, part, pdns-domain, pdns-subdomain, preorders, rack, rack1, rep, reporttemplate, rh_requests, rhr, rhrequests, sshkey, sshkeys, sup, tags_mgr, tm, vlan, vlans, waybills, waybills_hardware, wb, wbd
option ❌ string Название компонента для фильтрации истории событий.

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

curl -s "https://invapi.hostkey.ru/options.php" -X POST \
--data "action=history" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "history",
"data": [
{
"id": 100,
"message": "Software created: Name { key = value }",
"created_at": "2024-01-01T12:00:00Z"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "history error message"
}

options/logs

Возвращает логи для программного обеспечения (software). Доступно только для опции 'software'.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: logs
token ✅ string Токен авторизации
id ❌ integer ID опции (software)
option ✅ string Тип запрашиваемых логов; поддерживается только значение software.

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

curl -s "https://invapi.hostkey.ru/options.php" -X POST \
--data "action=logs" \
--data "token=HOSTKEY_TOKEN" \
--data "option=software" \
--data "id=123"
Пример успешного ответа
{
"logs": [
{
"id": 500,
"message": "Log entry details",
"created_at": "2024-01-01T12:00:00Z"
}
]
}
Примеры ошибок
{
"code": 400,
"message": "logs action is only supported for software option"
}

options/update

Создает новую или обновляет существующую конфигурацию (опцию). Если указан id, происходит обновление текущей записи.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: update
token ✅ string Токен авторизации
option ✅ string Тип опции. Допустимые значения: api_keys, cl, component1, cust, customers, dash, dash-rep, dashboard, dashboards, datacenter, dc, distributors, empl, employee1, employees, eq, hardware, ip, ipaddress, ipadress2, ipmip, ipv4r, ipv4rs, iso, iso-image, iso-images, iso_list, lic, license, loc, location, locations, ma, net, netinterface, netinterface1, part, pdns-domain, pdns-subdomain, preorders, rack, rack1, rep, reporttemplate, rh_requests, rhr, rhrequests, sshkey, sshkeys, sup, tags_mgr, tm, vlan, vlans, waybills, waybills_hardware, wb, wbd
id ❌ integer ID существующей опции. Если -1, создается новая запись.
params[id] ❌ integer ID записи для обновления (внутри контейнера params).
params[name] ❌ string Имя опции. Если пусто при создании software, используется ID.
name ✅ string Параметр name

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

curl -s "https://invapi.hostkey.ru/options.php" -X POST \
--data "action=update" \
--data "token=HOSTKEY_TOKEN" \
--data "option=api_keys" \
--data "name=my_new_option"
Пример успешного ответа
{
"id": 123
}
Примеры ошибок
{
"code": -1,
"message": "failed to update option software: error message"
}

options/remove

Удаляет существующую опцию по её ID.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: remove
token ✅ string Токен авторизации
id ❌ integer ID опции для удаления
option ❌ string Название категории (модуля) опций. Допустимые значения: api_keys, cl, component1, cust, customers, dash, dash-rep, dashboard, dashboards, datacenter, dc, distributors, empl, employee1, employees, eq, hardware, ip, ipaddress, ipadress2, ipmip, ipv4r, ipv4rs, iso, iso-image, iso-images, iso_list, lic, license, loc, location, locations, ma, net, netinterface, netinterface1, part, pdns-domain, pdns-subdomain, preorders, rack, rack1, rep, reporttemplate, rh_requests, rhr, rhrequests, sshkey, sshkeys, sup, tags_mgr, tm, vlan, vlans, waybills, waybills_hardware, wb, wbd

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

curl -s "https://invapi.hostkey.ru/options.php" -X POST \
--data "action=remove" \
--data "token=HOSTKEY_TOKEN" \
--data "id=123" \
--data "option=hardware"
Пример успешного ответа
{
"id": 123,
"result": "OK"
}
Примеры ошибок
{
"code": -1,
"message": "module/remove: failed to delete option software: error message"
}

options/list

Возвращает список всех доступных опций или лицензий для конкретного сервера/IP.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: list
token ✅ string Токен авторизации
id ❌ integer ID сервера или IP-адрес для фильтрации лицензий
ip ❌ string IP-адрес для получения лицензий
bm ❌ integer Параметр bm (устанавливается автоматически при типе оборудования Server)
vm ❌ integer Параметр vm (устанавливается автоматически при типе оборудования VPS)
deprecated ❌ boolean Параметр deprecated
bind ❌ string Тип привязки: ip или server
option ❌ string Название категории или типа ресурса для получения списка объектов.

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

curl -s "https://invapi.hostkey.ru/options.php" -X POST \
--data "action=list" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"list": [
{
"id": 1,
"name": "License A",
"tags": [
{
"internal": 0,
"name": "tag_name"
}
]
}
]
}
Примеры ошибок
{
"code": -1,
"message": "failed to list option license: error message"
}

options/servers

Возвращает список серверов, связанных с указанной опцией.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: servers
token ✅ string Токен авторизации
id ❌ integer ID опции или сервера
location ❌ string Локация для фильтрации серверов. Допустимые значения: api_keys, cl, component1, cust, customers, dash, dash-rep, dashboard, dashboards, datacenter, dc, distributors, empl, employee1, employees, eq, hardware, ip, ipaddress, ipadress2, ipmip, ipv4r, ipv4rs, iso, iso-image, iso-images, iso_list, lic, license, loc, location, locations, ma, net, netinterface, netinterface1, part, pdns-domain, pdns-subdomain, preorders, rack, rack1, rep, reporttemplate, rh_requests, rhr, rhrequests, sshkey, sshkeys, sup, tags_mgr, tm, vlan, vlans, waybills, waybills_hardware, wb, wbd
option ❌ string Идентификатор опции для получения списка связанных с ней серверов.

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

curl -s "https://invapi.hostkey.ru/options.php" -X POST \
--data "action=servers" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"servers": [
{
"id": 10,
"name": "Server Name",
"ip": "192.168.1.1"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "failed to list servers for option license: error message"
}
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×