Портал > База знаний > API > API документация
API документация (VPS)
0. Получение API ключа
Получить ключ для API вы можете по запросу:
https://cp.inferno.name/api_client.php?action=getApiKey&email={EMAIL}&pass={PASSWORD}
подставив вместо {EMAIL} и {PASSWORD} ваши email и пароль для доступа к личному кабинету.1. Список тарифов и шаблонов
Допустимы GET и POST параметры. api_client.php?action=list Результат: 1) ostpls - список шаблонов 2) products - список тарифных планов
2. Создать заказ
Входные параметры (POST или GET): cid - ид клиента, например 777 key - апи ключ клиента pid - идентификатор продукта (из предыдущей функции), например 303 - api_client.php?action=create&cid=777&key=XXXXXXXX&pid=303 Результат: { "result": "success", "orderid": 47000, // идентификатор заказа, его следует сохранить "invoiceid": 366000, "productids": "49700" }
3. Получить список заказов
Возвращает как активные, так и неоплаченные (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" }, // ...... }
4. Отменить заказ
Отменить можно только 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" }
5. Запустить инсталл впс
В качестве входного параметра потребуется оплаченный заказ Входные параметры: 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 Пример правильного ответа: [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 )6. Получить информацию о впс
Получить информацию о указанном заказе Входные параметры: 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" } }
7. Перезагрузить впс
Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа api_client.php?action=reboot&cid=777&key=XXXXXXXXX&orderid=47012
8. Остановить впс
Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа api_client.php?action=stop&cid=777&key=XXXXXXXXX&orderid=47012
9. Запустить впс
Входные параметры: cid - ид клиента, например 777 key - апи ключ клиента orderid - идентификатор заказа api_client.php?action=boot&cid=777&key=XXXXXXXXX&orderid=47012
10. SSH ключи авторизации
Добавить SSH ключ: action=sshkey.add sshkey=ssh-rsa AAAAB.. label
После создания пары ключей, содержимое файла публичного ключа необходимо закодировать в кодировке URLENCODE.
Пример: api_client.php?action=sshkey.add&cid=777&key=XXXXXXXXX (sshkey передавать POST запросом)
Пример для CURL:curl -d "action=sshkey.add&cid=XXXXXX&key=ZZZZZZZZZZZZZZZZZZ&sshkey=ssh-rsa%20AAAA_body_of_public_ssh_key_should_be_here_EvCSSnOQ%3D%3D%20example%40email.here" -X POST -H "Content-Type: application/x-www-form-urlencoded" https://cp.inferno.name/api_client.php
Просмотреть список ключей: api_client.php?action=sshkey.list&cid=777&key=XXXXXXXXX Удалить ключ: api_client.php?action=sshkey.remove&cid=777&key=XXXXXXXXX&id=7
Если у вас есть пожелания или предложения по улучшению API и добавлению новых функций, сообщите нам об этом
Добавить в избранное
Распечатать статью