Публичный API VDSina

Общая информация
Получение и использование токена
Описание параметров и возвращаемых ошибок
Список доступных действий
Информация об аккаунте и прогнозе отключения, GET /v1/account
Баланс аккаунта, GET /v1/account.balance
Лимиты аккаунта, GET /v1/account.limit
Список групп серверов, GET /v1/server-group
Список дата-центров, GET /v1/datacenter/ID
Список шаблонов ОС, GET /v1/template/ID
Список тарифных планов для серверов, GET /v1/server-plan/ID
SSH-ключи для серверов
ISO для серверов
Серверы
Перезагрузка сервера, PUT /v1/server.reboot/ID
Переустановка сервера, PUT /v1/server.reinstall/ID
Установка пароля сервера, PUT /v1/server.password/ID
Изменение тарифного плана сервера, PUT /v1/server.plan/ID
Продление сервера, PUT /v1/server.prolong/ID
VNC-подключение, GET /v1/server.vnc/ID
Резервная копия сервера
Подключение и отключение ISO для сервера
Дополнительные IP-адреса для сервера
Локальный IP-адрес для сервера
Статистика сервера, GET /v1/server.stat/ID
Операции по балансам аккаунта
Управление DNS

Общая информация

URL для подключения: https://userapi.vdsina.ru
Формат данных входящего запроса и возвращаемых данных: JSON.
Поддерживаемые методы запросов: GET, POST, PUT, DELETE.
Стандартное применение: GET – для получения, POST – для создания, PUT – для изменения и DELETE – для удаления объекта.
Авторизация: токен в HTTP-заголовке Authorization.
Все даты и метки времени возвращаются в зоне Europe/Moscow (часовом поясе, в котором располагается сервер API).
Существуют ограничения на количество запросов на аутентификацию с одного IP-адреса, при частых безуспешных попытках аутентификации IP-адрес блокируется на 4 часа. Также осуществляется проверка IP-адреса по чёрным спискам Spamhaus (SBL, SBL CSS, XBL, SBL DROP, TOR), аутентификация с таких адресов запрещена.

Получение и использование токена

Постоянный токен авторизации можно получить в личном кабинете в просмотре информации пользователя аккаунта:


Токен меняется при изменении пароля пользователя.

Для получения токена авторизации с помощью API необходимо пройти аутентификацию, отправив POST-запрос в локацию /v1/auth с JSON-объектом, внутри которого будут указаны параметры email и password (данные пользователя, с которым вы входите в панель управления), например, так:

curl -X POST -H 'Content-Type: application/json' "https://userapi.vdsina.ru/v1/auth" -d '{"email": "admin@domain.ru", "password": "Pas$W0rD"}'

Результатом вернётся JSON-объект с новым токеном:

{
    "status": "ok",
    "status_msg": "Token info",
    "data": {
      "token": "024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad"
    }
}

После этого полученный токен можно использовать для любых запросов к API, например, чтобы получить баланс аккаунта:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/account.balance"

Результатом вернётся JSON-объект с данными о балансе:

{
    "status": "ok",
    "status_msg": "Balance information",
    "data": {
      "real": 2818,
      "bonus": 1240,
      "partner": 790
    }
}

Токен будет иметь те же права доступа, что и указанный пользователь, от чьего имени делался запрос на получение токена. Если вам нужно ограничить действия для запросов через API, необходимо создать отдельного пользователя в аккаунте с необходимым набором прав и выполнять запросы с токеном этого пользователя.

Описание параметров и возвращаемых ошибок

Предусмотрен возврат стандартных HTTP-статусов, как успешных, так и ошибочных, например:

  • 200 – запрос завершился без ошибки,
  • 400 – данные переданы неверно или запрос сформирован неправильно,
  • 401 – необходима аутентификация,
  • 403 – доступ запрещён,
  • 500 – внутренняя ошибка сервера и другие.

В результате всегда должен возвращаться JSON-объект, некоторые его обязательные поля:

  • status – статус выполнения запроса, обычно «ok» или «error»,
  • status_msg – текстовая расшифровка статуса ошибки или успеха, может быть пустой строкой,
  • data – объект с возвращаемыми данными.

В качестве необязательных полей могут присутствовать:

  • status_code – числовой статус выполнения запроса, обычно из списка стандартных HTTP-статусов,
  • description – подробное описание возникшей ошибки, может быть пустой строкой.

Список доступных действий

Информация об аккаунте и прогнозе отключения, GET /v1/account

