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

saas.php

В этой статье

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

Методы API

Метод Действие Описание
clone клонирование приложения Создает клон существующего SaaS-приложения с новым именем.
delete удаление приложения Удаляет установленную SaaS-панель и отменяет связанные услуги.
get_deployment_history_report получение отчета по истории развертывания Возвращает отчет о истории развертываний за указанный период для конкретного плана.
install установка приложения Запускает процесс установки выбранной SaaS-панели для клиента. Проверяет доступность, регион и баланс пользователя.
install_cancel отмена установки Отменяет процесс текущей установки приложения.
install_restart перезагрузка установки Перезапускает процесс установленной SaaS-панели.
list получение списка SaaS-панелей Возвращает список доступных или установленных SaaS-панелей с учетом налогов и региональных ограничений.
my_app_metrics метрики приложения Получает метрики для конкретного установленного приложения.
my_apps мои приложения Возвращает список приложений, установленных текущим пользователем.
upgrade обновление панели Запускает процесс обновления установленной SaaS-панели. Требуется валидный ID панели и учетная запись.

saas/get_deployment_history_report

Возвращает отчет о истории развертываний за указанный период для конкретного плана.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: get_deployment_history_report
token ✅ string Токен авторизации
days ❌ integer Период в днях для отчета (от 1 до 365). По умолчанию 90.
plan_id ❌ integer ID плана для фильтрации отчета.

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=get_deployment_history_report" \
--data "token=HOSTKEY_TOKEN" \
--data "days=30" \
--data "plan_id=123"
Пример успешного ответа
{
"result": "OK",
"action": "get_deployment_history_report",
"data": [
{
"id": 123,
"date": "2024-05-20T14:30:00Z",
"status": "success",
"details": {
"panel_id": 5,
"customer_id": 100
}
}
]
}
Примеры ошибок
{
"code": -1,
"message": "Get deployment history report error: [error_text]"
}

saas/install

Запускает процесс установки выбранной SaaS-панели для клиента. Проверяет доступность, регион и баланс пользователя.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: install
token ✅ string Токен авторизации
panel_id ❌ integer ID панели для установки
nl_disclaimer_accepted ❌ integer Подтверждение согласия с условиями размещения данных в Нидерландах (1 - принято)
customer_id ❌ string ID клиента. Если клиент авторизован, подставляется автоматически.
app_location ❌ string Локация приложения (макс. 2 символа)

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=install" \
--data "token=YOUR_TOKEN" \
--data "panel_id=123"
Пример успешного ответа
{
"result": "OK",
"action": "install",
"key": "a1b2c3d4e5f6g7h8i9j0",
"app_id": 123
}
Примеры ошибок
{
"code": -1,
"message": "Invalid panel ID"
}

saas/install_restart

Перезапускает процесс установленной SaaS-панели.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: install_restart
token ✅ string Токен авторизации
saas_installed_id ❌ integer ID установленного приложения
customer_id ❌ string ID клиента. Если клиент авторизован, подставляется автоматически.

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=install_restart" \
--data "token=YOUR_TOKEN" \
--data "saas_installed_id=456"
Пример успешного ответа
{
"result": "OK",
"action": "install_restart",
"key": "7bc29eb23fb879b21fce509597f07c",
"app_id": 456
}
Примеры ошибок
{
"code": -1,
"message": "Invalid saas_installed_id"
}

saas/install_cancel

Отменяет процесс текущей установки приложения.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: install_cancel
token ✅ string Токен авторизации
saas_installed_id ❌ integer ID установленного приложения. Может передаваться через GET или POST.
customer_id ❌ string ID клиента. Если клиент авторизован, подставляется автоматически из данных сессии.

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=install_cancel" \
--data "token=YOUR_TOKEN"
Пример успешного ответа
{
"result": -1,
"error": "Can't cancel installation process on already installed panel"
}
Примеры ошибок
{
"code": -1,
"message": "customer info error"
}

