tags.php¶
Модуль управления метками (tags) для серверов и компонентов: добавление, удаление, очистка и поиск меток с поддержкой внутренних и публичных данных.
Методы API¶
| Метод | Действие | Описание |
|---|---|---|
add | добавление метки | Добавляет пользовательскую метку к серверу или компоненту. Поддерживает добавление к списку ID через id_list. |
list | получение списка меток | Возвращает список всех меток для указанного сервера или компонента. |
remove | удаление метки | Удаляет метку по имени с указанного сервера или компонента. Поддерживает удаление по списку ID. |
tags/add¶
Добавляет пользовательскую метку к серверу или компоненту. Поддерживает добавление к списку ID через id_list.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: add |
| token | ✅ | string | Токен авторизации |
| id | ❌ | int | ID компонента (сервера). Используется если не передан id_list |
| id_list | ❌ | string | Запятая разделенный список ID компонентов для массового добавления |
| tag | ✅ | string | Имя метки (только алфавитно-цифровые символы и дефис, макс 32 символа) |
| value | ❌ | string | Значение метки (макс 256 символов) |
| extra | ❌ | string | Дополнительные данные метки (макс 16384 символа) |
| component | ❌ | string | Тип компонента (по умолчанию 'eq') |
| internal | ❌ | int | Флаг внутренней метки (0 или 1) |
| no_log | ❌ | string | Флаг отключения логирования (любое значение отключает) |
Пример запроса
curl -s "https://invapi.hostkey.ru/tags" -X POST \
--data "action=add" \
--data "token=HOSTKEY_TOKEN" \
--data "id=101" \
--data "tag=hostname" \
--data "value=my_server"
Пример успешного ответа
{
"result": "OK",
"action": "add",
"id": 12345,
"component": "eq",
"component_id": 101,
"tag": "hostname",
"value": "my_server",
"extra": "",
"internal": 0
}
Примеры ошибок
{
"code": -1,
"message": "tag/add: invalid token data, too long",
"description": "Длина tag, value или extra превышает лимиты"
}
tags/list¶
Возвращает список всех меток для указанного сервера или компонента.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: list |
| token | ✅ | string | Токен авторизации |
| id | ✅ | int | ID компонента (сервера) |
| component | ❌ | string | Тип компонента ('eq' или 'vars') |
| internal | ❌ | int | Показывать ли внутренние метки (0 или 1) |
Пример запроса
curl -s "https://invapi.hostkey.ru/tags" -X POST \
--data "action=list" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "list",
"tags": [
{
"id": 1001,
"component": "eq",
"component_id": 101,
"tag": "hostname",
"value": "server-01",
"extra": "",
"internal": 0
},
{
"id": 1002,
"component": "eq",
"component_id": 101,
"tag": "location",
"value": "NL",
"extra": "",
"internal": 0
}
]
}
Примеры ошибок
tags/remove¶
Удаляет метку по имени с указанного сервера или компонента. Поддерживает удаление по списку ID.
HTTP-метод: POST
Параметры:
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| action | ✅ | string | Идентификатор метода: remove |
| token | ✅ | string | Токен авторизации |
| id | ❌ | int | ID компонента (сервера) |
| id_list | ❌ | string | Запятая разделенный список ID компонентов |
| tag | ✅ | string | Имя метки для удаления |
| component | ❌ | string | Тип компонента |
| internal | ❌ | int | Флаг внутренней метки |
Пример запроса
curl -s "https://invapi.hostkey.ru/tags" -X POST \
--data "action=remove" \
--data "token=HOSTKEY_TOKEN" \
--data "tag=hostname" \
--data "id=101"
Пример успешного ответа
{
"result": "OK",
"action": "remove",
"id": 1001,
"tag": "hostname",
"component": "eq",
"component_id": 101
}