Возвращается ID и название аккаунта, дата создания и прогноз отключения (дата, до которой достаточно средств на оплату всех услуг):

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/account"

Например, в результате возвращается JSON-объект:

{
  "status": "ok",
  "status_msg": "Account information",
  "data": {
    "account": {
      "id": 7,
      "name": "a7"
    },
    "created": "2014-11-19 15:28:42",
    "forecast": "2020-08-12",
    "can": {
      "add_user": true,
      "add_service": true,
      "convert_to_cash": true
    }
  }
}

Данные прогноза отключения и баланса кэшируются и изменяются только в случае реальных изменений по счетам или услугам. В объекте can будут перечислены некоторые возможности аккаунта: возможность создавать новых пользователей, заказывать новые услуги, выводить деньги со счетов.

Баланс аккаунта, GET /v1/account.balance

Возвращаются все доступные балансы, основной, бонусный и партнёрский, если операций по счёту не было, то баланс не возвращается:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/account.balance"
Лимиты аккаунта, GET /v1/account.limit

Возвращаются все доступные лимиты по типам услуг:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/account.limit"

Например, в результате возвращается JSON-объект:

{
  "status": "ok",
  "status_msg": "Account limits information",
  "data": {
    "server": {
      "max": 1,
      "now": 1
    },
    "server-ip4": {
      "max": 100,
      "child_max": 10,
      "now": 1
    },
    …
  }
}

Для каждого типа услуги будет возвращён объект, в котором указаны ограничения: max – максимум услуг такого типа в аккаунте, child_max – максимум услуг такого типа в родительской услуге (например, количество IPv4-адресов для одного сервера), now – количество заказанных услуг такого типа в аккаунте на данный момент.

Список групп серверов, GET /v1/server-group

Возвращается список групп серверов с кратким описанием, например:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/server-group"

Полученные ID групп должны использоваться в дальнейшем при запросе информации по дополнительным объектам и при заказе услуги сервера.

Список дата-центров, GET /v1/datacenter/ID

Возвращается список дата-центров по ID группы серверов, например:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/datacenter/1"

Например, в результате возвращается JSON-объект:

{
  "status": "ok",
  "status_msg": "Datacenters list",
  "data": [
    {
      "id": 1,
      "name": "Дата-центр RU",
      "country": "ru",
      "active": true
    },
    {
      "id": 2,
      "name": "Дата-центр NL",
      "country": "nl",
      "active": false
    }
  ]
}

Данные представляют из себя массив объектов, флаг active указывает на возможность заказа сервера в конкретном дата-центре.

Список шаблонов ОС, GET /v1/template/ID

Список шаблонов операционных систем, доступных для установки или переустановки сервера, список возвращается по ID группы серверов, например:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/template/1"

Например, в результате возвращается JSON-объект:

{
  "status": "ok",
  "status_msg": "OS templates list",
  "data": [
    {
      "id": 1,
      "name": "CentOS 7 x64",
      "image": "http://api2.vdsina.ru/uploads/template/43a7db318bd2ea21eacabe44abf62fff.png",
      "active": true,
      "has_instruction": false,
      "ssh-key": true,
      "server-plan": [
        1,
        2
      ]
    },
    {
      "id": 2,
      "name": "Windows Server 2019",
      "image": "http://api2.vdsina.ru/uploads/template/2c96181313b73d1ee22075fc41c05fef.png",
      "active": true,
      "has_instruction": false,
      "ssh-key": false,
      "server-plan": [
        2,
        3
      ]
    }
  ]
}

Данные представляют из себя массив объектов, флаг active указывает на возможность заказа сервера с конкретным шаблоном ОС. Флаг ssh-key указывает на возможность использовать авторизацию по пользовательскому ключу SSH в конкретном шаблоне. Массив server-plan содержит в себе ID тарифных планов, для которых доступна установка сервера с конкретным шаблоном ОС.

Список тарифных планов для серверов, GET /v1/server-plan/ID

Список тарифных планов для серверов возвращается по ID группы серверов, например:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/server-plan/1"

Например, в результате возвращается JSON-объект:

