API для управления серверами, IP и финансами



Теперь с помощью нового API можно создавать серверы и управлять ими, заказывать IP-адреса к серверам и управлять их PTR-записями, создавать SSH-ключи, а также оплачивать услуги.

Как устроен API?
При создании нового API мы старались сделать его максимально простым и понятным. API построен на формате JSON и использует стандартную авторизацию через HTTP-заголовок Authorization, в котором передаётся API-ключ.
API-ключ можно получить в личном кабинете здесь cp.mnogoweb.ru/account/a/api

Пример взаимодействия
Давайте рассмотрим несколько простых примеров.
Предположим, для некой задачи нужно получить список услуг. Для этого нужно сделать следующее:
1. Отправить GET-запрос на эндпоинт api.mnogoweb.com/v1/services
2. В заголовках передать API-ключ: Authorization: Bearer Q61PJ8R…
В результате мы получим ответ со списоком услуг:
{
  "status": true,
  "response": {
    "count": 1,
    "services": [
      {
        "id": 1234,
        "type": 3,
        "tarif": 750,
        "status": 1,
        "domain": "domain.ru",
        "identifier": "account1",
        "order_date": "2020-12-01 10:00:00",
        "start_date": "2020-12-01 10:00:00",
        "to_date": "2020-12-01 10:00:00",
        "discount": 0,
        "monthly_price": 0,
        "price_curr": "RUR",
        "parent_service_id": 0,
        "is_renewal_allowed": true,
        "is_auto_charge_allowed": true
      }
    ]
  }
}

Или другой пример: создадим новый сервер. Для этого нужно сделать следующее:
1. Отправить POST-запрос на эндпоинт api.mnogoweb.com/v1/servers
2. В заголовках передать API-ключ: Authorization: Bearer Q61PJ8R…
3. В теле запроса передать JSON следующего вида:
{
  "type": "vps",
  "location": "msk",
  "cpu": 1,
  "ram": 2048,
  "disk": 10,
  "bandwidth": 250,
  "os": "almalinux9",
  "backups": "daily"
}

В результате мы получим ответ вида:
{
  "status": true,
  "response": {
    "message": "Order has been placed",
    "service_id": 12345,
    "invoice_id": 12345,
    "amount": 900,
    "curr": "RUR",
    "is_paid": true
  }
}

Обратите внимание на значение параметра service_id, с его помощью затем можно будет получить информацию о созданном сервере и его ID для работы через другие методы.
api.mnogoweb.com/doc.html
Выделенные серверы OVH
Выделенные серверы Hetzner

0 комментариев

Оставить комментарий