Портал > База знаний > API > 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 и добавлению новых функций, сообщите нам об этом




Этот ответ был полезен?

Добавить в избранное Добавить в избранное    Распечатать статью Распечатать статью