{
  "status": "ok",
  "status_msg": "Server plans list",
  "data": [
    {
      "id": 2,
      "name": "Plan-2",
      "cost": 20,
      "period": "день",
      "min_money": 100,
      "can_bonus": true,
      "description": "Test Plan",
      "data": {
        "vCPU": "1 core",
        "Нагрузка": "100 %",
        "RAM": "4 ГБ",
        "SSD": "32 ГБ",
        "Трафик": "32 ТБ"
      },
      "server-group": 1,
      "selected": false,
      "active": true,
      "enable": true
    },
    {
      "id": 4,
      "name": "Plan-4",
      "cost": 30,
      "period": "день",
      "min_money": 1000,
      "can_bonus": true,
      "description": "TEST",
      "data": {
        "vCPU": "2 core",
        "Нагрузка": "100 %",
        "RAM": "4 ГБ",
        "SSD": "64 ГБ",
        "Трафик": "32 ТБ"
      },
      "server-group": 1,
      "selected": true,
      "active": false,
      "enable": false
    }
  ]
}

Данные представляют из себя массив объектов, флаги active и enable указывают на возможность заказа сервера с конкретным тарифным планом. Объект data содержит в себе краткие характеристики тарифного плана. Поля cost и period содержат в себе цену тарифа за указанный период (обычно 1 день). Поле min_money указывает, сколько средств нужно иметь на основном балансе для заказа тарифа, флаг can_bonus указывает на возможность оплачивать тариф средствами с бонусного баланса.

SSH-ключи для серверов

Доступные методы:

  • GET /v1/ssh-key – список всех доступных клиенту SSH-ключей
  • GET /v1/ssh-key/ID – просмотр данных SSH-ключа, ID ключа
  • PUT /v1/ssh-key/ID – правка данных, ID ключа, доступные поля: name, data
  • POST /v1/ssh-key – создание нового ключа, доступные поля: name, data
  • DELETE /v1/ssh-key/ID – удаление SSH-ключа, ID ключа
Поле Признак Описание, тип
nameобязательноСтрока, название ключа
dataобязательноСтрока, текстовое представление ключа (base64-кодировка)
ISO для серверов

Доступные методы:

  • GET /v1/iso – список всех загруженных клиентом ISO-образов
  • GET /v1/iso/ID – просмотр данных ISO, ID услуги ISO
  • POST /v1/iso – создание и загрузка нового ISO, ID услуги ISO, доступные поля: url
  • DELETE /v1/iso/ID – удаление ISO, ID услуги ISO
Поле Признак Описание, тип
urlобязательноСтрока, URL для скачивания файла образа, прямая ссылка на файл MIME-формата application/x-iso9660-image или application/x-iso-image, максимальный размер файла – 8 гигабайт, протоколы: http, https, ftp, ftps
Серверы

Доступные методы:

  • GET /v1/server – список всех серверов клиента, в случае, если не хватает каких-либо данных о сервере в списке, необходимо получить данные о конкретном сервере отдельным запросом по его ID
  • GET /v1/server/ID – просмотр сервера и его параметров, ID услуги сервера
  • PUT /v1/server/ID – правка данных, ID услуги сервера, доступные поля: name, autoprolong
  • POST /v1/server – создание нового сервера, доступные поля: server-group, datacenter, server-plan, template, ssh-key, backup, host, name
  • DELETE /v1/server/ID – удаление сервера со всеми его данными и зависимыми услугами, ID услуги сервера
Поле Признак Описание, тип
nameнеобязательноСтрока, текстовое название услуги для удобства клиента
autoprolongнеобязательно0 или 1, признак автоматического продления услуги
server-groupобязательноЧисло, ID группы серверов
datacenterобязательноЧисло, ID дата-центра, может быть недоступен для заказа при отсутствии ресурсов
server-planобязательноЧисло, ID тарифного плана, должен быть из нужной группы
templateнеобязательноЧисло, ID шаблона ОС для установки, взаимоисключающий параметр c backup, шаблон ОС может быть недоступен для конкретных тарифных планов
ssh-keyнеобязательноЧисло, ID SSH-ключа для пользователя root в поддерживаемых ОС, игнорируется в случае восстановления из резервной копии
backupнеобязательноЧисло, ID услуги резервной копии, из которой нужно произвести восстановление после создания услуги сервера, взаимоисключающий параметр c template, резервная копия должна находиться в том же дата-центре, что и создаваемый сервер и быть не более размера диска выбранного тарифного плана
hostнеобязательноСтрока, текстовое значение для hostname сервера, должно быть правильным доменным именем, игнорируется в случае восстановления из резервной копии

Пример получения информации о сервере:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/server/1345"

И пример возвращаемого ответа в формате JSON:

