eq.php¶
Модуль управления оборудованием (eq.php): API для развертывания серверов, управления питанием, IPMI, резервными копиями, поиска и получения детальной информации о конфигурации оборудования.
Методы API¶
| Метод | Действие | Описание |
|---|---|---|
abort_reinstall | прерывание переустановки | Прерывает процесс переустановки сервера, удаляет связанные теги (reinstall_start, autodeploy_start, autodeploy_timeout) и восстанавливает настройки VLAN. |
add_ipmi_admin | добавление администратора IPMI | Добавляет пользователя с правами администратора в интерфейс IPMI для конкретного сервера. Если пользователь уже существует, возвращает его данные. |
add_ipmi_user | добавление IPMI пользователя | Создает нового пользователя IPMI для сервера. Если пользователь является администратором, используются предоставленные учетные данные. |
announceip | анонсирование IP-подсети | Выполняет анонсирование (announcement) указанной подсети для сервера с определенным ASN. |
backup_get_schedule | получение расписания бэкапов | Возвращает текущее расписание автоматических бэкапов для указанного сервера |
backup_list | получение списка бэкапов | Возвращает список доступных резервных копий для указанного оборудования (сервера) |
backup_save_schedule | сохранение расписания бэкапов | Сохраняет настроенное расписание резервного копирования для указанного сервера |
boot_dev | запуск загрузки с носителя | Запрашивает запуск сервера с указанного типа носителя (PXE или диск) в режиме UEFI или Legacy. |
check_backup_lock | проверка блокировки бэкапа | Проверяет наличие активной блокировки для выполнения операций с резервными копиями сервера. |
clear_pxe | очистка PXE конфигурации | Очищает текущую PXE конфигурацию для указанного хоста. |
create_backup | создание резервной копии | Инициирует процесс создания резервной копии для указанного сервера. Операция выполняется асинхронно через очередь. |
create_pxe | подготовка PXE конфигурации для переустановки | Создает конфигурацию для загрузки по сети (PXE) с целью установки выбранной ОС на сервер. Поддерживает настройку hostname, SSH-ключей и скриптов post-install. |
delete_backup | удаление бэкапа | Удаляет указанный бэкап сервера. Требуется имя бэкапа. |
deploy | развертывание сервера | Запускает процесс развертывания (деплоя) конкретного сервера по его ID или пресета в указанной локации. Поддерживает выбор ОС, настройку SSH-ключей и скриптов post-install. |
get_ipmi | получение IPMI данных сервера | Возвращает IP-адрес и модель интерфейса IPMI для указанного сервера. Может содержать несколько интерфейсов. |
get_traffic | получение трафика | Возвращает данные об IPv4 трафике для указанного сервера |
getserversforannounce | получение серверов для анонса | Возвращает список доступных серверов (rent или power_off), подходящих под ограничения по IP-подсетям и маскам, для выполнения процедуры анонса. |
groups | получение групп | Возвращает список групп для указанного сервера |
hard_off | принудительное выключение | Выполняет принудительное выключение сервера (Hard Off). Если сервер находится в OpenStack, выполняется принудительная перезагрузка. |
history | история | Возвращает историю событий сервера. |
list | получение списка оборудования | Возвращает список доступных серверов и оборудования с поддержкой расширенного поиска по различным параметрам (локация, статус, тип, IP, MAC и др.) |
off | выключение | Выключает сервер. |
on | включение | Включает сервер. |
order_instance | заказ инстанса / переустановка | Запуск процесса заказа нового сервера по пресету или выполнение переустановки (reinstall) существующего сервера с выбором ОС и дополнительного ПО. |
reboot | перезагрузка сервера | Отправляет запрос на перезагрузку оборудования. Если сервер находится в режиме ожидания, может потребоваться выполнение через IPMI. |
reinstall | инициализация переустановки | Создает ключ для начала процесса переустановки сервера и ставит задачу в очередь. |
remove_ipmi_user | удаление IPMI пользователя | Удаляет дополнительные учетные записи пользователей IPMI для указанного сервера. |
request_backup_link | запрос ссылки на бэкап | Запрашивает временную ссылку для скачивания резервной копии сервера. |
restore_backup | восстановление из бэкапа | Инициирует процесс восстановления сервера из указанного бэкапа. Метод является асинхронным и возвращает callback для отслеживания выполнения задачи. |
search | поиск оборудования | Возвращает список доступного или активного оборудования по различным фильтрам (группа, локация, статус, IP, MAC и др.) |
sensors | получение данных сенсоров | Возвращает данные о состоянии сенсоров для указанного сервера |
show | получение данных о сервере | Возвращает подробную информацию о сервере, включая аппаратное обеспечение (hwconfig), операционную систему, IP-адреса, интерфейсы и IPMI. |
status | получение статуса | Возвращает текущий статус сервера, данные о его состоянии и доступные параметры управления |
suspend | приостановка/разблокировка сервера | Запрашивает приостановку (suspend) или разблокировку (unsuspend) VPS/сервера. Для выполнения операции требуется наличие прав доступа и, в некоторых случаях, проверка на блокировки администратором. |
unified_server_search | единый поиск серверов | Единый поиск серверов по запросу. |
unit_reset | сброс IPMI модуля | Запрос на сброс (reset) устройства через интерфейс IPMI для указанного сервера. |
unsuspend | разблокировка сервера | Разблокирует сервер (unsuspend), если он был временно приостановлен. |
update_servers | обновление списка серверов пользователя | Обновляет список активных и ожидающих оплаты серверов для текущего пользователя, синхронизируя их с данными WHMCS. |
eq/abort_reinstall¶
Прерывает процесс переустановки сервера, удаляет связанные теги (reinstall_start, autodeploy_start, autodeploy_timeout) и восстанавливает настройки VLAN.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: abort_reinstall |
| token | ✅ | string | Авторизационный токен |
| id | ✅ | integer | ID сервера |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "\(module/\)action: invalid server id" }
```
eq/add_ipmi_admin¶
Добавляет пользователя с правами администратора в интерфейс IPMI для конкретного сервера. Если пользователь уже существует, возвращает его данные.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: add_ipmi_admin |
| id | ✅ | int | ID оборудования (сервера) |
| admin_user | ❌ | string | Имя администратора IPMI |
| admin_pass | ❌ | string | Пароль администратора IPMI |
| token | ✅ | string | API-токен аутентификации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Add IPMI user request failed" }
```
eq/add_ipmi_user¶
Создает нового пользователя IPMI для сервера. Если пользователь является администратором, используются предоставленные учетные данные.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: add_ipmi_user |
| token | ✅ | string | Authentication token |
| id | ✅ | int | ID оборудования (сервера) |
| admin_user | ❌ | string | Имя администратора IPMI |
| admin_pass | ❌ | string | Пароль администратора IPMI |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Add IPMI user request failed" }
```
eq/announceip¶
Выполняет анонсирование (announcement) указанной подсети для сервера с определенным ASN.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: announceip |
| id | ✅ | integer | ID оборудования/сервера |
| subnet | ❌ | string | Подсеть для анонсирования |
| server | ❌ | string | Сервер (опционально) |
| subnetaddr | ❌ | string | Адрес подсети |
| subnetaddrmask | ❌ | string | Маска подсети |
| asn | ❌ | string|boolean | Номер автономной системы (ASN). Если 'own', передается как false |
| ownasn | ❌ | string | Флаг использования собственного ASN |
| annonce | ❌ | boolean | Флаг анонса |
| return | ❌ | boolean | Возвращать результат |
| route | ❌ | string | Маршрут |
| cmnt | ❌ | string | Комментарий |
| checkboxes | ✅ | boolean | Подтверждение условий (ASRegistered, RKPIValid, SubNetNotSpamhaus, DataIsCorrect) |
| token | ✅ | string | API-токен аутентификации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Ошибка выполнения операции анонсирования" }
```
eq/backup_get_schedule¶
Возвращает текущее расписание автоматических бэкапов для указанного сервера
HTTP-метод: GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: backup_get_schedule |
| token | ✅ | string | Authentication token |
| id | ✅ | integer | ID оборудования (сервера) |
Пример запроса
Примеры ошибок
``` { "code": -2, "message": "EQ/backup_get_schedule: invalid server id" }
```
eq/backup_list¶
Возвращает список доступных резервных копий для указанного оборудования (сервера)
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: backup_list |
| token | ✅ | string | Токен авторизации |
| id | ✅ | integer | ID сервера |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "EQ/backup_list: invalid server id" }
```
eq/backup_save_schedule¶
Сохраняет настроенное расписание резервного копирования для указанного сервера
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: backup_save_schedule |
| token | ✅ | string | Токен авторизации |
| id | ✅ | integer | ID сервера |
| backup_schedule | ✅ | array | Массив с настройками расписания (days, time, timezone) |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Ошибка при сохранении расписания" }
```
eq/boot_dev¶
Запрашивает запуск сервера с указанного типа носителя (PXE или диск) в режиме UEFI or Legacy.
HTTP-метод: POST|GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: boot_dev |
| token | ✅ | string | Токен авторизации |
| id | ✅ | int | ID сервера |
| media | ✅ | string | Тип загрузочного носителя (например, pxe) |
| boot_mode | ❌ | string | Режим загрузки: auto (определяется автоматически), uefi или legacy |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Bootable media change request failed" }
```
eq/check_backup_lock¶
Проверяет наличие активной блокировки для выполнения операций с резервными копиями сервера.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: check_backup_lock |
| token | ✅ | string | Authentication token |
| id | ✅ | integer | ID оборудования (сервера) |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Request failed" }
```
eq/check_pin¶
Проверяет PIN-код для операций.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: check_pin |
| token | ✅ | string | Токен авторизации |
| pin | ✅ | string | PIN-код для проверки |
Пример запроса
eq/clear_pxe¶
Очищает текущую PXE конфигурацию для указанного хоста.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: clear_pxe |
| token | ✅ | string | Authentication token |
| id | ✅ | integer | Server ID |
| hostname | ❌ | string | Hostname for clearing PXE config |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Failed to submit clear PXE config request" }
```
eq/console¶
Запрашивает запуск консоли управления сервером через IPMI/NoVNC
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Действие (console) |
| token | ✅ | string | Токен авторизации |
| id | ✅ | integer | ID сервера |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Console request failed" }
```
eq/create_backup¶
Инициирует процесс создания резервной копии для указанного сервера. Операция выполняется асинхронно через очередь.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: create_backup |
| id | ✅ | int | ID оборудования (сервера), для которого создается бэкап |
| token | ❌ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Ошибка при инициации создания бэкапа" }
```
eq/create_pxe¶
Создает конфигурацию для загрузки по сети (PXE) с целью установки выбранной ОС на сервер. Поддерживает настройку hostname, SSH-ключей и скриптов post-install.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: create_pxe |
| token | ✅ | string | Токен авторизации |
| id | ✅ | int | ID сервера |
| root_pass | ✅ | string | Пароль root |
| os_id | ✅ | int | ID операционной системы |
| hostname | ❌ | string | Имя хоста |
| ssh_key | ❌ | string | SSH публичный ключ |
| post_install_script | ❌ | string | Скрипт после установки |
| post_install_callback | ❌ | string | URL для обратного вызова (callback) |
| reinstall_key | ❌ | string | Ключ переустановки |
| ❌ | string | Email пользователя | |
| os_name | ❌ | string | Имя ОС (alias) |
| disk_mirror | ❌ | string | Зеркалирование диска |
| activate_windows | ❌ | int | Активация Windows (0/1) |
| uefi | ❌ | int | Режим загрузки UEFI (0/1/-1) |
| attendedInstall | ❌ | string | Автоматическая установка |
| root_size | ❌ | int | Размер корневого раздела |
| deploy_ticket | ❌ | string | ID тикета Kayako |
| ignore_duplicated_install | ❌ | int | Игнорировать дубликаты установки |
| no_lvm | ❌ | int | Без использования LVM (0/1) |
| custom_domain | ❌ | string | Кастомный домен |
| manual_choice_dsk | ❌ | int | Ручной выбор диска (0/1) |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Create PXE config request failed: error_details" }
```
eq/delete_backup¶
Удаляет указанный бэкап сервера. Требуется имя бэкапа.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: delete_backup |
| token | ✅ | string | Токен авторизации |
| id | ✅ | int | ID оборудования (сервера) |
| name | ✅ | string | Имя бэкапа для удаления |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Ошибка удаления бэкапа" }
```
eq/deploy¶
Запускает процесс развертывания (деплоя) конкретного сервера по его ID или пресета в указанной локации. Поддерживает выбор ОС, настройку SSH-ключей и скриптов post-install.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: deploy |
| id | ❌ | int | ID конкретного сервера для деплоя. Если не указан, используется пресет. |
| preset | ❌ | string | Название или ID пресета оборудования |
| location | ✅ | int | ID локации (datacenter) |
| hostname | ❌ | string | Имя хоста для сервера |
| root_pass | ✅ | string | Пароль root |
| os_id | ❌ | int | ID операционной системы |
| ssh_key | ❌ | string | Публичный SSH ключ |
| post_install_script | ❌ | string | Скрипт для выполнения после установки |
| post_install_callback | ❌ | string | URL для обратного вызова после завершения деплоя |
| deploy_data | ❌ | string | Данные для деплоя (например, email) |
| deploy_options | ❌ | string | Параметры биллинга/локации |
| deploy_period | ✅ | string | Период оплаты (hourly, quarterly, semi-annually, annually) |
| deploy_notify | ❌ | int | Флаг уведомления о деплое (-1 - выключено, 0 - включено) |
| os_name | ❌ | string | Имя ОС (alias) |
| deploy_ticket | ❌ | string | ID тикета Kayako для привязки к деплою |
| imitate_error | ❌ | int | Имитация ошибки (0 или 1) |
| imitate_deploy | ❌ | int | Режим имитации деплоя (dry run) (0 или 1) |
| own_os | ❌ | int | Использовать собственную ОС (0 или 1) |
| jenkins_task | ❌ | string | ID задачи Jenkins |
| jenkins_tests | ❌ | int | Количество тестов Jenkins (-1 - нет) |
| traffic_plan | ✅ | int | ID тарифного плана трафика |
| disk_mirror | ❌ | string | Конфигурация зеркалирования дисков (например, RAID1) |
| deploy_comment | ❌ | string | Комментарий к деплою |
| ipv4_amount | ❌ | int | Количество IPv4 адресов |
| no_lvm | ❌ | string | Отключить LVM (0 или 1) |
| custom_domain | ❌ | string | Кастомный домен |
| token | ✅ | string | API-токен аутентификации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "EQ/deploy: Empty billing data." }
```
eq/get_ipmi¶
Возвращает IP-адрес и модель интерфейса IPMI для указанного сервера. Может содержать несколько интерфейсов.
HTTP-метод: POST|GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: get_ipmi |
| id | ✅ | int | ID сервера |
| token | ❌ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "No IPMI interfaces found" }
```
eq/get_traffic¶
Возвращает данные об IPv4 трафике для указанного сервера
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: get_traffic |
| id | ✅ | integer | ID сервера |
| token | ❌ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "EQ/get_traffic: invalid server id" }
```
eq/get_upgrade_key¶
Возвращает ключ апгрейда, привязанный к конкретному счету (invoice_id)
HTTP-метод: POST|GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: get_upgrade_key |
| token | ✅ | string | Токен авторизации |
| id | ❌ | int | ID сервера |
| invoice_id | ✅ | int | ID инвойса для поиска ключа апгрейда |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Ошибка запроса" }
```
eq/getserversforannounce¶
Возвращает список доступных серверов (rent или power_off), подходящих под ограничения по IP-подсетям и маскам, для выполнения процедуры анонса.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Имя действия: getserversforannounce |
| token | ✅ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "EQ: action required" }
```
eq/groups¶
Возвращает список групп для указанного сервера
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: groups |
| token | ✅ | string | Токен авторизации |
| id | ✅ | int | ID оборудования |
Пример запроса
Примеры ошибок
``` { "code": -2, "message": "EQ/groups: invalid server id" }
```
eq/hard_off¶
Выполняет принудительное выключение сервера (Hard Off). Если сервер находится в OpenStack, выполняется принудительная перезагрузка.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| id | ✅ | integer | ID сервера |
| token | ✅ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Stop request failed" }
```
eq/history¶
Возвращает историю событий сервера.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: history |
| id | ✅ | int | ID сервера |
| token | ✅ | string | Токен авторизации |
| type | ❌ | array<string> | Фильтр по типам событий |
| date_from | ❌ | string | Дата начала периода (YYYY-MM-DD) |
| date_to | ❌ | string | Дата конца периода (YYYY-MM-DD) |
Пример запроса
Пример успешного ответа
eq/list¶
Возвращает список доступных серверов и оборудования с поддержкой расширенного поиска по различным параметрам (локация, статус, тип, IP, MAC и др.)
HTTP-метод: POST|GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: list или search |
| token | ❌ | string | Токен авторизации |
| id | ❌ | int[] | Фильтр по ID серверов. Принимает несколько значений: id[]=1&id[]=2 |
| group | ❌ | string[] | Фильтр по группам оборудования. Принимает несколько значений: group[]=1CPU&group[]=2CPU |
| location | ❌ | string[] | Фильтр по локациям (например, RU, NL). Принимает несколько значений: location[]=RU&location[]=NL |
| status | ❌ | string[] | Фильтр по статусам. Принимает несколько значений: status[]=rent&status[]=power_off |
| type | ❌ | string[] | Тип оборудования (server, switch и т.д.). Принимает несколько значений: type[]=server&type[]=switch |
| ip | ❌ | string[] | Фильтр по IP адресу. Принимает несколько значений: ip[]=1.2.3.4&ip[]=5.6.7.8 |
| ❌ | string[] | Фильтр по email владельца. Принимает несколько значений: email[]=user@test.com&email[]=admin@test.com | |
| full | ❌ | boolean | Возвращать полную информацию (для администраторов) |
| mac | ❌ | string[] | Фильтр по MAC адресу |
| account_id | ❌ | int[] | Фильтр по ID аккаунта (billing identity) |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "EQ/list: invalid server id" }
```
eq/off¶
Выключает сервер.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: off |
| id | ✅ | int | ID сервера |
| token | ✅ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
eq/on¶
Включает сервер.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: on |
| id | ✅ | int | ID сервера |
| token | ✅ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
eq/order_instance¶
Запуск процесса заказа нового сервера по пресету или выполнение переустановки (reinstall) существующего сервера с выбором ОС и дополнительного ПО.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| id | ❌ | int | ID существующего сервера для переустановки. Если не указан, создается новый инстанс по пресету. |
| preset | ❌ | string | ID или имя пресета для заказа нового сервера. |
| root_pass | ✅ | string | Пароль root. Не должен содержать символы @ или #. |
| os_template | ❌ | string | Шаблон ОС для деплоя из шаблона (для админов). |
| soft_id | ❌ | int | ID дополнительного программного обеспечения. |
| ssh_key | ❌ | string | Публичный SSH ключ. |
| post_install_script | ❌ | string | Скрипт после установки. |
| hostname | ❌ | string | Имя хоста. |
| root_size | ❌ | int | Размер корневого раздела (GB). |
| ipv4_amount | ❌ | int | Количество IPv4 адресов. |
| vlan | ❌ | int | ID приватного VLAN. |
| custom_domain | ❌ | string | Кастомный домен (проверяется на запрещенные слова). |
| deploy_period | ❌ | string | Период оплаты (hourly, quarterly, semi-annually, annually). |
| traffic_plan | ❌ | int | ID тарифного плана трафика. |
| token | ✅ | string | API-токен аутентификации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Reinstall init for server 123 failed: error message" }
```
eq/ovirt_novnc¶
Запрашивает доступ к консоли oVirt через протокол noVNC для указанного сервера.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: ovirt_novnc |
| id | ✅ | integer | ID оборудования (сервера) |
| token | ❌ | string | Токен авторизации |
| white_ip | ❌ | string | Белый IP для доступа к консоли |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "oVirt noVNC console request failed" }
```
eq/reboot¶
Отправляет запрос на перезагрузку оборудования. Если сервер находится в режиме ожидания, может потребоваться выполнение через IPMI.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: reboot |
| token | ✅ | string | Токен авторизации |
| id | ✅ | integer | ID оборудования |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Reboot request failed" }
```
eq/reinstall¶
Создает ключ для начала процесса переустановки сервера и ставит задачу в очередь.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| token | ✅ | string | Токен авторизации |
| id | ✅ | int | ID сервера |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "EQ/reinstall: invalid server id" }
```
eq/remove_ipmi_user¶
Удаляет дополнительные учетные записи пользователей IPMI для указанного сервера.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: remove_ipmi_user |
| id | ✅ | integer | ID сервера |
| token | ✅ | string | Токен авторизации |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "EQ/remove_ipmi_user: invalid server id" }
```
eq/request_backup_link¶
Запрашивает временную ссылку для скачивания резервной копии сервера.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: request_backup_link |
| token | ✅ | string | Токен авторизации |
| id | ✅ | integer | ID оборудования (сервера) |
| name | ❌ | string | Имя бэкапа |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Request failed: error_message" }
```
eq/restore_backup¶
Инициирует процесс восстановления сервера из указанного бэкапа. Метод является асинхронным и возвращает callback для отслеживания выполнения задачи.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: restore_backup |
| id | ✅ | int | ID сервера |
| name | ✅ | string | Имя бэкапа для восстановления |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Request failed: error_details" }
```
eq/search¶
Возвращает список доступного или активного оборудования по различным фильтрам (группа, локация, статус, IP, MAC и др.)
HTTP-метод: POST|GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: search |
| group | ❌ | array<string> | Фильтр по группам (например: 1CPU, 2CPU) |
| dc | ❌ | array<int> | ID дата-центра |
| location | ❌ | array<string> | Код локации (RU, NL и т.д.) |
| rack | ❌ | array<int> | ID стойки |
| status | ❌ | array<string> | Статус сервера (rented, power_off и т.д.) |
| owner | ❌ | array<string> | Владелец оборудования |
| component | ❌ | array<int> | ID аппаратных компонентов |
| type | ❌ | array<string> | Тип оборудования (server, switch) |
| ip | ❌ | array<string> | Фильтр по IP адресу |
| mac | ❌ | array<string> | Фильтр по MAC адресу |
| account_id | ❌ | array<int> | ID аккаунта биллинга |
| billing | ❌ | array<string> | Регион биллинга (en/ru) |
| ❌ | array<string> | Фильтр по email клиента | |
| name_client | ❌ | array<string> | Имя клиента |
| full | ❌ | int|boolean | Возвращать полные данные |
| kvm | ❌ | array<string> | Фильтр по KVM |
| serialNumber | ❌ | array<string> | Серийный номер |
| id | ❌ | array<int> | Фильтр по ID оборудования |
| token | ✅ | string | API-токен аутентификации |
Пример запроса
Пример успешного ответа
{
"result": "OK",
"servers": [
{
"id": 123,
"hostname": "srv-01.hostkey.com",
"status": "rented",
"ip": [],
"location": {},
"project_ids": [],
"mounted_iso": "",
"ipmi_model": "none",
"is_prebill": false,
"prebill_service_id": null,
"prebill_rate": 0.0,
"prebill_rate_total": 0.0,
"prebill_period": "",
"tags": []
}
]
}
Примеры ошибок
``` { "code": -2, "message": "EQ: action required" }
```
eq/sensors¶
Возвращает данные о состоянии сенсоров для указанного сервера
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: sensors |
| id | ✅ | int | ID оборудования |
| token | ❌ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Sensors request failed" }
```
eq/set_pin¶
Устанавливает PIN-код для операций.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: set_pin |
| token | ✅ | string | Токен авторизации |
| new_pin | ✅ | string | Новый PIN-код (4-10 символов) |
| old_pin | ❌ | string | Старый PIN-код |
| no_pin_req | ❌ | string | Флаг пропуска проверки PIN (true/false) |
Пример запроса
Пример успешного ответа
eq/show¶
Возвращает подробную информацию о сервере, включая аппаратное обеспечение (hwconfig), операционную систему, IP-адреса, интерфейсы и IPMI.
HTTP-метод: GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| id | ✅ | int | ID оборудования |
| token | ❌ | string | Токен авторизации |
Пример успешного ответа
{
"result": "OK",
"server_data": {
"id": 123,
"status": "rent",
"type": "Server",
"hostname": "srv-01.hostkey.com",
"owner": "admin@hostkey.com",
"Condition_Component": "power_off",
"ip": [
{
"IP": "192.168.1.1",
"status": "active"
}
],
"os": {
"id": 5,
"name": "Ubuntu 22.04 LTS"
},
"location": {
"dc_location": "NL",
"rack_id": 10,
"rack_position": 5
}
},
"hardware": {
"cpu": "Intel Xeon E-2388G",
"ram": "64GB",
"hdd": "2x960GB SSD"
},
"groups": [
{
"tag": "group1",
"value": "val"
}
],
"licenses": [],
"reinstall": null,
"IP": [
"192.168.1.1"
],
"interfaces": [
{
"id": 1,
"type": "eth0",
"mac": "AA:BB:CC:DD:EE:FF",
"IsMain": true,
"Status": "up"
}
],
"IPMI": {
"model": "Dell iDRAC 9",
"interfaces": []
},
"tags": [
{
"tag": "server_name",
"value": "my-server"
}
]
}
Примеры ошибок
``` { "code": -1, "message": "Nothing found for 123" }
```
eq/status¶
Возвращает текущий статус сервера, данные о его состоянии и доступные параметры управления
HTTP-метод: POST|GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| id | ✅ | int | ID оборудования |
| token | ❌ | string | Токен авторизации |
Примеры ошибок
``` { "code": -1, "message": "EQ/status: invalid server id" }
```
eq/status_check¶
Возвращает текущий статус оборудования (availability/status check)
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| token | ✅ | string | Authentication token |
Пример успешного ответа
Примеры ошибок
``` { "code": -2, "message": "Authentication required" }
```
eq/suspend¶
Запрашивает приостановку (suspend) или разблокировку (unsuspend) VPS/сервера. Для выполнения операции требуется наличие прав доступа и, в некоторых случаях, проверка на блокировки администратором.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: suspend |
| id | ✅ | int | ID сервера для выполнения операции |
| token | ✅ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Suspend request failed" }
```
eq/traffic_add¶
Увеличивает лимит исходящего трафика для сервера и создает соответствующий инвойс в WHMCS.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: traffic_add |
| id | ✅ | int | ID сервера |
| new_limit | ✅ | int | Новый лимит трафика в ТБ |
| token | ✅ | string | API-токен аутентификации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "\(module/\)action: invalid new_limit" }
```
eq/unified_server_search¶
Единый поиск серверов по запросу.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: unified_server_search |
| token | ✅ | string | Токен авторизации |
| query | ✅ | string | Запрос поиска (строка или числовой ID) |
Пример запроса
Пример успешного ответа
eq/unit_reset¶
Запрос на сброс (reset) устройства через интерфейс IPMI для указанного сервера.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: unit_reset |
| id | ✅ | int | ID оборудования/сервера |
| token | ✅ | string | Токен авторизации |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "IPMI unit reset request failed: error_details" }
```
eq/unsuspend¶
Разблокирует сервер (unsuspend), если он был временно приостановлен.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: unsuspend |
| id | ✅ | int | ID сервера |
| token | ✅ | string | Токен авторизации |
Пример запроса
Примеры ошибок
``` { "code": -1, "message": "Unsuspend request failed" }
```
eq/update_servers¶
Обновляет список активных и ожидающих оплаты серверов для текущего пользователя, синхронизируя их с данными WHMCS.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| token | ✅ | string | Токен авторизации |
| action | ❌ | string | Действие (update_servers) |
| show_products | ❌ | int | Флаг отображения продуктов (1 - показывать) |
| load_servers_only | ❌ | string | Загружать только серверы (true/false) |
Пример запроса
Пример успешного ответа
Примеры ошибок
``` { "code": -1, "message": "Failed to retrive servers list, billing error: ..." }
```