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

dashboards.php

В этой статье

API для управления дашбордами и отчетами в системе мониторинга.

Методы API

Метод Действие Описание
add создание дашборда Создает новый дашборд с заданными параметрами.
add_report добавление отчета Добавляет существующий отчет в указанный дашборд.
delete удаление дашборда Удаляет существующий дашборд по его ID.
delete_report удаление отчета Удаляет отчет из указанного дашборда.
delete_report_all удаление всех отчетов Удаляет все отчеты из указанного дашборда.
list получение списка дашбордов Возвращает список всех доступных дашбордов с возможностью сортировки.
report_list получение списка отчетов Возвращает список всех отчетов, привязанных к конкретному дашборду.
show получение данных дашборда Возвращает информацию о конкретном дашборде по его ID.
update обновление дашборда. Доступно только владельцу. Обновляет параметры существующего дашборда (имя, публичность и список отчетов).

dashboards/add

Создает новый дашборд с заданными параметрами.

HTTP-метод: POST

Параметры:

action ✅ string Идентификатор метода: add
token ✅ string Токен авторизации
params[name] ✅ string Название дашборда. Не может быть пустым.
params[public] ❌ boolean Публичный статус дашборда
params[reports] ❌ array<string> JSON string со списком ID отчетов

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=add" \
--data "token=HOSTKEY_TOKEN" \
--data "params[name]=My Dashboard" \
--data "params[public]=true" \
--data "params[reports][0]=123" \
--data "params[reports][1]=456"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "add",
"data": {
"id": 123,
"name": "string",
"public": true,
"owner": "string"
}
}
Примеры ошибок
{
"-1": [
{
"message": "Action required"
},
{
"message": "Name cannot be empty"
},
{
"message": "Duplicate dashboard. Please choose another name"
}
]
}

dashboards/add_report

Добавляет существующий отчет в указанный дашборд.

HTTP-метод: POST

Параметры:

action ✅ string Идентификатор метода: add_report
id ❌ integer ID дашборда.
report_id ❌ integer ID отчета для добавления.
sort_order ❌ integer Порядок сортировки отчета в списке.
token ❌ string Уникальный идентификатор сессии или токен авторизации для выполнения запроса.

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=add_report" \
--data "id=123" \
--data "report_id=456" \
--data "token=your_token_here"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "add_report",
"data": {
"id": 123,
"report_id": 456
}
}
Примеры ошибок
{
"code": -1,
"message": "Invalid ID 0"
}

dashboards/delete

Удаляет существующий дашборд по его ID.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: delete
token ✅ string Токен авторизации
params[id] ✅ integer ID дашборда для удаления

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=delete" \
--data "token=HOSTKEY_TOKEN" \
--data "params[id]=123"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "delete",
"data": {
"id": 123
}
}
Примеры ошибок
{
"code": -1,
"message": "Only owner can delete dashboard"
}

dashboards/delete_report

Удаляет отчет из указанного дашборда.

HTTP-метод: POST

Параметры:

action ✅ string Идентификатор метода: delete_report
params[id] ❌ integer ID дашборда.
params[report_id] ❌ integer ID отчета для удаления.
token ❌ string Уникальный идентификатор сессии для авторизации запроса.

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=delete_report" \
--data "id=123" \
--data "report_id=456" \
--data "token=your_session_token"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "delete_report",
"data": {
"id": 123,
"report_id": 456
}
}
Примеры ошибок
{
"code": -1,
"message": "Invalid ID 0"
}

dashboards/delete_report_all

Удаляет все отчеты из указанного дашборда.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action ✅ string Идентификатор метода: delete_report_all
token ✅ string Токен авторизации
params[id] ✅ integer ID дашборда для очистки отчетов

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=delete_report_all" \
--data "token=HOSTKEY_TOKEN" \
--data "params[id]=123"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "delete_report_all",
"data": {
"id": 123
}
}
Примеры ошибок
{
"code": -1,
"message": "Action required"
}

dashboards/list

Возвращает список всех доступных дашбордов с возможностью сортировки.

HTTP-метод: POST

Параметры:

action ✅ string Идентификатор метода: list
token ✅ string Токен авторизации
sort_order ❌ string Порядок сортировки. Если пусто, используется значение по умолчанию: sort_order.

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=list" \
--data "token=HOSTKEY_TOKEN" \
--data "sort_order=name"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "list",
"data": [
{
"id": 123,
"name": "Main Dashboard",
"public": true,
"owner": "user@example.com"
}
]
}
Примеры ошибок
{
"-1": "Action required"
}

dashboards/report_list

Возвращает список всех отчетов, привязанных к конкретному дашборду.

HTTP-метод: POST

Параметры:

action ✅ string Идентификатор метода: report_list
token ✅ string Токен авторизации
params[id] ✅ integer ID дашборда для получения отчетов. Должен быть больше 0.

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=report_list" \
--data "token=HOSTKEY_TOKEN" \
--data "params[id]=45"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "report_list",
"data": [
{
"id": 45,
"name": "CPU Usage Report"
}
]
}
Примеры ошибок
{
"OutOfBoundsException": {
"code": -1,
"message": "Invalid ID {id}"
}
}

dashboards/show

Возвращает информацию о конкретном дашборде по его ID.

HTTP-метод: POST

Параметры:

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

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=show" \
--data "token=HOSTKEY_TOKEN" \
--data "id=123"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "show",
"data": {
"id": 123,
"name": "string",
"public": true,
"owner": "string"
}
}
Примеры ошибок
{
"PlatformException": [
{
"code": -1,
"message": "Action required"
},
{
"code": -1,
"message": "Action is not recognized"
}
],
"RangeException": [
{
"code": -1,
"message": "dashboard dash:{id} not found"
}
]
}

dashboards/update

Обновляет параметры существующего дашборда (имя, публичность и список отчетов).

HTTP-метод: POST

Параметры:

action ✅ string Идентификатор метода: update
token ✅ string Токен авторизации
params[name] ✅ string Название дашборда. Не может быть пустым.
params[public] ❌ boolean Статус публичности дашборда.
params[reports][] ❌ array<string> Список ID отчетов для обновления (JSON строка).

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

curl -s "https://invapi.hostkey.ru/dashboards.php" -X POST \
--data "action=update" \
--data "token=HOSTKEY_TOKEN" \
--data "params[name]=New Dashboard Name" \
--data "params[public]=false" \
--data "params[reports][]=report_id_1" \
--data "params[reports][]=report_id_2"
Пример успешного ответа
{
"result": "OK",
"module": "dashboards",
"action": "update",
"data": {
"id": 123,
"name": "Dashboard Name",
"public": false,
"owner": "user@example.com"
}
}
Примеры ошибок
{
"-1": [
{
"message": "Only owner can update dashboard"
},
{
"message": "Invalid ID 0"
},
{
"message": "Field name cannot be empty"
}
]
}
question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×