{
  "status": "ok",
  "status_msg": "Server information",
  "data": {
    "id": 1345,
    "name": "v1301.hosted-by-vdsina.ru",
    "status": "active",
    "created": "2019-07-11 20:05:49",
    "updated": "2019-07-12 17:50:02",
    "end": "2019-07-12 20:08:27",
    "autoprolong": true,
    "ip": [
      {
        "id": 1574,
        "ip": "185.251.37.62",
        "type": "4",
        "host": "host-185-251-37-62.hosted-by-vdsina.ru",
        "gateway": "185.251.37.1",
        "netmask": "255.255.255.0",
        "mac": "52:54:00:00:05:41"
      }
    ],
    "ip_local": null,
    "host": "v1301.hosted-by-vdsina.ru",
    "server-plan": {
      "id": 44,
      "name": "Минималь+"
    },
    "server-group": {
      "id": 5,
      "name": "VDS"
    },
    "template": {
      "id": 22,
      "name": "Ubuntu 16.04"
    },
    "datacenter": {
      "id": 29,
      "name": "Serverius",
      "country": "nl"
    },
    "ssh-key": null,
    "can": {
      "reboot": true,
      "update": true,
      "delete": true,
      "prolong": false,
      "backup": true,
      "ip_local": true
    },
    "bandwidth": {
      "current_month": "20987612334",
      "past_month": "0"
    }
  }
}
Перезагрузка сервера, PUT /v1/server.reboot/ID

Перезагрузка сервера по ID услуги сервера. Дополнительно можно передать поле type, который может принимать значения soft или hard. При установке type=soft (по умолчанию), серверу будет отправлен сигнал на перезагрузку. При установке type=hard, операционной системе будет отправлен сигнал завершения работы, через некоторое время будет произведена проверка статуса сервера, если он выключен, то он снова будет запущен, в противном случае сервер будет выключен принудительно (с возможной потерей данных в работающей системе), а после этого снова запущен.

Поле Признак Описание, тип
typeнеобязательноСтрока, soft или hard
Переустановка сервера, PUT /v1/server.reinstall/ID

Переустановка сервера с новым шаблоном ОС по ID услуги сервера. Передаваемые поля: template, ssh-key, host.

Поле Признак Описание, тип
templateобязательноЧисло, ID шаблона ОС для установки, шаблон ОС может быть недоступен для конкретных тарифных планов
ssh-keyнеобязательноЧисло, ID SSH-ключа для пользователя root в поддерживаемых ОС
hostнеобязательноСтрока, текстовое значение для hostname сервера, должно быть правильным доменным именем
Установка пароля сервера, PUT /v1/server.password/ID

Установка пароля сервера по ID услуги сервера. Дополнительно нужно передать поле password с новым паролем. Сервер будет перезапущен, устанавливается пароль VNC и пароль пользователя root в поддерживаемых Linux-дистрибутивах. Внимание, если вы используете ОС, установленную из своего ISO или на сервере установлена ОС Windows или FreeBSD, пароль администратора ОС изменён не будет, в таком случае меняется только пароль VNC.

Поле Признак Описание, тип
passwordобязательноСтрока, новый пароль
Изменение тарифного плана сервера, PUT /v1/server.plan/ID

Изменение (расширение) тарифного плана сервера по ID услуги сервера. Изменение тарифного плана на младший технически невозможно. Дополнительно нужно передать поле server-plan с числовым ID нового тарифного плана. Сервер будет перезапущен. После смены тарифного плана ресурсы будут добавлены автоматически, расширить файловую систему на весь новый раздел диска необходимо вручную средствами ОС.

Поле Признак Описание, тип
server-planобязательноЧисло, ID тарифного плана, должен быть из нужной группы
Продление сервера, PUT /v1/server.prolong/ID

Продление сервера по ID услуги сервера в случае, если сервер не был запущен после оплаты, например, из-за отключённого автоматического продления. Дополнительные поля не передаются.

VNC-подключение, GET /v1/server.vnc/ID

Получение данных VNC-подключения для сервера по ID услуги.
Пример получения информации:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/server.vnc/1345"

И пример возвращаемого ответа в формате JSON:

{
  "status": "ok",
  "status_msg": "Server VNC information",
  "data": {
    "host": "kvm9249.vdsina.ru",
    "port": 5907,
    "password": "XAqc18T8sv7J1keZ"
  }
}
Резервная копия сервера