saas/delete

Удаляет установленную SaaS-панель и отменяет связанные услуги.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: delete
token ✅ string Токен авторизации
id ❌ integer ID установленной панели (из GET или POST)
account_id ❌ string ID аккаунта (WHMCS ID) (из GET или POST)

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=delete" \
--data "token=YOUR_TOKEN" \
--data "id=123"
Пример успешного ответа
{
"result": "OK",
"action": "delete",
"key": "f9e8d7c6b5a4z3y2x1w0"
}
Примеры ошибок
{
"code": -1,
"message": "Invalid panel ID"
}

saas/list

Возвращает список доступных или установленных SaaS-панелей с учетом налогов и региональных ограничений.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: list
token ✅ string Токен авторизации
customer_id ❌ integer ID клиента. Если клиент в сессии, список ограничивается его активными панелями.
active ❌ boolean Фильтр по активности (только для клиентов). По умолчанию 1.

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=list" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "list",
"vat": {
"rate": 20,
"currency": "EUR"
},
"list": [
{
"id": 1,
"name": "WordPress Managed",
"status": "active",
"tags": [
{
"tag": "no_russia",
"value": ""
}
]
}
]
}
Примеры ошибок
{
"code": -1,
"message": "$module/list: customer info error"
}

saas/my_apps

Возвращает список приложений, установленных текущим пользователем.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: my_apps
token ✅ string Токен авторизации
customer_id ❌ integer ID клиента. Если клиент авторизован, подставляется автоматически.

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=my_apps" \
--data "token=YOUR_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "my_apps",
"list": [
{
"id": 501,
"saas_id": 10,
"status": "active",
"customer_id": 789,
"service_id": 12345,
"data": {
"name": "WordPress Pro",
"description": "Managed WordPress instance"
},
"tags": [
{
"tag": "metrics",
"value": "metric_key_abc123"
}
],
"date_cancel": "2023-10-27 10:00:00"
}
]
}
Примеры ошибок
{
"code": -1,
"message": "customer info error"
}

saas/clone

Создает клон существующего SaaS-приложения с новым именем.

HTTP-метод: POST

Параметры:

action ✅ string Идентификатор метода: clone
token ✅ string Токен авторизации
id ✅ integer ID приложения для клонирования
name ✅ string Новое имя для клонированного приложения

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=clone" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE" \
--data "name=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "clone",
"new_id": 102
}
Примеры ошибок
{
"code": -1,
"message": "Managed app name already exists"
}

saas/my_app_metrics

Получает метрики для конкретного установленного приложения.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: my_app_metrics
token ✅ string Токен авторизации
installed_app_id ❌ integer ID установленного приложения (managed app id)
customer_id ❌ string ID клиента. Если клиент авторизован, подставляется автоматически.

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=my_app_metrics" \
--data "token=YOUR_TOKEN" \
--data "installed_app_id=123"
Пример успешного ответа
{
"result": -1,
"error": "Invalid app id",
"tags": [
{
"tag": "metrics",
"value": "metric_key_abc123"
}
],
"metrics": {
"cpu_usage": 45.5,
"ram_usage": 1024,
"disk_io": 12.5
}
}
Примеры ошибок
{
"code": -1,
"message": "Fail to get metrics"
}

saas/upgrade

Запускает процесс обновления установленной SaaS-панели. Требуется валидный ID панели и учетная запись.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: upgrade
token ✅ string Токен авторизации
id ✅ integer ID установленной панели для обновления
account_id ❌ string Идентификатор учетной записи (автоматически подставляется клиентом)

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

curl -s "https://invapi.hostkey.ru/saas.php" -X POST \
--data "action=upgrade" \
--data "token=VALUE" \
--data "id=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "upgrade",
"key": "7bc29eb23fb1b879b21fce509597f07c"
}
Примеры ошибок
{
"code": -1,
"message": "Invalid panel ID"
}
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×