Портал > База знаний > API > API документация
API документация — VPS
v1.4 22.04.2026
REST API для управления VPS: создание, установка, переустановка, перезагрузка, мониторинг.
Все запросы аутентифицируются через заголовок X-Key.Base URL: https://cp.inferno.name/api_client.php
Содержание
Аутентификация
GET Тарифы и шаблоны · GET Баланс
POST Создать заказ · GET Список заказов · POST Отменить заказ
POST Установка VPS · POST Переустановка
GET Информация о VPS · POST Reboot / Stop / Boot
SSH ключи · GET Услуги
Аутентификация
API использует ключи. Ключ передаётся в заголовке X-Key каждого запроса. Client ID уже зашит в ключ — передавать отдельно не нужно.
Внимание! Для создания API ключей необходимо включить двухфакторную аутентификацию (2FA). Ключ отображается только один раз — сохраните его.
Получение ключа:
1. Включите 2FA — Личный кабинет → Security → Two-Factor Authentication
2. Создайте API ключ — Security → вкладка «API Keys» → выберите доступные методы
3. Настройте IP Whitelist — укажите IP-адреса, с которых разрешён доступПример запроса:
curl https://cp.inferno.name/api_client.php?action=balance \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY"
GET Тарифы и шаблоны
?action=list
Возвращает список тарифных планов (products) и шаблонов ОС (ostpls).
curl https://cp.inferno.name/api_client.php?action=list \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY"Примечание: ostpls — имя шаблона для install. products → pid для создания заказов.
GET Баланс
?action=balance
curl https://cp.inferno.name/api_client.php?action=balance \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY"
POST Создать заказ
?action=create
Создаёт новый заказ на VPS. После создания — статус Pending до оплаты.
Параметры:
Параметр Тип Описание pid *обяз. int ID продукта из action=list extra_ips int Доп. IP-адреса (1–9)
curl https://cp.inferno.name/api_client.php?action=create \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"pid": 303}'Ответ:
{
"result": "success",
"orderid": 47000,
"invoiceid": 366000,
"productids": "49700"
}
GET Список заказов
?action=orders
Возвращает все заказы — активные и неоплаченные (Pending).
curl https://cp.inferno.name/api_client.php?action=orders \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY"
POST Отменить заказ
?action=cancel
Отменяет неоплаченный (Pending) заказ. Параметр: orderid *обяз.
curl https://cp.inferno.name/api_client.php?action=cancel \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"orderid": 46000}'Успех: {"result": "success"}
Ошибка: {"result": "fail", "message": "Order ID not found or Status not Pending"}
POST Установка VPS
?action=install
Установка ОС на оплаченный VPS. С run=0 — проверка без запуска.
Параметры:
Параметр Тип Описание orderid *обяз. int ID оплаченного заказа ostpl *обяз. string Шаблон ОС, напр. centos7-64-default sshkey_ids string ID ключей через запятую run *обяз. int 0 — проверка, 1 — запуск
curl https://cp.inferno.name/api_client.php?action=install \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"orderid": 47000, "ostpl": "centos7-64-default", "sshkey_ids": "1,2", "run": 1}'
POST Переустановка VPS
?action=reinstall
ВНИМАНИЕ: Переустановка уничтожает все данные. Убедитесь, что есть бэкап.
Параметры как у install + дополнительные:
serviceid — ID сервиса (альтернатива orderid)
ip — IP-адрес VPS (альтернатива orderid)
admin_password — пароль администратора (8–63 символа)
vps_password — root-пароль (8–63 символа)
curl https://cp.inferno.name/api_client.php?action=reinstall \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"orderid": 47000, "ostpl": "centos7-64-default", "run": 1}'
GET Информация о VPS
?action=getinfo
Статус, IP, дата продления, состояние VPS, шаблон ОС, root-пароль.
Параметры: orderid *обяз. или ip (при этом orderid=0).
curl https://cp.inferno.name/api_client.php?action=getinfo \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"orderid": 47012}'Ответ:
{
"result": "success",
"orderid": 47012,
"orderStatus": "Active",
"dedicatedip": "37.1.0.111",
"nextduedate": "2025-06-01",
"vps_info": {
"vps_name": "37-1-0-111",
"iso": "centos7-64-default",
"real_state": "Включен",
"online": true
}
}
POST Reboot / Stop / Boot
Три команды управления питанием. Все принимают: orderid, serviceid или ip.
Action Описание reboot Перезагрузка stop Остановить boot Запустить
curl https://cp.inferno.name/api_client.php?action=reboot \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"orderid": 47012}'
SSH ключи
POST sshkey.add — добавить публичный ключ
Параметр: sshkey *обяз.
curl https://cp.inferno.name/api_client.php?action=sshkey.add \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"sshkey": "ssh-ed25519 AAAAC3NzaC... user@host"}'GET sshkey.list — список ключей
curl https://cp.inferno.name/api_client.php?action=sshkey.list \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY"POST sshkey.remove — удалить ключ
Параметр: id *обяз. — ID из sshkey.list
curl https://cp.inferno.name/api_client.php?action=sshkey.remove \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"id": 7}'
GET Услуги
Список услуг: ?action=services
curl https://cp.inferno.name/api_client.php?action=services \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY"Детали услуги: ?action=getService
Параметр: serviceid *обяз. — ID из action=services
curl https://cp.inferno.name/api_client.php?action=getService \
-H "Content-Type: application/json" \
-H "X-Key: YOUR_API_KEY" \
-d '{"serviceid": 49700}'
Вопросы и предложения по API — откройте тикет в личном кабинете.
Добавить в избранное
Распечатать статью