presets.php¶
В этой статье
Модуль управления пресетами: получение списков, поиск подходящих серверов, группировка и отображение информации о конфигурациях
Методы API¶
| Метод | Действие | Описание |
|---|---|---|
add | создание пресета | Создает новый кастомный пресет с заданными характеристиками оборудования и ценой. |
clone | клонирование пресета | Создает дубликат существующего пресета с новым именем. |
groups | получение групп | Возвращает список групп пресетов. |
history | получение истории | Возвращает историю действий, связанных с пресетами за указанный период или по типу. |
info | получение информации о пресетах | Возвращает список пресетов с указанием цен в выбранных валютах. |
list | получение списка пресетов | Возвращает список доступных пресетов с учетом локации и прав доступа. |
remove | удаление пресета | Удаляет пресет и связанные с ним теги. |
search | поиск серверов | Возвращает список серверов, подходящих под параметры указанного пресета. |
show | показ пресета | Возвращает детальную информацию о конкретном пресете. |
presets/add¶
Создает новый кастомный пресет с заданными характеристиками оборудования и ценой.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: add |
| token | ✅ | string | Токен авторизации администратора. |
| params[name] | ✅ | string | Название пресета. |
| params[active] | ❌ | boolean | Статус активности пресета. По умолчанию -1. |
| params[virtual] | ❌ | boolean | Флаг виртуального типа сервера. По умолчанию -1. |
| params[monthly_ru] | ❌ | number | Ежемесячная стоимость в RUB. По умолчанию -1. |
| params[monthly_com] | ❌ | number | Ежемесячная стоимость в USD (коммерческая). По умолчанию -1. |
| params[monthly_usd] | ❌ | number | Ежемесячная стоимость в USD. По умолчанию -1. |
| params[description] | ❌ | string | Описание пресета. |
| params[cpu] | ❌ | string | Процессор (CPU). |
| params[ram] | ❌ | number | Объем оперативной памяти. По умолчанию -1. |
| params[hdd] | ❌ | number | Объем жесткого диска. По умолчанию -1. |
| params[gpu] | ❌ | string | Видеокарта (GPU). |
| params[locations] | ❌ | array | Список локаций. Принимает несколько значений: locations[]=val1&locations[]=val2 |
| params[price] | ❌ | string | Цена пресета в формате JSON. |
| params[locations_openstack] | ❌ | array | Локации для OpenStack. Принимает несколько значений: locations_openstack[]=val1&locations_openstack[]=val2 |
Пример запроса
Пример успешного ответа
{
"result": "OK",
"action": "add",
"id": 123,
"name": "Custom Preset",
"virtual": true,
"monthly_ru": 5000,
"monthly_com": 60,
"monthly_usd": 55,
"price": "{\"amount\": 10}",
"description": "High performance preset",
"cpu": "Intel Xeon",
"ram": 32,
"hdd": 512,
"gpu": "RTX 3080",
"locations": [
"NL",
"DE"
],
"locations_openstack": [
"AMS"
]
}
presets/clone¶
Создает дубликат существующего пресета с новым именем.
HTTP-метод: POST
Параметры:
| action | ✅ | string | Идентификатор метода: clone |
|---|---|---|---|
| token | ✅ | string | Токен авторизации администратора. |
| params[id] | ✅ | integer | Идентификатор пресета для клонирования. |
| params[name] | ✅ | string | Новое имя для клонированного пресета. |
| name | ❌ | string | Новое имя для клонируемого пресета. |
Пример запроса
presets/groups¶
Возвращает список групп пресетов.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: groups |
| token | ❌ | string | Токен авторизации. |
Пример успешного ответа
presets/history¶
Возвращает историю действий, связанных с пресетами за указанный период или по типу.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: history |
| token | ✅ | string | Авторизационный токен пользователя |
| type | ❌ | array<string> | Тип истории. Принимает несколько значений: type[]=val1&type[]=val2 |
| date_from | ❌ | string | Дата начала периода для фильтрации истории |
| all | ❌ | boolean | Флаг получения всей истории без учета даты |
Пример запроса
Пример успешного ответа
presets/info¶
Возвращает список пресетов с указанием цен в выбранных валютах.
HTTP-метод: GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: info |
| currencies | ❌ | string | Список валют для отображения цен через запятую. |
| params[currencies] | ❌ | array<string> | Список валют для отображения цен через запятую. |
| token | ❌ | string | Уникальный идентификатор сессии или токен авторизации для выполнения запроса. |
Пример запроса
Пример успешного ответа
presets/list¶
Возвращает список доступных пресетов с учетом локации и прав доступа.
HTTP-метод: GET
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: list |
| token | ❌ | string | Токен авторизации. |
| location | ❌ | string | Код локации или ID локации для фильтрации доступных пресетов. |
Пример успешного ответа
presets/remove¶
Удаляет пресет и связанные с ним теги.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: remove |
| token | ✅ | string | Токен авторизации администратора. |
| id | ✅ | integer | Идентификатор пресета для удаления. |
Пример запроса
presets/search¶
Возвращает список серверов, подходящих под параметры указанного пресета.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: search |
| token | ✅ | string | Токен авторизации |
| params[name] | ❌ | string | Имя пресета для поиска. |
| params[scope] | ❌ | string | Область поиска. Допустимые значения: free |
| params[location] | ❌ | string | Локация (код или ID дата-центра) для фильтрации серверов. |
| name | ❌ | string | Название пресета для поиска подходящих серверов. |
| location | ❌ | string | Географическое местоположение или дата-центр сервера. |
Пример запроса
Пример успешного ответа
presets/show¶
Возвращает детальную информацию о конкретном пресете.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: show |
| token | ❌ | string | Токен авторизации (опционально для публичного просмотра) |
| params[id] | ❌ | integer | Идентификатор пресета. |
| params[name] | ❌ | string | Имя пресета (используется как альтернатива ID). |
| params[limit] | ❌ | integer | Лимит возвращаемых объектов. |
| name | ❌ | string | Название пресета для фильтрации результатов. |
| limit | ❌ | string | Максимальное количество возвращаемых записей в ответе. |
| web_ip | ❌ | string | IP-адрес пользователя для проверки прав доступа и ограничений. |
Пример запроса
Пример успешного ответа
presets/show_suitable¶
Возвращает список серверов, которые подходят под параметры указанного пресета.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: show_suitable |
| token | ✅ | string | Токен авторизации администратора. |
| id | ✅ | integer | Идентификатор пресета для поиска подходящих серверов. |
| params[cpu] | ❌ | string | Требуемый процессор. Допустимые значения: % |
| params[ram] | ❌ | number | Требуемый объем RAM. |
| params[hdd] | ❌ | number | Требуемый объем HDD. Допускается формат 'Xy' (например, 2x100 для диапазона). |
| params[gpu] | ❌ | string | Требуемая видеокарта в формате 'количествоxмодель' (например, 1xGTX1080). |
| params[location] | ❌ | string | Локация сервера. По умолчанию NL. |
| params[virtual] | ❌ | boolean | Тип виртуализации (виртуальный/физический). По умолчанию -1. |
| name | ❌ | string | Название пресета для подбора подходящих серверов. |
| virtual | ❌ | integer | Признак использования виртуальной среды или физического сервера. |
| cpu | ❌ | string | Требуемое количество ядер процессора или модель CPU. |
| ram | ❌ | integer | Необходимый объем оперативной памяти в МБ. |
| hdd | ❌ | integer | Требуемый объем дискового пространства в ГБ. |
| gpu | ❌ | string | Спецификации или наличие графического ускорителя. |
| location | ❌ | string | Географическое расположение дата-центра для размещения сервера. |
Пример запроса
Пример успешного ответа
{
"result": "OK",
"action": "show_suitable",
"id": 123,
"name": "High RAM Preset",
"servers": [
{
"id": 501,
"status": "available",
"location": "NL",
"type": "Component1_ref_tableName",
"owner": "Component1_owner",
"Condition_Component": "Component1_Condition_Component",
"ip": "IpAdress2_ip",
"config": "Component1_hwconfig",
"r_warehouse": "Rack1_warehouse",
"dc_warehouse": "dataCenter_warehouse",
"full_location": "Rack1_description-Component1_pos-Component1_id",
"days_left": 0,
"due_date": "2023-01-01"
}
]
}
Примеры ошибок
presets/speed_test_locations_get¶
Запрашивает список доступных локаций для проведения теста скорости.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: speed_test_locations_get |
| token | ✅ | string | Токен авторизации. |
Пример запроса
Пример успешного ответа
presets/update¶
Обновляет параметры существующего пресета.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: update |
| token | ✅ | string | Токен авторизации администратора. |
| params[id] | ✅ | integer | Идентификатор пресета для обновления. |
| params[name] | ❌ | string | Новое имя пресета. |
| params[active] | ❌ | boolean | Статус активности. По умолчанию -1. |
| params[virtual] | ❌ | boolean | Тип виртуализации. По умолчанию -1. |
| params[monthly_ru] | ❌ | number | Цена в RUB. По умолчанию -1. |
| params[monthly_com] | ❌ | number | Цена в USD (коммерческая). По умолчанию -1. |
| params[monthly_usd] | ❌ | number | Цена в USD. По умолчанию -1. |
| params[description] | ❌ | string | Описание пресета. |
| params[cpu] | ❌ | string | Процессор (CPU). |
| params[ram] | ❌ | number | Объем оперативной памяти. По умолчанию -1. |
| params[hdd] | ❌ | number | Объем жесткого диска. По умолчанию -1. |
| params[gpu] | ❌ | string | Видеокарта (GPU). |
| params[locations] | ❌ | array | Список локаций. Принимает несколько значений: locations[]=val1&locations[]=val2 |
| params[price] | ❌ | string | Цена в формате JSON (используется при оплате от имени администратора). |
| params[locations_openstack] | ❌ | array | Локации для OpenStack. Принимает несколько значений: locations_openstack[]=val1&locations_openstack[]=val2 |
| name | ❌ | string | Название пресета для конфигурации сервера. |
| active | ❌ | integer | Статус активности пресета (например, -1 для значения по умолчанию). |
| virtual | ❌ | integer | Флаг виртуализации или тип среды исполнения. |
| monthly_ru | ❌ | integer | Ежемесячная стоимость услуги в российских рублях. |
| monthly_com | ❌ | integer | Ежемесячная стоимость услуги в коммерческой валюте. |
| monthly_usd | ❌ | integer | Ежемесячная стоимость услуги в долларах США. |
| description | ❌ | string | Текстовое описание характеристик пресета. |
| cpu | ❌ | string | Количество или модель центрального процессора. |
| ram | ❌ | integer | Объем оперативной памяти в МБ. |
| hdd | ❌ | integer | Общий объем дискового пространства в ГБ. |
| gpu | ❌ | string | Характеристики или наличие графического ускорителя. |
| locations | ❌ | string | Список доступных локаций размещения оборудования. |
| locations_openstack | ❌ | string | Список локаций для облачной инфраструктуры OpenStack. |
| price | ❌ | string | Сложная структура стоимости в формате JSON. |
Пример запроса