Доступные методы:

  • GET /v1/backup – список всех услуг с резервными копиями
  • GET /v1/backup/ID – подробная информация услуги с резервной копией, ID услуги резервной копии
  • POST /v1/backup/ID – создание новой резервной копии сервера, ID услуги сервера, без дополнительных полей
  • PUT /v1/backup/ID – правка данных услуги резервной копии сервера, ID услуги резервной копии, доступны поля: name, autoprolong
  • DELETE /v1/backup/ID – удаление услуги резервной копии со всеми данными, ID услуги резервной копии
  • PUT /v1/server.backup/ID – восстановление резервной копии на сервер, ID услуги сервера, необходимое поле: backup
  • POST /v1/server.backup/ID – создание новой резервной копии сервера, ID услуги сервера, без дополнительных полей
Поле Признак Описание, тип
nameнеобязательноСтрока, текстовое название услуги для удобства клиента
autoprolongнеобязательно0 или 1, признак автоматического продления услуги
backupобязательноЧисло, ID услуги резервной копии, из которой нужно произвести восстановление услуги сервера, резервная копия должна находиться в том же дата-центре, что и сервер и быть не более размера диска выбранного тарифного плана
Подключение и отключение ISO для сервера

Доступные методы:

  • PUT /v1/server.iso/ID – подключение ISO для сервера, ID услуги сервера, необходимое поле: iso
  • DELETE /v1/server.iso/ID – отключение ISO для сервера, ID услуги сервера, без дополнительных полей
Поле Признак Описание, тип
isoобязательноЧисло, ID услуги с ISO для подключения
Дополнительные IP-адреса для сервера

Доступные методы:

  • GET /v1/server-ip – список всех услуг с дополнительными IP для серверов
  • POST /v1/server-ip/ID – заказ дополнительных IP для сервера, ID услуги сервера, необходимые поля: type, count
  • PUT /v1/server-ip/ID – удаление дополнительных IP-адресов для сервера по списку, ID услуги дополнительных IP, дополнительные поля: type, delete
  • DELETE /v1/server-ip/ID – удаление услуги с дополнительными IP для сервера, ID услуги дополнительного IP
  • GET /v1/server.ip/ID – список услуг с дополнительными IP для сервера, ID услуги сервера
  • POST /v1/server.ip/ID – заказ дополнительных IP для сервера, ID услуги сервера, необходимые поля: type, count
  • PUT /v1/server.ip/ID – удаление дополнительных IP-адресов для сервера по списку, ID услуги сервера, дополнительные поля: type delete
  • GET /v1/ip – список всех присвоенных клиенту IP-адресов (IP-пул)
  • GET /v1/ip/ID – подробная информация об адресе в IP-пуле, ID адреса
  • PUT /v1/ip/ID – изменение настроек адреса в IP-пуле, ID адреса, можно изменить PTR-запись для адреса (хост), доступно поле host
Поле Признак Описание, тип
typeнеобязательноЧисло, 4 или 6, тип IP-адреса, по умолчанию 4
countобязательноЧисло, количество создаваемых IP-адресов, учитываются лимиты аккаунта (account.limit), больше нуля
deleteобязательноСписок чисел, список ID IP-адресов для удаления
hostобязательноСтрока, текстовое значение для hostname сервера, должно быть правильным доменным именем
Локальный IP-адрес для сервера

Доступные методы:

  • GET /v1/server.ip.local/ID – информация о локальном IP для сервера, ID услуги сервера
  • POST /v1/server.ip.local/ID – создание локального IP для сервера, ID услуги сервера
  • DELETE /v1/server.ip.local/ID – удаление локального IP-адреса для сервера, ID услуги сервера
Статистика сервера, GET /v1/server.stat/ID

Получение данных статистики для сервера по ID услуги. По умолчанию выводится информация за последние 30 дней. При указании параметров from и to можно получить вывод статистики за указанный период, в параметрах допустимо указывать дату/время в стандартных форматах. Пример получения информации:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/server.stat/1345"

И пример возвращаемого ответа в формате JSON:

{
  "status": "ok",
  "status_msg": "Server stat information",
  "data": [
    {
      "dt": "2019-07-12 00:00:00",
      "stat": {
        "cpu": 2.0839426931666667,
        "disk_reads": 1,
        "disk_writes": 11,
        "lnet_rx": 0,
        "lnet_tx": 0,
        "vnet_rx": 9948,
        "vnet_tx": 103054
      }
    },
    ...
  ]
}

Статистика выводится блоками через каждый час. Значения можно расшифровать: cpu – средняя загрузка процессора в процентах за сегмент времени, disk_reads/disk_writes – количество операций чтения/записи за указанный сегмент времени, lnet_rx/lnet_tx – принятый и переданный трафик по локальной сети в байтах за сегмент времени, vnet_rx/vnet_tx – принятый и переданный трафик во внешней сети (интернет) в байтах.

