Перейти к содержанию

presets.php

Модуль управления пресетами серверов: получение списков, группировка, поиск подходящих серверов и детализация конфигураций с ценами в разных валютах.

Методы API

Метод Действие Описание
groups получение групп Возвращает список доступных групп пресетов
info получение информации о валютах для пресетов Возвращает список доступных пресетов с учетом выбранных валют (по умолчанию EUR, RUB)
list получение списка пресетов Возвращает список доступных пресетов серверов с фильтрацией по локации и правам доступа
search поиск серверов Возвращает список подходящих серверов для указанного пресета с учетом локации и доступности (free/all)
show получение пресета Возвращает информацию о пресете по ID или имени. Поддерживает фильтрацию и лимиты.

presets/groups

Возвращает список доступных групп пресетов

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: groups
token string Токен авторизации

Пример запроса

curl -s "https://invapi.hostkey.ru/presets.php" -X POST \
--data "action=groups" \
--data "token=7bc29eb23fb1b879b21fce509597f07c"
Пример успешного ответа
{
"result": "OK",
"action": "groups",
"data": []
}
Примеры ошибок

``` { "code": -1, "message": "Internal Server Error" }

```

presets/info

Возвращает список доступных пресетов с учетом выбранных валют (по умолчанию EUR, RUB)

HTTP-метод: GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: info
token string Токен авторизации
currencies string Список валют через запятую (например: EUR,RUB,USD)

Пример запроса

curl -s "https://invapi.hostkey.ru/presets.php" -X GET \
--data "action=info"
Пример успешного ответа
{
"result": "OK",
"action": "info",
"presets": [
{
"id": 101,
"name": "Standard VPS",
"price": {
"EUR": 15.0,
"RUB": 1500
},
"available": 5,
"amount": 15.0,
"component_id": 2,
"server_type": "kvm",
"tags": [
{
"id": 1,
"name": "ssd"
}
]
}
]
}
Примеры ошибок

``` { "code": -1, "message": "action required" }

```

presets/list

Возвращает список доступных пресетов серверов с фильтрацией по локации и правам доступа

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: list
token string Токен авторизации. Если передан, проверяются права доступа. Если не передан или невалиден, используется публичный режим (убирается поле total).
location string Фильтр по локации (например, NL, RU). По умолчанию 'NL'.

Пример запроса

curl -s "https://invapi.hostkey.ru/presets.php" -X POST \
--data "action=list"
Пример успешного ответа
{
"result": "OK",
"action": "list",
"presets": [
{
"id": 101,
"name": "VPS Basic",
"description": "Базовый виртуальный сервер",
"cpu": 2,
"ram": 4096,
"hdd": 50,
"gpu": null,
"virtual": 1,
"active": 1,
"locations": "NL,DE",
"price": {
"EUR": 15.0,
"RUB": 1500.0,
"USD": 16.5
},
"monthly_ru": 1500,
"monthly_com": 15,
"monthly_usd": 16.5,
"internal": 0,
"available": 5,
"total": 10,
"server_type": "Virtual Private Server",
"tags": [
{
"component_id": 101,
"tag": "example_tag",
"value": "example_value"
}
]
}
]
}
Примеры ошибок

``` { "code": -1, "message": "presets/list error: Database connection failed", "details": { "action": "list", "module": "presets" } }

```

presets/search

Возвращает список подходящих серверов для указанного пресета с учетом локации и доступности (free/all)

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Действие (search)
token string Токен авторизации
name string Имя пресета для поиска
location string Локация (код или ID)

Пример запроса

curl -s "https://invapi.hostkey.ru/presets.php" -X POST \
--data "action=search" \
--data "name=my_preset" \
--data "location=NL"
Пример успешного ответа
{
"result": "OK",
"action": "search",
"servers": [
{
"id": 123,
"server_id": 123,
"type": "Component1",
"owner": "owner_name",
"status": "sale",
"location": "NL",
"config": "hwconfig_data",
"full_location": "Rack-Pos-ID",
"ip": "1.2.3.4",
"days_left": 30,
"due_date": "2024-12-31T23:59:59Z"
}
]
}
Примеры ошибок

``` { "code": -1, "message": "Access denied or invalid token" }

```

presets/show

Возвращает информацию о пресете по ID или имени. Поддерживает фильтрацию и лимиты.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: show
token string Токен авторизации. Если передан, проверяет права доступа и фильтрует контент (например, блокировка для определенных регионов).
id integer ID пресета для фильтрации.
name string Имя пресета для фильтрации.
limit integer Ограничение количества возвращаемых записей.

Пример запроса

curl -s "https://invapi.hostkey.ru/presets.php" -X POST \
--data "action=show"
Пример успешного ответа
{
"result": "OK",
"action": "show",
"presets": [
{
"id": 123,
"name": "Standard VPS",
"description": "Базовая конфигурация",
"active": 1,
"virtual": 0,
"cpu": "2 vCPU",
"ram": "4096",
"hdd": "80 SSD",
"gpu": null,
"locations": "NL,DE",
"locations_openstack": "",
"monthly_ru": 500,
"monthly_com": 1000,
"monthly_usd": 15,
"price": {
"EUR": 12.5,
"RUB": 1200,
"USD": 15.0
},
"tags": [
{
"id": 1,
"name": "popular"
}
],
"internal": 0,
"server_type": "vps",
"available": 1,
"total": 10,
"regions": {
"NL": "10+",
"DE": "5"
},
"hourly_usd": 0.025,
"hourly_com": 0.02,
"hourly_ru": 0.0083
}
]
}
Примеры ошибок

``` { "code": -1, "message": "JSON encode failed" }

```

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×