Портал > База знаний > API > API документация
API документация (VPS)
0. Получение API ключа
Получить ключ для API вы можете по запросу:
curl https://cp.inferno.name/api_client.php?action=getApiKey \ -H "Content-Type: application/json" \ -d '{"email":"your_email","pass":"your_password","generate":0}'
подставив вместо {EMAIL} и {PASSWORD} ваши email и пароль для доступа к личному кабинету. Если в параметре "generate" передать 1, то будет создан новый ключ (прежний перестанет работать).
Полученные значения cid и key необходимо использовать в последующих API запросах. ВАЖНО: Перед получением ключа, пожалуйста, создайте тикет в службу поддержки и укажите, с каких IP адресов вы будете обращаться к API, мы
добавим эти адреса в Whitelist.1. Список тарифов и шаблонов
curl https://cp.inferno.name/api_client.php?action=list -H "Content-Type: application/json" Результат: 1) ostpls - список шаблонов 2) products - список тарифных планов
2. Получить доступный баланс
curl https://cp.inferno.name/api_client.php?action=balance \ -H "Content-Type: application/json" \ -H "X-Key: YOUR_API_KEY" \ -d '{"cid":YOUR_CLIENT_ID}'
3. Создать заказ
Входные параметры (POST,GET,JSON): cid - ид клиента, например 777 key - апи ключ клиента pid - идентификатор продукта (из предыдущей функции), например 303 - api_client.php?action=create&cid=777&key=XXXXXXXX&pid=303 Результат: { "result": "success", "orderid": 47000, // идентификатор заказа, его следует сохранить "invoiceid": 366000, "productids": "49700" }
4. Получить список заказов
Возвращает как активные, так и неоплаченные (Pending) заказы. Входные параметры (POST или GET): cid - ид клиента, например 777 key - апи ключ клиента api_client.php?action=orders&cid=777&key=XXXXXXXXXXXX Результат: "orders": { "47200": { "id": "47200", "ordernum": "8634530000", "amount": "5.00", "invoiceid": "366000", "status": "Pending" }, // ...... }
5. Отменить заказ
Отменить можно только Pending (неоплаченный) заказ Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа, который следует отменить api_client.php?action=cancel&cid=777&key=XXXXXXXXX&orderid=46000 Результат: { "result": "success" } Или: { "result": "fail", "message": "Order ID not found or Status not Pending" }
6. Запустить установку/переустановку впс
В качестве входного параметра потребуется оплаченный заказ Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа, для которого следует запустить инсталл ostpl - имя шаблона для инсталла, например centos7-64-default (см. первую функцию)
sshkey_ids - список идентификаторов ssh ключей через запятую (например 1,2,3)
run - 0 (только проверка входящих параметров) или 1 (запуск установки) api_client.php?action=install&cid=777&key=XXXXXXX&orderid=47000&ostpl=centos7-64-default&sshkey_ids=NNN&run=1 - установка нового VPSapi_client.php?action=reinstall&cid=777&key=XXXXXXX&orderid=47000&ostpl=centos7-64-default&sshkey_ids=NNN&run=1 - переустановка ранее созданного VPS
Пример правильного ответа: [method] => createVPS [result] => success [msg] => ok [retx] => Array ( [result] => success [msg] => VSCD: VPS added to queue [error_code] => 0 ) Если впс уже создается: Array ( [method] => createVPS [result] => fail [msg] => Vps exists with current main_id (21968) , W:47012 [error_code] => 904 )7. Получить информацию о впс
Получить информацию о указанном заказе Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа, для которого надо получить информацию. api_client.php?action=getinfo&cid=777&key=XXXXXXXXX&orderid=47012 Пример ответа: { "result": "success", "orderid": 47012, "orderStatus": "Active", "productStatus": "Active", "dedicatedip": "", "vps_info": { "result": "success", "message": "", "main_id": "21968", "vps_name": "37-1-0-111", "ip": "37.1.0.111", "real_state": "Включен", "vps_password": "XXXXXXXXXXX" } }
xx.xx.xx.xx - IP адрес вашего VPS
Также вы можете передать orderid=0 и добавить параметр ip=xx.xx.xx.xx, где8. Перезагрузить впс
Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа api_client.php?action=reboot&cid=777&key=XXXXXXXXX&orderid=47012
9. Остановить впс
Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа api_client.php?action=stop&cid=777&key=XXXXXXXXX&orderid=47012
10. Запустить впс
Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа api_client.php?action=boot&cid=777&key=XXXXXXXXX&orderid=47012
11. SSH ключи авторизации
Добавить SSH ключ: action=sshkey.add sshkey=ssh-rsa AAAAB.. label
Пример: curl https://cp.inferno.name/api_client.php?action=sshkey.add \ -H "Content-Type: application/json" \ -H "X-Key: YOUR_APIKEY" \ -d '{"cid":YOUR_CID, "sshkey":"ssh-ed25519 AAAAC3XXXXXXXXXXXXXXXX email@mail.com"}'Просмотреть список ключей: api_client.php?action=sshkey.list&cid=777&key=XXXXXXXXX Удалить ключ: api_client.php?action=sshkey.remove&cid=777&key=XXXXXXXXX&id=712. Получить список услуг
Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента api_client.php?action=services&cid=777&key=XXXXXXXXX
13. Получить более подробную информацию об услуге (getService)
Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента serviceid - идентификатор сервиса (полученный функцией services) api_client.php?action=getService&cid=777&key=XXXXXXXXX&serviceid=YYY
Если у вас есть пожелания или предложения по улучшению API и добавлению новых функций, сообщите нам об этом
Добавить в избранное Распечатать статью