Операции по балансам аккаунта

Доступные методы:

  • GET /v1/operation – список всех операций всех типов, доступные поля: from, to
  • GET /v1/operation/ID – подробная информация об операции, ID операции
  • POST /v1/operation – создание новой операции пополнения баланса аккаунта, доступные поля: summ
  • DELETE /v1/operation/ID – удаление неоплаченной операции пополнения, ID операции
Поле Признак Описание, тип
fromнеобязательноСтрока, дата, с которой получать список операций
toнеобязательноСтрока, дата по которую получать список операций
summнеобязательноЧисло, сумма пополнения

Пример получения информации:

curl -X GET -H 'Authorization: 024ccf95e8544260c0f1f78a6da38d376d8636f6baa326c0da7b0a2c207693ad' "https://userapi.vdsina.ru/v1/operation?from=2019-07-17&to=2019-07-19"

И пример возвращаемого ответа в формате JSON:

{
  "status": "ok",
  "status_msg": "Operation list",
  "data": [
    {
      "id": 2177311,
      "purse": "real",
      "type": 1,
      "status": 0,
      "summ": "1000",
      "created": "2019-07-18 14:39:29",
      "updated": "2019-07-18 14:48:28",
      "comment": "Пополнение баланса",
      "payment": {
        "type": "webmoney",
        "name": "WebMoney R"
      },
      "service": null,
      "paylink": "https://cp.vdsina.ru/operation/select/41cd63800a8beb1961527ddeebf530a521391f"
    },
    {
      "id": 2170929,
      "purse": "real",
      "type": -1,
      "status": 1,
      "summ": "8.3",
      "created": "2019-07-17 14:24:25",
      "updated": "2019-07-17 14:24:25",
      "comment": "Списание за услугу Сервер 1 ГБ #137841 – api test server",
      "payment": null,
      "service": {
        "id": 137841
      },
      "paylink": null
    },
    ...
  ]
}

Краткое описание некоторых возвращаемых полей:
purse – тип баланса (real – основной баланс, bonus – бонусный баланс, partner – партнёрский баланс), type – тип операции (1 – зачисление, -1 – списание), status – статус операции (0 – не оплачено, 1 – оплачено), summ – сумма операции (приведено к строковому типу). Если это операция пополнения и её можно оплатить, у такой операции есть поле paylink, в нём содержится ссылка на процесс оплаты, процесс не требует аутентификации в панели управления и ссылка может быть передана кому угодно, ссылка уникальная и одноразовая, если операция оплачена, повторно оплатить по такой ссылке нельзя.

Управление DNS

Доступные методы:

  • GET /v1/dns – список всех услуг с размещёнными в DNS доменами
  • GET /v1/dns/ID – подробная информация услуги с доменом в DNS, ID услуги c доменом
  • POST /v1/dns – создание нового домена в DNS, доступные поля: name, ip
  • DELETE /v1/dns/ID – удаление услуги домена в DNS, ID услуги с доменом
  • GET /v1/dns.record/ID – список DNS-записей для услуги с доменом, ID услуги c доменом
  • POST /v1/dns.record/ID – создания новой DNS-записи, ID услуги с доменом, доступные поля: host, type, priority, tag, value
  • PUT /v1/dns.record/ID – правка существующей DNS-записи, ID записи DNS, доступные поля: priority, tag, value
Поле Признак Описание, тип
nameобязательноСтрока, имя домена для размещения в DNS
ipнеобязательноСтрока, адрес IPv4, на основе которого нужно создать DNS-записи по умолчанию
hostобязательноСтрока, имя DNS-записи, либо с постфиксом домена, либо только префикс, доступны также @ и * в имени, должно быть правильным именем домена в итоге
typeобязательноСтрока, тип записи, один из списка: A, AAAA, CNAME, MX, NS, SRV, CAA, TXT
valueобязательноСтрока, значение DNS-записи, в зависимости от типа разные проверки, например для записи типа A значение должно быть правильным IPv4-адресом
tagнеобязательноСтрока, необходимый параметр для записей типа CAA, может быть одним из списка: issue, issuewild, iodef, unknown
priorityнеобязательноПоложительное число, приоритет/флаг DNS-записи для поддерживаемых типов (MX, SRV, CAA)
Закрыть окно
Авторизация
Неверный логин или пароль
Закрыть окно
Регистрация
На указанный email-адрес будет отправлен пароль
Закрыть окно
Напоминание пароля
Закрыть окно
Напоминание пароля