admin-back
Перед работой api сервиса рекомендуется ознакомиться с архитектурой продукта и особенностями обращения к api с использованием Bearer Token Authentication.
Для работы с api требуется добавить /api/v1 в начало эндпоинта, всё что находится за /api/v1 является зашишённым и работает только с использованием механизма авторизации.
Адрес запроса к защищённому эндпоинту /about будет иметь вид:
http(s)://astra-monitoring.server/api/v1/about
Примечание
С документацией в формате swagger можно ознакомиться на запущенном сервере используя адрес: http(s)://astra-monitoring.server/api/v1/docs/index.html
Ниже представлена полная документация на api admin-back сервис бэкенда платформы. Он выступает централизованой точкой входа для фронтенда, а так же проксирует запросы к другим сервисам платформы.
- GET /about
info page
- Response JSON Object:
branch (string)
builddate (string)
goarch (string)
goos (string)
goversion (string)
revision (string)
version (string)
- Status Codes:
200 OK – OK
- GET /accounts
Retrieves all accounts information
- Query Parameters:
auth (array)
deleted (boolean)
limit (integer)
page (integer)
privacy (array)
q (string)
security (array)
type (array)
- Response JSON Object:
accounts[] (object)
accounts[].created_at (string)
accounts[].data (object)
accounts[].deleted_at (string)
accounts[].id (string)
accounts[].name (string)
accounts[].type (string)
accounts[].updated_at (string)
paging (object)
paging.current_page (integer)
paging.next_page (integer)
paging.per_page (integer)
paging.previous_page (integer)
paging.total (integer)
paging.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- POST /accounts
Create a new account
- Response JSON Object:
created_at (string)
data (object)
deleted_at (string)
id (string)
name (string)
type (string)
updated_at (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
409 Conflict – Conflict
500 Internal Server Error – Internal Server Error
- DELETE /accounts/{id}
Hard delete account
- Parameters:
id (string, required) – Account id
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /accounts/{id}
Retrieves account information
- Parameters:
id (string, required) – Account ID
- Response JSON Object:
created_at (string)
data (object)
deleted_at (string)
id (string)
name (string)
type (string)
updated_at (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- PATCH /accounts/{id}
Update account
- Parameters:
id (string, required) – Account id
- Response JSON Object:
created_at (string)
data (object)
deleted_at (string)
id (string)
name (string)
type (string)
updated_at (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
409 Conflict – Conflict
500 Internal Server Error – Internal Server Error
- GET /agents
Get all agents from DB by query parameters
- Query Parameters:
q (string) – Search name of hostname by substring
page (integer) – pagination: page number
limit (integer) – pagination: number rows on page
active (boolean) – Only active agents
- Response JSON Object:
agents[] (object)
agents[].agent_upstream (object)
agents[].agent_upstream.address_http (string)
agents[].agent_upstream.address_https (string)
agents[].agent_upstream.auth_token (string)
agents[].agent_upstream.id (string)
agents[].agent_upstream.insecure (boolean)
agents[].agent_upstream.load_binaries (boolean)
agents[].agent_upstream.name (string)
agents[].agent_upstream.number_of_connected_agents (integer)
agents[].agent_upstream.type (string)
agents[].config (object)
agents[].config.author (string)
agents[].config.config (object)
agents[].config.config.exporters (object)
agents[].config.config.exporters.enabled (boolean)
agents[].config.config.exporters.exporters[] (object)
agents[].config.config.exporters.exporters[].address (string)
agents[].config.config.exporters.exporters[].args (string)
agents[].config.config.exporters.exporters[].config (string)
agents[].config.config.exporters.exporters[].config_filename (string) – For SettingsType = args
agents[].config.config.exporters.exporters[].disabled (boolean)
agents[].config.config.exporters.exporters[].go_metrics (boolean) – For SettingsType = am
agents[].config.config.exporters.exporters[].interval_sec (number)
agents[].config.config.exporters.exporters[].labels (object)
agents[].config.config.exporters.exporters[].last_scrape_error (string)
agents[].config.config.exporters.exporters[].last_scrape_items (integer)
agents[].config.config.exporters.exporters[].last_scrape_time (string)
agents[].config.config.exporters.exporters[].name (string)
agents[].config.config.exporters.exporters[].settings_type (string:enum)
agents[].config.config.exporters.exporters[].status (string) – State (self-monitoring) information
agents[].config.config.exporters.exporters[].version (string) – For both
agents[].config.config.general (object)
agents[].config.config.general.api_version (string)
agents[].config.config.general.auto_config_interval (string)
agents[].config.config.general.base_directory (string)
agents[].config.config.general.enable_auto_config (boolean) – Auto-configuration settings
agents[].config.config.general.hostname (string)
agents[].config.config.general.id (string) – Agent identification
agents[].config.config.general.insecure (boolean)
agents[].config.config.general.ip (string)
agents[].config.config.general.load_binaries (boolean)
agents[].config.config.general.local_server (string) – Agent starting settings
agents[].config.config.general.log_level (string)
agents[].config.config.general.name (string)
agents[].config.config.general.test_mode (boolean)
agents[].config.config.general.upstream_address (string) – Agent sending data settings
agents[].config.config.ipmi (object)
agents[].config.config.ipmi.enabled (boolean)
agents[].config.config.ipmi.targets[] (object)
agents[].config.config.ipmi.targets[].collectors[] (string)
agents[].config.config.ipmi.targets[].customArgs (string)
agents[].config.config.ipmi.targets[].description (string)
agents[].config.config.ipmi.targets[].disabled (boolean)
agents[].config.config.ipmi.targets[].driver (string)
agents[].config.config.ipmi.targets[].exclude_sensor_ids[] (integer)
agents[].config.config.ipmi.targets[].fqdn (string)
agents[].config.config.ipmi.targets[].labels (object)
agents[].config.config.ipmi.targets[].name (string)
agents[].config.config.ipmi.targets[].port (integer)
agents[].config.config.ipmi.targets[].privilege (string)
agents[].config.config.ipmi.targets[].status (string)
agents[].config.config.ipmi.targets[].tech_account_name (string)
agents[].config.config.ipmi.targets[].tech_auth_id (string)
agents[].config.config.ipmi.targets[].timeout (integer)
agents[].config.config.ipmi.targets[].workaround_flags[] (string)
agents[].config.config.logs (object)
agents[].config.config.logs.enabled (boolean)
agents[].config.config.logs.self_logs (boolean)
agents[].config.config.logs.sent_bytes_total (number)
agents[].config.config.logs.sent_events_total (number)
agents[].config.config.logs.status (string) – State (self-monitoring) information
agents[].config.config.logs.use_local_config (boolean)
agents[].config.config.logs.vector_configs[] (object)
agents[].config.config.logs.vector_configs[].id (string)
agents[].config.config.logs.vector_configs[].name (string)
agents[].config.config.logs.version (string)
agents[].config.config.metrics (object)
agents[].config.config.metrics.custom_targets[] (object)
agents[].config.config.metrics.custom_targets[].disabled (boolean)
agents[].config.config.metrics.custom_targets[].interval_sec (number)
agents[].config.config.metrics.custom_targets[].labels (object)
agents[].config.config.metrics.custom_targets[].last_scrape_error (string)
agents[].config.config.metrics.custom_targets[].last_scrape_items (integer)
agents[].config.config.metrics.custom_targets[].last_scrape_time (string)
agents[].config.config.metrics.custom_targets[].metrics_path (string)
agents[].config.config.metrics.custom_targets[].name (string)
agents[].config.config.metrics.custom_targets[].status (string) – State (self-monitoring) information
agents[].config.config.metrics.custom_targets[].target (string)
agents[].config.config.metrics.enabled (boolean)
agents[].config.config.metrics.use_local_config (boolean)
agents[].config.config.metrics.version (string)
agents[].config.config.proxy (object)
agents[].config.config.proxy.auth_token (string)
agents[].config.config.proxy.cache_binaries (boolean)
agents[].config.config.proxy.http (string)
agents[].config.config.proxy.https (string)
agents[].config.config.proxy.local_server (string)
agents[].config.config.proxy.log_requests_file (string)
agents[].config.config.proxy.register (boolean)
agents[].config.config.proxy.tls_cert_file (string)
agents[].config.config.proxy.tls_key_file (string)
agents[].config.config.snmp (object)
agents[].config.config.snmp.enabled (boolean)
agents[].config.config.snmp.targets[] (object)
agents[].config.config.snmp.targets[].description (string)
agents[].config.config.snmp.targets[].disabled (boolean)
agents[].config.config.snmp.targets[].fqdn (string)
agents[].config.config.snmp.targets[].labels (object)
agents[].config.config.snmp.targets[].mib_files_names[] (string)
agents[].config.config.snmp.targets[].modules[] (string)
agents[].config.config.snmp.targets[].name (string)
agents[].config.config.snmp.targets[].port (integer)
agents[].config.config.snmp.targets[].retries (integer)
agents[].config.config.snmp.targets[].snmp_packets_retries_total (integer)
agents[].config.config.snmp.targets[].snmp_packets_total (integer)
agents[].config.config.snmp.targets[].snmp_requests_errors_total (integer)
agents[].config.config.snmp.targets[].snmp_unexpected_pdu_total (integer)
agents[].config.config.snmp.targets[].status (string) – State (self-monitoring) information
agents[].config.config.snmp.targets[].tech_account_name (string)
agents[].config.config.snmp.targets[].tech_auth_id (string)
agents[].config.config.snmp.targets[].templates (string)
agents[].config.config.snmp.targets[].timeout (integer)
agents[].config.config.snmp.targets[].version (string:enum)
agents[].config.config.snmp_traps (object)
agents[].config.config.snmp_traps.communities[] (string)
agents[].config.config.snmp_traps.enabled_snmp_traps (boolean)
agents[].config.config.snmp_traps.enabled_v1_v2c (boolean)
agents[].config.config.snmp_traps.enabled_v3 (boolean)
agents[].config.config.snmp_traps.port (integer)
agents[].config.config.snmp_traps.tech_accounts_names_v1_v2c[] (string)
agents[].config.config.snmp_traps.tech_accounts_names_v3[] (string)
agents[].config.config.snmp_traps.trap_received_by_account_name (object)
agents[].config.config.snmp_traps.trap_received_total (integer) – State (self-monitoring) information
agents[].config.config.traces (object)
agents[].config.config.traces.discovery_services[] (object)
agents[].config.config.traces.discovery_services[].exe_path (string, required)
agents[].config.config.traces.discovery_services[].name (string, required)
agents[].config.config.traces.enabled (boolean, required)
agents[].config.config.traces.mode (string, required)
agents[].config.config.upstreams[] (object)
agents[].config.config.upstreams[].address (string)
agents[].config.config.upstreams[].auth_token (string)
agents[].config.config.upstreams[].insecure (boolean)
agents[].config.config.upstreams[].load_binaries (boolean)
agents[].config.config.upstreams[].name (string)
agents[].config.config.watcher (object)
agents[].config.config.watcher.config_update_interval (string)
agents[].config.config.watcher.disable_force_local (boolean)
agents[].config.config.watcher.force_local (boolean)
agents[].config.config.watcher.instance_send_interval (string)
agents[].config.config.watcher.load_concurrency (integer)
agents[].config.config.watcher.no_configuration (boolean)
agents[].config.config.watcher.register_interval (string)
agents[].config.config.watcher.register_retry (integer)
agents[].config.config.watcher.request_timeout (string)
agents[].config.created_time (string)
agents[].config.upstream_id (string)
agents[].config.version (integer)
agents[].created_time (string)
agents[].description (string)
agents[].disabled_time (string)
agents[].id (string)
agents[].is_disabled (boolean)
agents[].isLimitExceeded (boolean)
agents[].name (string)
agents[].state (object)
agents[].state.arch (string)
agents[].state.config_applied_version (integer)
agents[].state.config_updated_time (string)
agents[].state.deployment (string)
agents[].state.hostname (string)
agents[].state.last_request_time (string)
agents[].state.os (string)
agents[].state.restart_count (integer)
agents[].state.runtime (string)
agents[].state.startup_time (string)
agents[].state.status (string)
agents[].state.type (string)
agents[].state.version (string)
agents[].updated_time (string)
agents[].upstream (object)
agents[].upstream.address_http (string)
agents[].upstream.address_https (string)
agents[].upstream.auth_token (string)
agents[].upstream.id (string)
agents[].upstream.insecure (boolean)
agents[].upstream.load_binaries (boolean)
agents[].upstream.name (string)
agents[].upstream.number_of_connected_agents (integer)
agents[].upstream.type (string)
paging (object)
paging.current_page (integer)
paging.next_page (integer)
paging.per_page (integer)
paging.previous_page (integer)
paging.total (integer)
paging.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
422 Unprocessable Entity – Unprocessable Entity
500 Internal Server Error – Internal Server Error
- DELETE /agents/{id}
Delete agent by ID
- Parameters:
id (string, required) – Agent ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
422 Unprocessable Entity – Unprocessable Entity
500 Internal Server Error – Internal Server Error
- GET /agents/{id}
Get agent information from DB by ID
- Parameters:
id (string, required) – Agent ID
- Response JSON Object:
agent_upstream (object)
agent_upstream.address_http (string)
agent_upstream.address_https (string)
agent_upstream.auth_token (string)
agent_upstream.id (string)
agent_upstream.insecure (boolean)
agent_upstream.load_binaries (boolean)
agent_upstream.name (string)
agent_upstream.number_of_connected_agents (integer)
agent_upstream.type (string)
config (object)
config.author (string)
config.config (object)
config.config.exporters (object)
config.config.exporters.enabled (boolean)
config.config.exporters.exporters[] (object)
config.config.exporters.exporters[].address (string)
config.config.exporters.exporters[].args (string)
config.config.exporters.exporters[].config (string)
config.config.exporters.exporters[].config_filename (string) – For SettingsType = args
config.config.exporters.exporters[].disabled (boolean)
config.config.exporters.exporters[].go_metrics (boolean) – For SettingsType = am
config.config.exporters.exporters[].interval_sec (number)
config.config.exporters.exporters[].labels (object)
config.config.exporters.exporters[].last_scrape_error (string)
config.config.exporters.exporters[].last_scrape_items (integer)
config.config.exporters.exporters[].last_scrape_time (string)
config.config.exporters.exporters[].name (string)
config.config.exporters.exporters[].settings_type (string:enum)
config.config.exporters.exporters[].status (string) – State (self-monitoring) information
config.config.exporters.exporters[].version (string) – For both
config.config.general (object)
config.config.general.api_version (string)
config.config.general.auto_config_interval (string)
config.config.general.base_directory (string)
config.config.general.enable_auto_config (boolean) – Auto-configuration settings
config.config.general.hostname (string)
config.config.general.id (string) – Agent identification
config.config.general.insecure (boolean)
config.config.general.ip (string)
config.config.general.load_binaries (boolean)
config.config.general.local_server (string) – Agent starting settings
config.config.general.log_level (string)
config.config.general.name (string)
config.config.general.test_mode (boolean)
config.config.general.upstream_address (string) – Agent sending data settings
config.config.ipmi (object)
config.config.ipmi.enabled (boolean)
config.config.ipmi.targets[] (object)
config.config.ipmi.targets[].collectors[] (string)
config.config.ipmi.targets[].customArgs (string)
config.config.ipmi.targets[].description (string)
config.config.ipmi.targets[].disabled (boolean)
config.config.ipmi.targets[].driver (string)
config.config.ipmi.targets[].exclude_sensor_ids[] (integer)
config.config.ipmi.targets[].fqdn (string)
config.config.ipmi.targets[].labels (object)
config.config.ipmi.targets[].name (string)
config.config.ipmi.targets[].port (integer)
config.config.ipmi.targets[].privilege (string)
config.config.ipmi.targets[].status (string)
config.config.ipmi.targets[].tech_account_name (string)
config.config.ipmi.targets[].tech_auth_id (string)
config.config.ipmi.targets[].timeout (integer)
config.config.ipmi.targets[].workaround_flags[] (string)
config.config.logs (object)
config.config.logs.enabled (boolean)
config.config.logs.self_logs (boolean)
config.config.logs.sent_bytes_total (number)
config.config.logs.sent_events_total (number)
config.config.logs.status (string) – State (self-monitoring) information
config.config.logs.use_local_config (boolean)
config.config.logs.vector_configs[] (object)
config.config.logs.vector_configs[].id (string)
config.config.logs.vector_configs[].name (string)
config.config.logs.version (string)
config.config.metrics (object)
config.config.metrics.custom_targets[] (object)
config.config.metrics.custom_targets[].disabled (boolean)
config.config.metrics.custom_targets[].interval_sec (number)
config.config.metrics.custom_targets[].labels (object)
config.config.metrics.custom_targets[].last_scrape_error (string)
config.config.metrics.custom_targets[].last_scrape_items (integer)
config.config.metrics.custom_targets[].last_scrape_time (string)
config.config.metrics.custom_targets[].metrics_path (string)
config.config.metrics.custom_targets[].name (string)
config.config.metrics.custom_targets[].status (string) – State (self-monitoring) information
config.config.metrics.custom_targets[].target (string)
config.config.metrics.enabled (boolean)
config.config.metrics.use_local_config (boolean)
config.config.metrics.version (string)
config.config.proxy (object)
config.config.proxy.auth_token (string)
config.config.proxy.cache_binaries (boolean)
config.config.proxy.http (string)
config.config.proxy.https (string)
config.config.proxy.local_server (string)
config.config.proxy.log_requests_file (string)
config.config.proxy.register (boolean)
config.config.proxy.tls_cert_file (string)
config.config.proxy.tls_key_file (string)
config.config.snmp (object)
config.config.snmp.enabled (boolean)
config.config.snmp.targets[] (object)
config.config.snmp.targets[].description (string)
config.config.snmp.targets[].disabled (boolean)
config.config.snmp.targets[].fqdn (string)
config.config.snmp.targets[].labels (object)
config.config.snmp.targets[].mib_files_names[] (string)
config.config.snmp.targets[].modules[] (string)
config.config.snmp.targets[].name (string)
config.config.snmp.targets[].port (integer)
config.config.snmp.targets[].retries (integer)
config.config.snmp.targets[].snmp_packets_retries_total (integer)
config.config.snmp.targets[].snmp_packets_total (integer)
config.config.snmp.targets[].snmp_requests_errors_total (integer)
config.config.snmp.targets[].snmp_unexpected_pdu_total (integer)
config.config.snmp.targets[].status (string) – State (self-monitoring) information
config.config.snmp.targets[].tech_account_name (string)
config.config.snmp.targets[].tech_auth_id (string)
config.config.snmp.targets[].templates (string)
config.config.snmp.targets[].timeout (integer)
config.config.snmp.targets[].version (string:enum)
config.config.snmp_traps (object)
config.config.snmp_traps.communities[] (string)
config.config.snmp_traps.enabled_snmp_traps (boolean)
config.config.snmp_traps.enabled_v1_v2c (boolean)
config.config.snmp_traps.enabled_v3 (boolean)
config.config.snmp_traps.port (integer)
config.config.snmp_traps.tech_accounts_names_v1_v2c[] (string)
config.config.snmp_traps.tech_accounts_names_v3[] (string)
config.config.snmp_traps.trap_received_by_account_name (object)
config.config.snmp_traps.trap_received_total (integer) – State (self-monitoring) information
config.config.traces (object)
config.config.traces.discovery_services[] (object)
config.config.traces.discovery_services[].exe_path (string, required)
config.config.traces.discovery_services[].name (string, required)
config.config.traces.enabled (boolean, required)
config.config.traces.mode (string, required)
config.config.upstreams[] (object)
config.config.upstreams[].address (string)
config.config.upstreams[].auth_token (string)
config.config.upstreams[].insecure (boolean)
config.config.upstreams[].load_binaries (boolean)
config.config.upstreams[].name (string)
config.config.watcher (object)
config.config.watcher.config_update_interval (string)
config.config.watcher.disable_force_local (boolean)
config.config.watcher.force_local (boolean)
config.config.watcher.instance_send_interval (string)
config.config.watcher.load_concurrency (integer)
config.config.watcher.no_configuration (boolean)
config.config.watcher.register_interval (string)
config.config.watcher.register_retry (integer)
config.config.watcher.request_timeout (string)
config.created_time (string)
config.upstream_id (string)
config.version (integer)
created_time (string)
description (string)
disabled_time (string)
id (string)
is_disabled (boolean)
isLimitExceeded (boolean)
name (string)
state (object)
state.arch (string)
state.config_applied_version (integer)
state.config_updated_time (string)
state.deployment (string)
state.hostname (string)
state.last_request_time (string)
state.os (string)
state.restart_count (integer)
state.runtime (string)
state.startup_time (string)
state.status (string)
state.type (string)
state.version (string)
updated_time (string)
upstream (object)
upstream.address_http (string)
upstream.address_https (string)
upstream.auth_token (string)
upstream.id (string)
upstream.insecure (boolean)
upstream.load_binaries (boolean)
upstream.name (string)
upstream.number_of_connected_agents (integer)
upstream.type (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- PATCH /agents/{id}
Update agent information
- Parameters:
id (string, required) – Agent ID
- Response JSON Object:
agent_upstream (object)
agent_upstream.address_http (string)
agent_upstream.address_https (string)
agent_upstream.auth_token (string)
agent_upstream.id (string)
agent_upstream.insecure (boolean)
agent_upstream.load_binaries (boolean)
agent_upstream.name (string)
agent_upstream.number_of_connected_agents (integer)
agent_upstream.type (string)
config (object)
config.author (string)
config.config (object)
config.config.exporters (object)
config.config.exporters.enabled (boolean)
config.config.exporters.exporters[] (object)
config.config.exporters.exporters[].address (string)
config.config.exporters.exporters[].args (string)
config.config.exporters.exporters[].config (string)
config.config.exporters.exporters[].config_filename (string) – For SettingsType = args
config.config.exporters.exporters[].disabled (boolean)
config.config.exporters.exporters[].go_metrics (boolean) – For SettingsType = am
config.config.exporters.exporters[].interval_sec (number)
config.config.exporters.exporters[].labels (object)
config.config.exporters.exporters[].last_scrape_error (string)
config.config.exporters.exporters[].last_scrape_items (integer)
config.config.exporters.exporters[].last_scrape_time (string)
config.config.exporters.exporters[].name (string)
config.config.exporters.exporters[].settings_type (string:enum)
config.config.exporters.exporters[].status (string) – State (self-monitoring) information
config.config.exporters.exporters[].version (string) – For both
config.config.general (object)
config.config.general.api_version (string)
config.config.general.auto_config_interval (string)
config.config.general.base_directory (string)
config.config.general.enable_auto_config (boolean) – Auto-configuration settings
config.config.general.hostname (string)
config.config.general.id (string) – Agent identification
config.config.general.insecure (boolean)
config.config.general.ip (string)
config.config.general.load_binaries (boolean)
config.config.general.local_server (string) – Agent starting settings
config.config.general.log_level (string)
config.config.general.name (string)
config.config.general.test_mode (boolean)
config.config.general.upstream_address (string) – Agent sending data settings
config.config.ipmi (object)
config.config.ipmi.enabled (boolean)
config.config.ipmi.targets[] (object)
config.config.ipmi.targets[].collectors[] (string)
config.config.ipmi.targets[].customArgs (string)
config.config.ipmi.targets[].description (string)
config.config.ipmi.targets[].disabled (boolean)
config.config.ipmi.targets[].driver (string)
config.config.ipmi.targets[].exclude_sensor_ids[] (integer)
config.config.ipmi.targets[].fqdn (string)
config.config.ipmi.targets[].labels (object)
config.config.ipmi.targets[].name (string)
config.config.ipmi.targets[].port (integer)
config.config.ipmi.targets[].privilege (string)
config.config.ipmi.targets[].status (string)
config.config.ipmi.targets[].tech_account_name (string)
config.config.ipmi.targets[].tech_auth_id (string)
config.config.ipmi.targets[].timeout (integer)
config.config.ipmi.targets[].workaround_flags[] (string)
config.config.logs (object)
config.config.logs.enabled (boolean)
config.config.logs.self_logs (boolean)
config.config.logs.sent_bytes_total (number)
config.config.logs.sent_events_total (number)
config.config.logs.status (string) – State (self-monitoring) information
config.config.logs.use_local_config (boolean)
config.config.logs.vector_configs[] (object)
config.config.logs.vector_configs[].id (string)
config.config.logs.vector_configs[].name (string)
config.config.logs.version (string)
config.config.metrics (object)
config.config.metrics.custom_targets[] (object)
config.config.metrics.custom_targets[].disabled (boolean)
config.config.metrics.custom_targets[].interval_sec (number)
config.config.metrics.custom_targets[].labels (object)
config.config.metrics.custom_targets[].last_scrape_error (string)
config.config.metrics.custom_targets[].last_scrape_items (integer)
config.config.metrics.custom_targets[].last_scrape_time (string)
config.config.metrics.custom_targets[].metrics_path (string)
config.config.metrics.custom_targets[].name (string)
config.config.metrics.custom_targets[].status (string) – State (self-monitoring) information
config.config.metrics.custom_targets[].target (string)
config.config.metrics.enabled (boolean)
config.config.metrics.use_local_config (boolean)
config.config.metrics.version (string)
config.config.proxy (object)
config.config.proxy.auth_token (string)
config.config.proxy.cache_binaries (boolean)
config.config.proxy.http (string)
config.config.proxy.https (string)
config.config.proxy.local_server (string)
config.config.proxy.log_requests_file (string)
config.config.proxy.register (boolean)
config.config.proxy.tls_cert_file (string)
config.config.proxy.tls_key_file (string)
config.config.snmp (object)
config.config.snmp.enabled (boolean)
config.config.snmp.targets[] (object)
config.config.snmp.targets[].description (string)
config.config.snmp.targets[].disabled (boolean)
config.config.snmp.targets[].fqdn (string)
config.config.snmp.targets[].labels (object)
config.config.snmp.targets[].mib_files_names[] (string)
config.config.snmp.targets[].modules[] (string)
config.config.snmp.targets[].name (string)
config.config.snmp.targets[].port (integer)
config.config.snmp.targets[].retries (integer)
config.config.snmp.targets[].snmp_packets_retries_total (integer)
config.config.snmp.targets[].snmp_packets_total (integer)
config.config.snmp.targets[].snmp_requests_errors_total (integer)
config.config.snmp.targets[].snmp_unexpected_pdu_total (integer)
config.config.snmp.targets[].status (string) – State (self-monitoring) information
config.config.snmp.targets[].tech_account_name (string)
config.config.snmp.targets[].tech_auth_id (string)
config.config.snmp.targets[].templates (string)
config.config.snmp.targets[].timeout (integer)
config.config.snmp.targets[].version (string:enum)
config.config.snmp_traps (object)
config.config.snmp_traps.communities[] (string)
config.config.snmp_traps.enabled_snmp_traps (boolean)
config.config.snmp_traps.enabled_v1_v2c (boolean)
config.config.snmp_traps.enabled_v3 (boolean)
config.config.snmp_traps.port (integer)
config.config.snmp_traps.tech_accounts_names_v1_v2c[] (string)
config.config.snmp_traps.tech_accounts_names_v3[] (string)
config.config.snmp_traps.trap_received_by_account_name (object)
config.config.snmp_traps.trap_received_total (integer) – State (self-monitoring) information
config.config.traces (object)
config.config.traces.discovery_services[] (object)
config.config.traces.discovery_services[].exe_path (string, required)
config.config.traces.discovery_services[].name (string, required)
config.config.traces.enabled (boolean, required)
config.config.traces.mode (string, required)
config.config.upstreams[] (object)
config.config.upstreams[].address (string)
config.config.upstreams[].auth_token (string)
config.config.upstreams[].insecure (boolean)
config.config.upstreams[].load_binaries (boolean)
config.config.upstreams[].name (string)
config.config.watcher (object)
config.config.watcher.config_update_interval (string)
config.config.watcher.disable_force_local (boolean)
config.config.watcher.force_local (boolean)
config.config.watcher.instance_send_interval (string)
config.config.watcher.load_concurrency (integer)
config.config.watcher.no_configuration (boolean)
config.config.watcher.register_interval (string)
config.config.watcher.register_retry (integer)
config.config.watcher.request_timeout (string)
config.created_time (string)
config.upstream_id (string)
config.version (integer)
created_time (string)
description (string)
disabled_time (string)
id (string)
is_disabled (boolean)
isLimitExceeded (boolean)
name (string)
state (object)
state.arch (string)
state.config_applied_version (integer)
state.config_updated_time (string)
state.deployment (string)
state.hostname (string)
state.last_request_time (string)
state.os (string)
state.restart_count (integer)
state.runtime (string)
state.startup_time (string)
state.status (string)
state.type (string)
state.version (string)
updated_time (string)
upstream (object)
upstream.address_http (string)
upstream.address_https (string)
upstream.auth_token (string)
upstream.id (string)
upstream.insecure (boolean)
upstream.load_binaries (boolean)
upstream.name (string)
upstream.number_of_connected_agents (integer)
upstream.type (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /agents/{id}/can-delete
Check if agent can be deleted
- Parameters:
id (string, required) – Agent ID
- Response JSON Object:
can_delete (boolean)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /agents/{id}/check-name
Check if interface name exists
- Parameters:
id (string, required) – Agent ID
- Query Parameters:
name (string, required) – Interface name exporters/target/ipmi/snmp
- Response JSON Object:
exists (boolean)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /agents/exporters
Get all available exporters
- Response JSON Object:
exporters[] (object)
exporters[].address (string)
exporters[].args_template (string)
exporters[].available_settings_types[] (string:enum)
exporters[].config_filename (string)
exporters[].config_template (string)
exporters[].description (string)
exporters[].fields_defaults (object)
exporters[].go_metrics (boolean)
exporters[].health_path (string)
exporters[].interval_sec (integer)
exporters[].log_level (string)
exporters[].metrics_path (string)
exporters[].name (string)
exporters[].proc_metrics (boolean)
exporters[].url (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /agents/info
Get all agent names, hostnames and statuses
- Response JSON Object:
agents (object)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /agents/sources
Get sources grouped by hostname
- Query Parameters:
q (string) – Search targets by hostname by substring
page (integer) – pagination: page number
limit (integer) – pagination: number rows on page
active (boolean) – Only active targets
- Response JSON Object:
agents[] (object)
agents[].hostname (string)
agents[].id (string)
agents[].name (string)
agents[].sources[] (object)
agents[].sources[].address (string)
agents[].sources[].enabled (boolean)
agents[].sources[].name (string)
agents[].sources[].status (string)
agents[].sources[].type (string:enum)
agents[].status (string)
paging (object)
paging.current_page (integer)
paging.next_page (integer)
paging.per_page (integer)
paging.previous_page (integer)
paging.total (integer)
paging.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /agents/targets
Get targets grouped by hostname
- Query Parameters:
q (string) – Search targets by hostname by substring
page (integer) – pagination: page number
limit (integer) – pagination: number rows on page
active (boolean) – Only active targets
- Response JSON Object:
paging (object)
paging.current_page (integer)
paging.next_page (integer)
paging.per_page (integer)
paging.previous_page (integer)
paging.total (integer)
paging.total_page (integer)
targets[] (object)
targets[].hostname (string) – For custom - label or target; for agent’s - label or agent’s hostname
targets[].targets[] (object)
targets[].targets[].labels (object)
targets[].targets[].name (string)
targets[].targets[].status (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /agents/upstreams/{id}
Get agents by upstream ID
- Parameters:
id (string, required) – Upstream ID
- Query Parameters:
q (string) – Search targets by hostname by substring
page (integer) – pagination: page number
limit (integer) – pagination: number rows on page
active (boolean) – Only active targets
- Response JSON Object:
agents[] (object)
agents[].agent_upstream (object)
agents[].agent_upstream.address_http (string)
agents[].agent_upstream.address_https (string)
agents[].agent_upstream.auth_token (string)
agents[].agent_upstream.id (string)
agents[].agent_upstream.insecure (boolean)
agents[].agent_upstream.load_binaries (boolean)
agents[].agent_upstream.name (string)
agents[].agent_upstream.number_of_connected_agents (integer)
agents[].agent_upstream.type (string)
agents[].config (object)
agents[].config.author (string)
agents[].config.config (object)
agents[].config.config.exporters (object)
agents[].config.config.exporters.enabled (boolean)
agents[].config.config.exporters.exporters[] (object)
agents[].config.config.exporters.exporters[].address (string)
agents[].config.config.exporters.exporters[].args (string)
agents[].config.config.exporters.exporters[].config (string)
agents[].config.config.exporters.exporters[].config_filename (string) – For SettingsType = args
agents[].config.config.exporters.exporters[].disabled (boolean)
agents[].config.config.exporters.exporters[].go_metrics (boolean) – For SettingsType = am
agents[].config.config.exporters.exporters[].interval_sec (number)
agents[].config.config.exporters.exporters[].labels (object)
agents[].config.config.exporters.exporters[].last_scrape_error (string)
agents[].config.config.exporters.exporters[].last_scrape_items (integer)
agents[].config.config.exporters.exporters[].last_scrape_time (string)
agents[].config.config.exporters.exporters[].name (string)
agents[].config.config.exporters.exporters[].settings_type (string:enum)
agents[].config.config.exporters.exporters[].status (string) – State (self-monitoring) information
agents[].config.config.exporters.exporters[].version (string) – For both
agents[].config.config.general (object)
agents[].config.config.general.api_version (string)
agents[].config.config.general.auto_config_interval (string)
agents[].config.config.general.base_directory (string)
agents[].config.config.general.enable_auto_config (boolean) – Auto-configuration settings
agents[].config.config.general.hostname (string)
agents[].config.config.general.id (string) – Agent identification
agents[].config.config.general.insecure (boolean)
agents[].config.config.general.ip (string)
agents[].config.config.general.load_binaries (boolean)
agents[].config.config.general.local_server (string) – Agent starting settings
agents[].config.config.general.log_level (string)
agents[].config.config.general.name (string)
agents[].config.config.general.test_mode (boolean)
agents[].config.config.general.upstream_address (string) – Agent sending data settings
agents[].config.config.ipmi (object)
agents[].config.config.ipmi.enabled (boolean)
agents[].config.config.ipmi.targets[] (object)
agents[].config.config.ipmi.targets[].collectors[] (string)
agents[].config.config.ipmi.targets[].customArgs (string)
agents[].config.config.ipmi.targets[].description (string)
agents[].config.config.ipmi.targets[].disabled (boolean)
agents[].config.config.ipmi.targets[].driver (string)
agents[].config.config.ipmi.targets[].exclude_sensor_ids[] (integer)
agents[].config.config.ipmi.targets[].fqdn (string)
agents[].config.config.ipmi.targets[].labels (object)
agents[].config.config.ipmi.targets[].name (string)
agents[].config.config.ipmi.targets[].port (integer)
agents[].config.config.ipmi.targets[].privilege (string)
agents[].config.config.ipmi.targets[].status (string)
agents[].config.config.ipmi.targets[].tech_account_name (string)
agents[].config.config.ipmi.targets[].tech_auth_id (string)
agents[].config.config.ipmi.targets[].timeout (integer)
agents[].config.config.ipmi.targets[].workaround_flags[] (string)
agents[].config.config.logs (object)
agents[].config.config.logs.enabled (boolean)
agents[].config.config.logs.self_logs (boolean)
agents[].config.config.logs.sent_bytes_total (number)
agents[].config.config.logs.sent_events_total (number)
agents[].config.config.logs.status (string) – State (self-monitoring) information
agents[].config.config.logs.use_local_config (boolean)
agents[].config.config.logs.vector_configs[] (object)
agents[].config.config.logs.vector_configs[].id (string)
agents[].config.config.logs.vector_configs[].name (string)
agents[].config.config.logs.version (string)
agents[].config.config.metrics (object)
agents[].config.config.metrics.custom_targets[] (object)
agents[].config.config.metrics.custom_targets[].disabled (boolean)
agents[].config.config.metrics.custom_targets[].interval_sec (number)
agents[].config.config.metrics.custom_targets[].labels (object)
agents[].config.config.metrics.custom_targets[].last_scrape_error (string)
agents[].config.config.metrics.custom_targets[].last_scrape_items (integer)
agents[].config.config.metrics.custom_targets[].last_scrape_time (string)
agents[].config.config.metrics.custom_targets[].metrics_path (string)
agents[].config.config.metrics.custom_targets[].name (string)
agents[].config.config.metrics.custom_targets[].status (string) – State (self-monitoring) information
agents[].config.config.metrics.custom_targets[].target (string)
agents[].config.config.metrics.enabled (boolean)
agents[].config.config.metrics.use_local_config (boolean)
agents[].config.config.metrics.version (string)
agents[].config.config.proxy (object)
agents[].config.config.proxy.auth_token (string)
agents[].config.config.proxy.cache_binaries (boolean)
agents[].config.config.proxy.http (string)
agents[].config.config.proxy.https (string)
agents[].config.config.proxy.local_server (string)
agents[].config.config.proxy.log_requests_file (string)
agents[].config.config.proxy.register (boolean)
agents[].config.config.proxy.tls_cert_file (string)
agents[].config.config.proxy.tls_key_file (string)
agents[].config.config.snmp (object)
agents[].config.config.snmp.enabled (boolean)
agents[].config.config.snmp.targets[] (object)
agents[].config.config.snmp.targets[].description (string)
agents[].config.config.snmp.targets[].disabled (boolean)
agents[].config.config.snmp.targets[].fqdn (string)
agents[].config.config.snmp.targets[].labels (object)
agents[].config.config.snmp.targets[].mib_files_names[] (string)
agents[].config.config.snmp.targets[].modules[] (string)
agents[].config.config.snmp.targets[].name (string)
agents[].config.config.snmp.targets[].port (integer)
agents[].config.config.snmp.targets[].retries (integer)
agents[].config.config.snmp.targets[].snmp_packets_retries_total (integer)
agents[].config.config.snmp.targets[].snmp_packets_total (integer)
agents[].config.config.snmp.targets[].snmp_requests_errors_total (integer)
agents[].config.config.snmp.targets[].snmp_unexpected_pdu_total (integer)
agents[].config.config.snmp.targets[].status (string) – State (self-monitoring) information
agents[].config.config.snmp.targets[].tech_account_name (string)
agents[].config.config.snmp.targets[].tech_auth_id (string)
agents[].config.config.snmp.targets[].templates (string)
agents[].config.config.snmp.targets[].timeout (integer)
agents[].config.config.snmp.targets[].version (string:enum)
agents[].config.config.snmp_traps (object)
agents[].config.config.snmp_traps.communities[] (string)
agents[].config.config.snmp_traps.enabled_snmp_traps (boolean)
agents[].config.config.snmp_traps.enabled_v1_v2c (boolean)
agents[].config.config.snmp_traps.enabled_v3 (boolean)
agents[].config.config.snmp_traps.port (integer)
agents[].config.config.snmp_traps.tech_accounts_names_v1_v2c[] (string)
agents[].config.config.snmp_traps.tech_accounts_names_v3[] (string)
agents[].config.config.snmp_traps.trap_received_by_account_name (object)
agents[].config.config.snmp_traps.trap_received_total (integer) – State (self-monitoring) information
agents[].config.config.traces (object)
agents[].config.config.traces.discovery_services[] (object)
agents[].config.config.traces.discovery_services[].exe_path (string, required)
agents[].config.config.traces.discovery_services[].name (string, required)
agents[].config.config.traces.enabled (boolean, required)
agents[].config.config.traces.mode (string, required)
agents[].config.config.upstreams[] (object)
agents[].config.config.upstreams[].address (string)
agents[].config.config.upstreams[].auth_token (string)
agents[].config.config.upstreams[].insecure (boolean)
agents[].config.config.upstreams[].load_binaries (boolean)
agents[].config.config.upstreams[].name (string)
agents[].config.config.watcher (object)
agents[].config.config.watcher.config_update_interval (string)
agents[].config.config.watcher.disable_force_local (boolean)
agents[].config.config.watcher.force_local (boolean)
agents[].config.config.watcher.instance_send_interval (string)
agents[].config.config.watcher.load_concurrency (integer)
agents[].config.config.watcher.no_configuration (boolean)
agents[].config.config.watcher.register_interval (string)
agents[].config.config.watcher.register_retry (integer)
agents[].config.config.watcher.request_timeout (string)
agents[].config.created_time (string)
agents[].config.upstream_id (string)
agents[].config.version (integer)
agents[].created_time (string)
agents[].description (string)
agents[].disabled_time (string)
agents[].id (string)
agents[].is_disabled (boolean)
agents[].isLimitExceeded (boolean)
agents[].name (string)
agents[].state (object)
agents[].state.arch (string)
agents[].state.config_applied_version (integer)
agents[].state.config_updated_time (string)
agents[].state.deployment (string)
agents[].state.hostname (string)
agents[].state.last_request_time (string)
agents[].state.os (string)
agents[].state.restart_count (integer)
agents[].state.runtime (string)
agents[].state.startup_time (string)
agents[].state.status (string)
agents[].state.type (string)
agents[].state.version (string)
agents[].updated_time (string)
agents[].upstream (object)
agents[].upstream.address_http (string)
agents[].upstream.address_https (string)
agents[].upstream.auth_token (string)
agents[].upstream.id (string)
agents[].upstream.insecure (boolean)
agents[].upstream.load_binaries (boolean)
agents[].upstream.name (string)
agents[].upstream.number_of_connected_agents (integer)
agents[].upstream.type (string)
paging (object)
paging.current_page (integer)
paging.next_page (integer)
paging.per_page (integer)
paging.previous_page (integer)
paging.total (integer)
paging.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /dashboards
Получить структуру папок и дашбордов
Возвращает полную иерархическую структуру всех доступных пользователю папок и вложенных в них дашбордов.
- Response JSON Object:
tree[] (object)
tree[].dashboards[] (object)
tree[].dashboards[].charts[] (string)
tree[].dashboards[].description (string)
tree[].dashboards[].groupId (string) – ID папки
tree[].dashboards[].id (string)
tree[].dashboards[].layout[] (string)
tree[].dashboards[].name (string)
tree[].id (string)
tree[].name (string)
tree[].parentId (string) – parentId с маленькой „d“
tree[].position (integer)
- Status Codes:
200 OK – OK
500 Internal Server Error – Внутренняя ошибка сервера
- POST /dashboards
Создать дашборд
Создает новый дашборд. Можно указать ID папки для размещения дашборда внутри нее.
- Request JSON Object:
chart[] (string)
description (string)
folder_id (integer)
layout[] (string)
name (string)
- Response JSON Object:
chart[] (string)
created_at (string)
description (string)
email (string)
folder_id (integer)
id (string)
layout[] (string)
name (string)
position (integer)
- Status Codes:
201 Created – Created
400 Bad Request – Ошибка валидации входных данных
409 Conflict – Дашборд с таким именем уже существует в этой папке
500 Internal Server Error – Внутренняя ошибка сервера
- DELETE /dashboards/{id}
Удалить дашборд
Удаляет дашборд по его ID.
- Parameters:
id (string, required) – ID дашборда для удаления
- Status Codes:
204 No Content – No Content
400 Bad Request – Неверный формат ID
404 Not Found – Дашборд с указанным ID не найден
500 Internal Server Error – Внутренняя ошибка сервера
- GET /dashboards/{id}
Получить дашборд по ID
Возвращает полную информацию о конкретном дашборде по его ID.
- Parameters:
id (string, required) – ID дашборда
- Response JSON Object:
chart[] (string)
created_at (string)
description (string)
email (string)
folder_id (integer)
id (string)
layout[] (string)
name (string)
position (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Неверный формат ID
404 Not Found – Дашборд с указанным ID не найден
500 Internal Server Error – Внутренняя ошибка сервера
- PATCH /dashboards/{id}
Обновить дашборд
Обновляет данные дашборда: название, позицию, содержимое или родительскую папку. Обновляются только переданные поля.
- Parameters:
id (string, required) – ID дашборда
- Request JSON Object:
chart[] (string)
description (string)
folder_id (integer)
layout[] (string)
name (string)
position (integer)
- Response JSON Object:
chart[] (string)
created_at (string)
description (string)
email (string)
folder_id (integer)
id (string)
layout[] (string)
name (string)
position (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Ошибка валидации или неверный ID
404 Not Found – Дашборд с указанным ID не найден
500 Internal Server Error – Внутренняя ошибка сервера
- POST /dashboards/folders
Создать папку
Создает новую папку (каталог) для дашбордов. Можно указать родительскую папку для создания вложенности.
- Request JSON Object:
name (string)
order (integer)
parent_id (integer)
- Response JSON Object:
created_at (string)
id (integer)
name (string)
parent_id (integer)
path (string)
position (integer)
- Status Codes:
201 Created – Created
400 Bad Request – Ошибка валидации входных данных
409 Conflict – Папка с таким именем уже существует на этом уровне
500 Internal Server Error – Внутренняя ошибка сервера
- DELETE /dashboards/folders/{id}
Удалить папку
Удаляет папку и все ее содержимое (вложенные папки и дашборды) рекурсивно.
- Parameters:
id (integer, required) – ID папки для удаления
- Status Codes:
204 No Content – No Content
400 Bad Request – Неверный формат ID
404 Not Found – Папка с указанным ID не найдена
500 Internal Server Error – Внутренняя ошибка сервера
- PATCH /dashboards/folders/{id}
Обновить папку
Обновляет данные папки: название, позицию или родителя (перемещение). Обновляются только переданные поля.
- Parameters:
id (integer, required) – ID папки
- Request JSON Object:
name (string)
parentId (integer)
position (integer) –
orderв JSON маппится наposition
- Response JSON Object:
id (string)
name (string)
parentId (integer)
position (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Ошибка валидации или неверный ID
404 Not Found – Папка с указанным ID не найдена
500 Internal Server Error – Внутренняя ошибка сервера
- GET /ep/aggregate
Proxy request to Victoria Metrics endpoint https://docs.victoriametrics.com/victoriametrics/keyconcepts/#instant-query and aggregates data received
- Query Parameters:
query (string, required) – Raw promql query to execute against victoria metrics, for example - avg (cpu_load{environment!=
step (string) – step, default is 5m
aggregation (string) – choose aggregation method, can be one of avg,max,min,count,sum,disabled
group_by (string) – choose grouping labels, coma separated string like hostname,mountpoint
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /ep/audit/by_interval
List audit events for in interval
- Query Parameters:
from (string) – from timestamp in RFC3339 format - 2006-01-02T15:04:05Z07:00
to (string) – to timestamp in RFC3339 format - 2006-01-02T15:04:05Z07:00
- Response JSON Array of Objects:
action (string)
created_at (string)
entity_id (string)
id (integer)
new (object)
old (object)
user_id (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /ep/audit/by_object/{id}
List audit events for object
- Parameters:
id (string, required) – Object ID
- Query Parameters:
from (string) – from timestamp in RFC3339 format - 2006-01-02T15:04:05Z07:00
to (string) – to timestamp in RFC3339 format - 2006-01-02T15:04:05Z07:00
- Response JSON Array of Objects:
action (string)
created_at (string)
entity_id (string)
id (integer)
new (object)
old (object)
user_id (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /ep/audit/by_user/{id}
List audit events for user
- Parameters:
id (string, required) – User’s Username
- Query Parameters:
from (string) – from timestamp in RFC3339 format - 2006-01-02T15:04:05Z07:00
to (string) – to timestamp in RFC3339 format - 2006-01-02T15:04:05Z07:00
- Response JSON Array of Objects:
action (string)
created_at (string)
entity_id (string)
id (integer)
new (object)
old (object)
user_id (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/baseline_lower
Считает нижний предел бейслайна, ответ аналогичен queryVictoriaMetricsByRange
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/baseline_upper
Считает верхний предел бейслайна, ответ аналогичен queryVictoriaMetricsByRange
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/chart/adaptive_lower
Считает нижний предел бейслайна, ответ аналогичен queryVictoriaMetricsByRange
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/chart/adaptive_upper
Считает верхний предел бейслайна, ответ аналогичен queryVictoriaMetricsByRange
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/chart/mad_lower
Считает нижний предел бейслайна, ответ аналогичен queryVictoriaMetricsByRange
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/chart/mad_upper
Считает верхний предел бейслайна, ответ аналогичен queryVictoriaMetricsByRange
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/chart/sd_lower
Считает нижний предел бейслайна, ответ аналогичен queryVictoriaMetricsByRange
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/chart/sd_upper
Считает верхний предел бейслайна, ответ аналогичен queryVictoriaMetricsByRange
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /ep/count_problems_by_object_id
Count problems by object_id
- Response JSON Array of Objects:
critical (integer)
object_id (string)
warning (integer)
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
500 Internal Server Error – Internal Server Error
- GET /ep/event/
Find events by filter
- Query Parameters:
problem_id (string) – Problem ID - optional
monitor_id (string) – Monitor ID - optional
metric_id (string) – Metric ID - optional. Field accepts comma separated IDs of metrics like a88819cd035e85a0d09bf13cf51c97e8,ed0ed671c8022a9b782568fd682ae3d7 (without extra spaces
rule_id (string) – Rule ID - optional
text (string) – text - used for full text search on message contents
from (integer) – From timestamp - date in unix milliseconds format like
Date.now()returns, default is now minus 72 hoursto (integer) – To timestamp - date in unix milliseconds format like
Date.now()returns. Default is nowlevel (string) – criticality level of problem, can be one of OK, OK_NODATA, WARNING, WARNING_NO_DATA, CRITICAL, CRITICAL_NODATA, NO_DATA
page (integer) – page to show, default is 0
limit (integer) – limit of items per page to show, default is 10
- Response JSON Object:
items[] (object)
items[].collected_time (string)
items[].created_time (string)
items[].description (string)
items[].labels (object)
items[].message (string)
items[].meta (object)
items[].metric_id (string)
items[].metric_name (string)
items[].monitor_id (string)
items[].monitor_query (string)
items[].muted (boolean)
items[].new_state (string)
items[].no_data (boolean)
items[].object (string)
items[].old_state (string)
items[].parameters (object)
items[].problem_id (string)
items[].rule_id (string)
items[].value (number)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/export
Export monitors and rules in form of YAML file usable for seeding.
- Response JSON Array of Objects:
aggregator (string) – Aggregator задаёт функцию агрегации для пользовательской группировки результатов запроса
contactPoints[] (string)
description (string) – Description - человеко-читаемое описание монитора
groupBy[] (string)
id (string) – ID - уникальный идентификатор монитора
labels (object) – Labels - хранит пользовательские ярлыки для монитора
metricTTL (integer) – MetricTTL - задаёт время жизни метрики
name (string) – Name - уникальное, человеко-читаемое название монитора, например - cpu_load_dev
noDataGraceTime (integer) – NoDataGraceTime - https://jira.astralinux.ru/browse/MON-2275
noDataMode (string) – NoDataMode - режим обработки no_data, может быть 4 варианта: «last state», «close problem», «notify», «silent»
notificationGroup[] (string)
objectTag (string) – ObjectTag - какой ярлыкlabel метрики хранит в себе идентификатор объекта - например, hostname=holod.local означает, что метрика взята с сервера holod.local
query (string) – Query - текст запроса к victoria metrics
rate (integer) – Rate - задаёт интервал получения метрик
rules[] (object)
rules[].id (string) – ID - уникальный идентификатор правила
rules[].labelsAbsent (object) – LabelsAbsent - задаёт тэги, которых НЕ ДОЛЖНО быть у метрики для применения правила
rules[].labelsRequired (object) – LabelsRequired - задаёт тэги, которые должны быть у метрики для применения правила
rules[].parameters (object) – Parameters задаёт параметры правила, их наличие и значения зависят от типа правила
rules[].priority (integer) – Priority задаёт приоритет правила, чем ниже, тем важнее. Правило с приоритетом 1 важнее правила с приоритетом 3
rules[].type (string) – Type задаёт тип правила
shardingKey (string) – ShardingKey ключ шардирования для монитора
step (integer) – Step - задаёт шаг времени при получении метрик
useNotificationPolicy (boolean) – UseNotificationPolicy - используются политики оповещений, при этом NotificationChannel NotificationRecipients игнорируются
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /ep/monitor/
Показывает коллекцию мониторов
- Query Parameters:
tag (string) – filter monitors by tags“ values
filter (string) – filter monitors by names or descriptions
limit (integer) – limit of items per page to show, default is 10
page (integer) – page to show, default is 0
- Response JSON Object:
items[] (object)
items[].all (integer) – All - счётчик всех метрик
items[].critical (integer) – Critical - счётчик метрик в состоянии Critical
items[].description (string) – Description - человеко-читаемое описание монитора
items[].fully_muted (boolean) – FullyMuted означает, что монитор сейчас полностью заглушен
items[].id (string) – ID - уникальный идентификатор монитора
items[].labels (object) – Labels - ярлыки монитора
items[].muted_until (string) – MutedUntil - момент времени, когда заглушение монитор пройдёт
items[].mutes[] (object)
items[].mutes[].created_at (string) – CreatedAt - момент создания монитора в базе данных
items[].mutes[].creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
items[].mutes[].description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
items[].mutes[].finish_at (string) – FinishAt хранит момент времени, когда это заглушение будет снято
items[].mutes[].full (boolean) – Full означает, что заглушение применено ко всем группам метрик
items[].mutes[].id (integer) – ID - уникальный идентификатор заглушки на монитор
items[].mutes[].is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
items[].mutes[].labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
items[].mutes[].monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
items[].mutes[].started_at (string) – StartedAt хранит момент времени, когда это заглушение начало действовать
items[].mutes[].tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
items[].mutes[].ttl (string) – TTL - задаёт время жизни мьюта
items[].name (string) – Name - уникальное, человеко-читаемое название монитора, например - cpu_load_dev
items[].no_data (integer) – NoData - счётчик метрик в состоянии NoData
items[].ok (integer) – Ok - счётчик метрик в состоянии OK
items[].partially_muted (boolean) – PartiallyMuted означает, что монитор частисно заглушен - то есть, для одних комбинаций ярлыков он заглуше, для других - нет
items[].status (string) – Status - самое тяжёлое состояние группы монитора
items[].status_as_int (integer) – StatusAsInt - состояние группы монитора в виде числа - 0-OK, 1-NEW,2-NO_DATA,3-WARN,4-CRITICAL
items[].type (string) – Type задаёт тип монитора
items[].updated_at (string) – UpdatedAt хранит момент, когда был отправлен запрос к Victoria Metrics
items[].vm_query_error (string) – VmQueryError хранит крайную ошибку запроса к Victoria Metrics
items[].vm_query_ok (boolean) – VmQueryOK означает, что крайний запрос к Victoria Metrics завершился успешно
items[].warning (integer) – Warning - счётчик метрик в состоянии Warning
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- POST /ep/monitor/
Создает новый монитор
- Response JSON Object:
aggregator (string) – Aggregator задаёт функцию агрегации для пользовательской группировки результатов запроса
alert_window (string) – AlertWindow - промежуток времени
basic_quantile (number) – BasicQuantile - квантиль для базового монитора - от 0.5 до 0.95
contact_points[] (string)
created_at (string) – CreatedAt - момент создания монитора в базе данных
creator (string) – Creator - идентификатор пользователя, который создал монитор
description (string) – Description - человеко-читаемое описание монитора
deviation (number) – Deviation - отклонение, целое число от 0 до 5
deviation_count (string) – DeviationCount - задаёт режим подсчёта отклонений - выше, ниже, или же выше и ниже
escalation_chains[] (integer)
group_by[] (string)
id (string) – ID - уникальный идентификатор монитора
labels (object) – Labels - хранит пользовательские ярлыки для монитора
margin_multiplier (number) – MarginMultiplier Множитель ширины коридора 0.1 .. 5
metric_ttl (string) – MetricTTL - задаёт время жизни метрики
mute_warnings (boolean) – MuteWarnings - заглушать проблемы и события уровня StateWarning
name (string) – Name - уникальное, человеко-читаемое название монитора, например - cpu_load_dev
no_data_grace_time (string) – NoDataGraceTime - в режимах NoDataModeNotify, NoDataModeSilent сколько монитор ждёт, прежде чем метрика будет переведена в состояние NoData по мнению правила
no_data_mode (string) – NoDataMode режим обработки ситуации NO_DATA
notification_group[] (string)
object_tag (string) – ObjectTag - какой ярлыкlabel метрики хранит в себе идентификатор объекта - например, hostname=holod.local означает, что метрика взята с сервера holod.local
query (string) – Query - текст запроса к victoria metrics
rate (string) – Rate - задаёт интервал получения метрик
rules[] (object)
rules[].created_at (string) – CreatedAt задаёт момент создания правила
rules[].creator (string) – Creator хранит идентификатор пользователя, который создал правило
rules[].id (string) – ID - задаёт уникальный идентификатор правила в базе данных
rules[].labels_absent (object) – LabelsAbsent - задаёт ярлыки, которых НЕ ДОЛЖНО быть у метрики для применения правила
rules[].labels_required (object) – LabelsRequired - задаёт ярлыки, которые должны быть у метрики для применения правила
rules[].monitor_id (string) – MonitorID - задаёт идентификатор монитора, к которому присоединяется правило
rules[].parameters (object) – Parameters задаёт параметры правила, их наличие и значения зависят от типа правила
rules[].priority (integer) – Priority задаёт приоритет правила, чем ниже, тем важнее. Правило с приоритетом 1 важнее правила с приоритетом 3
rules[].type (string) – Type задаёт тип правила
seasonality (string) – Seasonality - сезонность, может быть
hourly,``daily``,``weekly``sharding_key (string) – ShardingKey ключ шардирования для монитора
stddev_multiplier (number) – StddevMultiplier Множитель стандартного отклонения 0.1 .. 5
step (string) – Step - задаёт шаг времени при получении метрик
threshold_by_covar (number) – параметры монитора для адаптивной стратегии ThresholdByCovar Порог по коэффициенту отклонения 0.1 .. 5
type (string) – Type задаёт тип монитора
use_notification_policy (boolean) – UseNotificationPolicy - используются политика оповещений, при этом NotificationChannel NotificationRecipients игнорируются
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- Response Headers:
Location (string) – /ep/monitor/41x0300aaaaa0000
- DELETE /ep/monitor/{id}
Deletes monitor by ID
- Parameters:
id (string, required) – Monitor ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/monitor/{id}
Show Monitor selected by ID
- Parameters:
id (string, required) – Monitor ID
- Query Parameters:
filter (string) – filter by labels value to apply for groups returned
page (integer) – page of metric’s groups to show, default is 0
limit (integer) – limit of metric’s groups per page to show, default is 50
- Response JSON Object:
metric_groups[] (object)
metric_groups[].group (object) – Group describes group identification of metric as map
metric_groups[].group_by[] (string)
metric_groups[].id (string) – ID is unique metrics identifier
metric_groups[].labels (object) – Labels describes metric
metric_groups[].last_recovered_timestamp (string) – LastRecoveredTimestamp - момент крайнего перехода метрики из состояний StateWarning, StateCritical, StateNoData в StateOK
metric_groups[].last_triggered_timestamp (string) – LastTriggeredTimestamp - момент крайнего перехода метрики из состояния StateOK в StateWarning, StateCritical, StateNoData
metric_groups[].muted (boolean) – Muted означает, что сейчас группа метрик заглушена, так как на неё действует частичное заглушение по ярлыкам метрики
metric_groups[].muted_until (string) – MutedUntil момент, когда группа метрик будет разглушена
metric_groups[].mutes[] (object)
metric_groups[].mutes[].created_at (string) – CreatedAt - момент создания монитора в базе данных
metric_groups[].mutes[].creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
metric_groups[].mutes[].description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
metric_groups[].mutes[].finish_at (string) – FinishAt хранит момент времени, когда это заглушение будет снято
metric_groups[].mutes[].full (boolean) – Full означает, что заглушение применено ко всем группам метрик
metric_groups[].mutes[].id (integer) – ID - уникальный идентификатор заглушки на монитор
metric_groups[].mutes[].is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
metric_groups[].mutes[].labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
metric_groups[].mutes[].monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
metric_groups[].mutes[].started_at (string) – StartedAt хранит момент времени, когда это заглушение начало действовать
metric_groups[].mutes[].tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
metric_groups[].mutes[].ttl (string) – TTL - задаёт время жизни мьюта
metric_groups[].name (string) – Name is metric name
metric_groups[].no_data (boolean) – NoData means metric value was empty - it had no data when it was updated last time
metric_groups[].object_id (string) – ObjectID describes observation object to which this metric belongs. It can be hostname/service id/container id and so on.
metric_groups[].rule_id (string) – RuleID - правило, которое влияет на метрику
metric_groups[].rule_type (string) – RuleType - тип правила, которое влияет на метрику
metric_groups[].state (string) – State shows metric state as string
metric_groups[].state_number (number) – StateAsFloat shows metric state as number
metric_groups[].timestamp (string) – Timestamp shows when metric value was received
metric_groups[].value (number) – Value shows metric value
monitor (object)
monitor.aggregator (string) – Aggregator задаёт функцию агрегации для пользовательской группировки результатов запроса
monitor.alert_window (string) – AlertWindow - промежуток времени
monitor.all (integer) – All - счётчик всех метрик
monitor.basic_quantile (number) – BasicQuantile - квантиль для базового монитора - от 0.5 до 0.95
monitor.contact_points[] (string)
monitor.created_at (string) – CreatedAt - момент создания монитора в базе данных
monitor.creator (string) – Creator - идентификатор пользователя, который создал монитор
monitor.critical (integer) – Critical - счётчик метрик в состоянии Critical
monitor.description (string) – Description - человеко-читаемое описание монитора
monitor.deviation (number) – Deviation - отклонение, целое число от 0 до 5
monitor.deviation_count (string) – DeviationCount - задаёт режим подсчёта отклонений - выше, ниже, или же выше и ниже
monitor.escalation_chains[] (integer)
monitor.fully_muted (boolean) – FullyMuted означает, что монитор сейчас полностью заглушен
monitor.group_by[] (string)
monitor.id (string) – ID - уникальный идентификатор монитора
monitor.labels (object) – Labels - хранит пользовательские ярлыки для монитора
monitor.margin_multiplier (number) – MarginMultiplier Множитель ширины коридора 0.1 .. 5
monitor.metric_ttl (string) – MetricTTL - задаёт время жизни метрики
monitor.mute_warnings (boolean) – MuteWarnings - заглушать проблемы и события уровня StateWarning
monitor.muted_until (string) – MutedUntil - момент времени, когда заглушение монитор пройдёт
monitor.mutes[] (object)
monitor.mutes[].created_at (string) – CreatedAt - момент создания монитора в базе данных
monitor.mutes[].creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
monitor.mutes[].description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
monitor.mutes[].finish_at (string) – FinishAt хранит момент времени, когда это заглушение будет снято
monitor.mutes[].full (boolean) – Full означает, что заглушение применено ко всем группам метрик
monitor.mutes[].id (integer) – ID - уникальный идентификатор заглушки на монитор
monitor.mutes[].is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
monitor.mutes[].labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
monitor.mutes[].monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
monitor.mutes[].started_at (string) – StartedAt хранит момент времени, когда это заглушение начало действовать
monitor.mutes[].tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
monitor.mutes[].ttl (string) – TTL - задаёт время жизни мьюта
monitor.name (string) – Name - уникальное, человеко-читаемое название монитора, например - cpu_load_dev
monitor.next_update_on (string) – NextUpdateOn отображает момент следующего обновления групп метрик монитора
monitor.no_data (integer) – NoData - счётчик метрик в состоянии NoData
monitor.no_data_grace_time (string) – NoDataGraceTime - в режимах NoDataModeNotify, NoDataModeSilent сколько монитор ждёт, прежде чем метрика будет переведена в состояние NoData по мнению правила
monitor.no_data_mode (string) – NoDataMode режим обработки ситуации NO_DATA
monitor.no_data_mode_description (string) – NoDataModeDescription человеко понятное описание режима работы обработки ситуации NO_DATA
monitor.notification_group[] (string)
monitor.object_id (string) – ObjectTag - какой ярлыкlabel метрики хранит в себе идентификатор объекта - например, hostname=holod.local означает, что метрика взята с сервера holod.local
monitor.ok (integer) – Ok - счётчик метрик в состоянии OK
monitor.partially_muted (boolean) – PartiallyMuted означает, что монитор частисно заглушен - то есть, для одних комбинаций ярлыков он заглуше, для других - нет
monitor.query (string) – Query - текст запроса к victoria metrics
monitor.rate (string) – Rate - задаёт интервал получения метрик
monitor.seasonality (string) – Seasonality - сезонность, может быть
hourly,``daily``,``weekly``monitor.status (string) – Status - самое тяжёлое состояние группы метрик монитора
monitor.stddev_multiplier (number) – StddevMultiplier Множитель стандартного отклонения 0.1 .. 5
monitor.step (string) – Step - задаёт шаг времени при получении метрик
monitor.threshold_by_covar (number) – параметры монитора для адаптивной стратегии ThresholdByCovar Порог по коэффициенту отклонения 0.1 .. 5
monitor.type (string) – Type задаёт тип монитора
monitor.updated_at (string) – UpdatedAt хранит момент, когда был отправлен запрос к Victoria Metrics
monitor.use_notification_policy (boolean) – UseNotificationPolicy - используется политика оповещений, при этом NotificationChannel и NotificationRecipients игнорируются
monitor.vm_query_error (string) – VmQueryError хранит крайную ошибку запроса к Victoria Metrics
monitor.vm_query_ok (boolean) – VmQueryOK означает, что крайний запрос к Victoria Metrics завершился успешно
monitor.warning (integer) – Warning - счётчик метрик в состоянии Warning
notification_groups[] (object)
notification_groups[].critical (integer) – Critical - счётчик подгрупп метрик в состоянии Critical
notification_groups[].id (string) – ID уникальный идентификатор группы оповещений
notification_groups[].labels (object) – Labels - ярлыки группы оповещений
notification_groups[].muted (boolean) – Muted означает, что сейчас группа оповещений заглушена, так как на неё действует частичное заглушение по ярлыкам метрики
notification_groups[].muted_until (string) – MutedUntil момент, когда группа оповещений будет разглушена
notification_groups[].mutes[] (object)
notification_groups[].mutes[].created_at (string) – CreatedAt - момент создания монитора в базе данных
notification_groups[].mutes[].creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
notification_groups[].mutes[].description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
notification_groups[].mutes[].finish_at (string) – FinishAt хранит момент времени, когда это заглушение будет снято
notification_groups[].mutes[].full (boolean) – Full означает, что заглушение применено ко всем группам метрик
notification_groups[].mutes[].id (integer) – ID - уникальный идентификатор заглушки на монитор
notification_groups[].mutes[].is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
notification_groups[].mutes[].labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
notification_groups[].mutes[].monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
notification_groups[].mutes[].started_at (string) – StartedAt хранит момент времени, когда это заглушение начало действовать
notification_groups[].mutes[].tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
notification_groups[].mutes[].ttl (string) – TTL - задаёт время жизни мьюта
notification_groups[].name (string) – Name имя группы оповещений, например -
development, для случая группировки оповещений по ярлыкуenvironmentnotification_groups[].new (integer) – New - счётчик подгрупп метрик в состоянии New
notification_groups[].no_data (integer) – NoData - счётчик подгрупп метрик в состоянии NoData
notification_groups[].ok (integer) – OK - счётчик подгрупп метрик в состоянии OK
notification_groups[].prev_state (string) – PrevState - показывает предыдущее состояние группы оповещений в виде строки
notification_groups[].prev_state_as_int (integer) – PrevStateAsInt - показывает предыдущее состояние группы оповещений в виде числа
notification_groups[].state (string) – State shows metric state as string
notification_groups[].state_as_int (integer) – StateAsInt показывет состояние метрики в виде числа
notification_groups[].warning (integer) – Warning - счётчик подгрупп метрик в состоянии Warning
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
rules[] (object)
rules[].created_at (string) – CreatedAt shows timestamp of rule creation
rules[].creator (string) – Creator depicts user who created this rule
rules[].id (string) – ID is unique rule identifier, usually starting with
41xrules[].labels_absent (object) – LabelsAbsent are key-value pairs of labels of metrics this rule does not applies too
rules[].labels_required (object) – LabelsRequired are key-value pairs of labels of metrics this rule applies too
rules[].parameters (object) – Parameters are type specific parameters for this rule
rules[].priority (integer) – Priority is rule priority
rules[].type (string) – Type is rule type, can be
thresholdorno_datause_notification_groups (boolean)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- PUT /ep/monitor/{id}
Rewrites monitor by ID
- Parameters:
id (string, required) – Monitor ID
- Response JSON Object:
aggregator (string) – Aggregator задаёт функцию агрегации для пользовательской группировки результатов запроса
alert_window (string) – AlertWindow - промежуток времени
basic_quantile (number) – BasicQuantile - квантиль для базового монитора - от 0.5 до 0.95
contact_points[] (string)
created_at (string) – CreatedAt - момент создания монитора в базе данных
creator (string) – Creator - идентификатор пользователя, который создал монитор
description (string) – Description - человеко-читаемое описание монитора
deviation (number) – Deviation - отклонение, целое число от 0 до 5
deviation_count (string) – DeviationCount - задаёт режим подсчёта отклонений - выше, ниже, или же выше и ниже
escalation_chains[] (integer)
group_by[] (string)
id (string) – ID - уникальный идентификатор монитора
labels (object) – Labels - хранит пользовательские ярлыки для монитора
margin_multiplier (number) – MarginMultiplier Множитель ширины коридора 0.1 .. 5
metric_ttl (string) – MetricTTL - задаёт время жизни метрики
mute_warnings (boolean) – MuteWarnings - заглушать проблемы и события уровня StateWarning
name (string) – Name - уникальное, человеко-читаемое название монитора, например - cpu_load_dev
no_data_grace_time (string) – NoDataGraceTime - в режимах NoDataModeNotify, NoDataModeSilent сколько монитор ждёт, прежде чем метрика будет переведена в состояние NoData по мнению правила
no_data_mode (string) – NoDataMode режим обработки ситуации NO_DATA
notification_group[] (string)
object_tag (string) – ObjectTag - какой ярлыкlabel метрики хранит в себе идентификатор объекта - например, hostname=holod.local означает, что метрика взята с сервера holod.local
query (string) – Query - текст запроса к victoria metrics
rate (string) – Rate - задаёт интервал получения метрик
rules[] (object)
rules[].created_at (string) – CreatedAt задаёт момент создания правила
rules[].creator (string) – Creator хранит идентификатор пользователя, который создал правило
rules[].id (string) – ID - задаёт уникальный идентификатор правила в базе данных
rules[].labels_absent (object) – LabelsAbsent - задаёт ярлыки, которых НЕ ДОЛЖНО быть у метрики для применения правила
rules[].labels_required (object) – LabelsRequired - задаёт ярлыки, которые должны быть у метрики для применения правила
rules[].monitor_id (string) – MonitorID - задаёт идентификатор монитора, к которому присоединяется правило
rules[].parameters (object) – Parameters задаёт параметры правила, их наличие и значения зависят от типа правила
rules[].priority (integer) – Priority задаёт приоритет правила, чем ниже, тем важнее. Правило с приоритетом 1 важнее правила с приоритетом 3
rules[].type (string) – Type задаёт тип правила
seasonality (string) – Seasonality - сезонность, может быть
hourly,``daily``,``weekly``sharding_key (string) – ShardingKey ключ шардирования для монитора
stddev_multiplier (number) – StddevMultiplier Множитель стандартного отклонения 0.1 .. 5
step (string) – Step - задаёт шаг времени при получении метрик
threshold_by_covar (number) – параметры монитора для адаптивной стратегии ThresholdByCovar Порог по коэффициенту отклонения 0.1 .. 5
type (string) – Type задаёт тип монитора
use_notification_policy (boolean) – UseNotificationPolicy - используются политика оповещений, при этом NotificationChannel NotificationRecipients игнорируются
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- POST /ep/monitor/validateTemplate
Validates monitor template
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/monitor_column
Получить колонки источника мониторинга
- Query Parameters:
monitor_type (string, required) – Тип источника мониторинга (например, logs, metrics)
- Response JSON Array of Objects:
fields[] (string)
name (string)
- Status Codes:
200 OK – Список колонок с полями
400 Bad Request – Bad request
404 Not Found – No data found
500 Internal Server Error – Internal server error
- GET /ep/monitor_column_values
Получить уникальные значения колонки источника мониторинга
- Query Parameters:
monitor_type (string, required) – Тип источника мониторинга (например, logs, metrics)
column (string, required) – Название колонки
field (string) – Поле labels (для колонки labels)
search (string) – Поисковый запрос для фильтрации значений
page (integer) – Номер страницы (по умолчанию 1)
limit (integer) – Количество элементов на странице (по умолчанию 50)
- Response JSON Object:
items[] (string)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – Список значений с пагинацией
400 Bad Request – Bad request
404 Not Found – No data found
500 Internal Server Error – Internal server error
- GET /ep/monitor_query_result
Получить таблицу результата подзапроса
- Status Codes:
200 OK – [{ «arrayElement(labels, ifIndex)»: «10», «instance»: «192.34.56.89», «val»: «2» }]
404 Not Found – No data found
500 Internal Server Error – Internal server error
- POST /ep/monitor_refresh/{id}
Обновить статус (извлечь метрики и применить правила) монитора, выбранного по идентификатору.
- Parameters:
id (string, required) – Monitor ID
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
429 Too Many Requests – Too Many Requests
500 Internal Server Error – Internal Server Error
- DELETE /ep/monitor_reset/{id}
Сбрасывает метрики и кэш для монитора.
Приводит к новому состоянию данных, при этом все активные проблемы закрыты, а правила и параметры остаются неизменными.
- Parameters:
id (string, required) – Monitor ID
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
429 Too Many Requests – Too Many Requests
500 Internal Server Error – Internal Server Error
- GET /ep/mute/
Show all mutes
- Query Parameters:
monitor_id (string) – filter mutes by monitor_id
labels (array) – Filter by metric labels in format key:value. Example: ?labels=hostname:server.local
page (integer) – page to show, default is 1
limit (integer) – limit of items per page to show, default is 10
- Response JSON Object:
items[] (object)
items[].active (boolean) – Active - для повторяющихся заглушений возвращает истину, если заглушение активно
items[].created_at (string) – CreatedAt - момент создания монитора в базе данных
items[].creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
items[].description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
items[].end (string) – End хранит момент окончания заглушения монитора
items[].expired (boolean) – Expired означает, что мьют уже закончен и никогда больше не сработает (если пользователь его не отредактирует), его можно удалять
items[].finished_at (string) – FinishedAt - для повторяющихся заглушений возвращает ближайший момент когда заглушение закончится, если активно, или закончилось, если уже не активно
items[].id (integer) – ID - уникальный идентификатор заглушки на монитор
items[].is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
items[].labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
items[].monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
items[].monitor_name (string) – MonitorName имя монитора по MonitorID к которому прилагается заглушение
items[].recurring_duration (string) – EndRecurringExpression хранит выражение расчёта окончания процесс заглушения монитора
items[].start (string) – Start хранит момент c которого начался процесс заглушения монитора
items[].start_recurring_expression (string) – StartRecurringExpression хранит выражение расчёта начала процесс заглушения монитора
items[].started_at (string) – StartedAt - для повторяющихся заглушений возвращает ближайший момент когда заглушение началось, если активно, или начнёться, если не активно
items[].tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /ep/mute/
CreateMute
- Response JSON Object:
createdAt (string) – CreatedAt - момент создания монитора в базе данных
creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
end (string) – End хранит момент окончания заглушения монитора
endRecurringExpression (string) – EndRecurringExpression хранит выражение для расчёта длительности процесса заглушения монитора в случае повторяющихся заглушений
id (integer:int64) – ID - уникальный идентификатор заглушки на монитор
isRecurring (boolean) – IsRecurring хранит истину, если мьют повторяется
labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
monitorID (string) – MonitorID - идентификатор монитора, к которому относится заглушение
monitorName (string) – MonitorName имя монитора по MonitorID к которому прилагается заглушение
recurringDuration (integer:int64) – RecurringDuration хранит длительность для расчёта длительности процесса заглушения монитора в случае повторяющихся заглушений
start (string) – Start хранит момент c которого начался процесс заглушения монитора
startRecurringExpression (string) – StartRecurringExpression хранит выражение расчёта начала процесс заглушения монитора
tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- DELETE /ep/mute/{id}
Delete mute by ID
- Parameters:
id (string, required) – Mute ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/mute/{id}
Show mute by ID
- Parameters:
id (string, required) – Mute ID
- Response JSON Object:
active (boolean) – Active - для повторяющихся заглушений возвращает истину, если заглушение активно
created_at (string) – CreatedAt - момент создания монитора в базе данных
creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
end (string) – End хранит момент окончания заглушения монитора
expired (boolean) – Expired означает, что мьют уже закончен и никогда больше не сработает (если пользователь его не отредактирует), его можно удалять
finished_at (string) – FinishedAt - для повторяющихся заглушений возвращает ближайший момент когда заглушение закончится, если активно, или закончилось, если уже не активно
id (integer) – ID - уникальный идентификатор заглушки на монитор
is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
monitor_name (string) – MonitorName имя монитора по MonitorID к которому прилагается заглушение
recurring_duration (string) – EndRecurringExpression хранит выражение расчёта окончания процесс заглушения монитора
start (string) – Start хранит момент c которого начался процесс заглушения монитора
start_recurring_expression (string) – StartRecurringExpression хранит выражение расчёта начала процесс заглушения монитора
started_at (string) – StartedAt - для повторяющихся заглушений возвращает ближайший момент когда заглушение началось, если активно, или начнёться, если не активно
tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- PUT /ep/mute/{id}
Put mute by ID
- Parameters:
id (string, required) – Mute ID
- Response JSON Object:
description (string) – Description - комментарий к заглушению, допустим - «Сейчас обед»
duration (string) – EndRecurringExpression - длительность заглушения, пример - 1h, 30m, 10s
end (string) – End - время окончания заглушения, формат - TimeFormat, 17-02-2025 14:49:57 это 17th of February 2025 года, 14 часов. 49 минут 57 секунд
is_recurring (boolean) – IsRecurring - флаг, что заглушение повторяющееся, пока должен быть false
labels (object) – Labels - ярлыки мерики, к которым применяется заглушение, допустим hostname=>holod.local, job=exporter и т.д.
monitor_id (string) – MonitorID - идентификатор монитора, к которому добавляется заглушение (необязательно)
start (string) – Start - время начало заглушения, формат - TimeFormat, 17-02-2025 14:49:57 это 17th of February 2025 года, 14 часов. 49 минут 57 секунд
start_recurring_expression (string) – StartRecurringExpression - начало заглушения в кронтаб синтаксисе - 0 0 0 * * FRI
tags (object) – Tags - тэги монитора, к которым применяется заглушение, допустим environment=>development, product=>brest
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/problem/
List problems by filter
- Query Parameters:
state (string) – Filter problems by state, can be
all(default),``resolved``,``active``from (integer) – From timestamp - date in unix milliseconds format like
Date.now()ornew Date().getTime()returns, default is now minus 10 yearsto (integer) – To timestamp - date in unix milliseconds format like
Date.now()ornew Date().getTime()returns. Default is nowseverity (string) – Severity level of problem, should be a string comma separated values, e.g.
WARNING,NO_DATA,CRITICAL, case-insensitive, Default - all severitytext (string) – text search on summary (partial match) and labels (exact match on labels value)
monitor_id (string) – filter problems by full monitor_id
rule_id (string) – filter problems by full rule_id
metric_id (string) – filter problems by list of comma separated full metric_id (or metric hash)
object_id (string) – filter problems by object identifier
sort (string) – sorting options, currently few variants supported - Status-Severity-Timestamp - default one, value is one of
sort_direction (string) – sorting directions, currently 2 variants supported -
page (integer) – page to show, default is 0
limit (integer) – limit of items per page to show, default is 10
- Response JSON Object:
items[] (object)
items[].comments[] (object)
items[].comments[].content (string)
items[].comments[].create_time (string)
items[].comments[].id (string)
items[].comments[].problem_id (string)
items[].comments[].username (string)
items[].count (integer) – Count - счётчик изменений состояния проблемы. Допустим, проблема создалась уровнем warning, потом ухудшилась до critical, а потом разрешилась (так как процессор охладился), то счётчик покажет 3 события
items[].created_at (string) – CreatedAt - момент появления проблемы
items[].description_html (string) – DescriptionHTML - текстовое описание проблемы в формате HTML, сгенерированное на основе шаблона из описания монитора
items[].description_text (string) – DescriptionText - текстовое описание проблемы в формате PLAIN TEXT, сгенерированное на основе шаблона из описание монитора
items[].escalation_status (string)
items[].group_name (string) – GroupName - имя группы
items[].id (string) – ID - уникальный идентификатор проблемы
items[].labels_absent (object) – LabelsAbsent - ярлыки метрик, которые игнорировались правилом на момент создания проблемы
items[].labels_required (object) – LabelsRequired - ярлыки метрик, требуемые для срабатывания правила на момент создания проблемы
items[].metric_id (string) – MetricID - уникальный идентификатор метрики - md5 хэш от всех ярлыков метрики
items[].metric_labels (object) – MetricLabels - ярлыки метрики на момент обновления проблемы
items[].metric_value (number) – MetricValue - значение метрики на момент обновления проблемы
items[].monitor_id (string) – MonitorID - идентификатор монитора, который создал проблему
items[].monitor_name (string) – MonitorName - человеко-читаемое имя монитора
items[].monitor_query (string) – MonitorQuery - promql выражение монитора, которое было на момент создания проблемы
items[].muted (boolean) – Muted хранит статус заглушения проблемы
items[].number_of_notifications (integer) – NumberOfNotifications - сколько раз посылали оповещения
items[].object_id (string) – ObjectID - идентификатор объекта, на котором появилась проблема, например, это значение тэга hostname метрики
items[].owner (string) – Owner - сотрудник, который был назначен ответственным за проблему
items[].parameters (object) – Parameters хранит параметры правила на момент создания проблемы
items[].prev_state (string) – PrevState хранит предыдущий уровень критичности проблемы по мнению правила.
items[].priority (integer) – Priority хранит приоритет правила на момент создания проблемы
items[].resolved (boolean) – Resolved означает, что проблема закрыта
items[].resolved_at (string) – ResolvedAt - момент, когда правило разрешило проблему - допустим, температура процессора сама понизилась, и метрика вышла из состояния warning
items[].rule_id (string) – RuleID - идентификатор правила, которое создало проблему
items[].state (string) – State хранит текущий уровень критичности проблемы по мнению правила.
items[].summary (string) – Summary - текстовое описание проблемы, сгенерированное на основе шаблона из имени монитора
items[].updated_at (string) – UpdatedAt - момент обновления проблемы
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- POST /ep/problem/
Create a comment for a problem
- Response JSON Object:
content (string)
create_time (string)
id (string)
problem_id (string)
username (string)
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- DELETE /ep/problem/{id}
Close problem by ID
- Parameters:
id (string, required) – Problem ID
- Status Codes:
204 No Content – No Content
401 Unauthorized – Unauthorized
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/problem/{id}
Find problem by ID
- Parameters:
id (string, required) – Problem ID
- Response JSON Object:
comments[] (object)
comments[].content (string)
comments[].create_time (string)
comments[].id (string)
comments[].problem_id (string)
comments[].username (string)
count (integer) – Count - счётчик изменений состояния проблемы. Допустим, проблема создалась уровнем warning, потом ухудшилась до critical, а потом разрешилась (так как процессор охладился), то счётчик покажет 3 события
created_at (string) – CreatedAt - момент появления проблемы
description_html (string) – DescriptionHTML - текстовое описание проблемы в формате HTML, сгенерированное на основе шаблона из описания монитора
description_text (string) – DescriptionText - текстовое описание проблемы в формате PLAIN TEXT, сгенерированное на основе шаблона из описание монитора
escalation_status (string) – EscalationStatus статус эскалации для проблемы
group_name (string) – GroupName - имя группы
id (string) – ID - уникальный идентификатор проблемы
labels_absent (object) – LabelsAbsent - ярлыки метрик, которые игнорировались правилом на момент создания проблемы
labels_required (object) – LabelsRequired - ярлыки метрик, требуемые для срабатывания правила на момент создания проблемы
metric_id (string) – MetricID - уникальный идентификатор метрики - md5 хэш от всех ярлыков метрики
metric_labels (object) – MetricLabels - ярлыки метрики на момент обновления проблемы
metric_value (number) – MetricValue - значение метрики на момент обновления проблемы
monitor_id (string) – MonitorID - идентификатор монитора, который создал проблему
monitor_name (string) – MonitorName - человеко-читаемое имя монитора
monitor_query (string) – MonitorQuery - promql выражение монитора, которое было на момент создания проблемы
muted (boolean) – Muted хранит статус заглушения проблемы
number_of_notifications (integer) – NumberOfNotifications - сколько раз посылали оповещения
object_id (string) – ObjectID - идентификатор объекта, на котором появилась проблема, например, это значение тэга hostname метрики
owner (string) – Owner - сотрудник, который был назначен ответственным за проблему
parameters (object) – Parameters хранит параметры правила на момент создания проблемы
prev_state (string) – PrevState хранит предыдущий уровень критичности проблемы по мнению правила.
priority (integer) – Priority хранит приоритет правила на момент создания проблемы
resolved (boolean) – Resolved означает, что проблема закрыта
resolved_at (string) – ResolvedAt - момент, когда правило разрешило проблему - допустим, температура процессора сама понизилась, и метрика вышла из состояния warning
rule_id (string) – RuleID - идентификатор правила, которое создало проблему
state (string) – State хранит текущий уровень критичности проблемы по мнению правила.
summary (string) – Summary - текстовое описание проблемы, сгенерированное на основе шаблона из имени монитора
updated_at (string) – UpdatedAt - момент обновления проблемы
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- POST /ep/problem/{id}
Acknowledge problem by ID
- Parameters:
id (string, required) – Problem ID
- Status Codes:
204 No Content – No Content
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/range
Proxy request to Victoria Metrics range endpoint
https://docs.victoriametrics.com/url-examples/#apiv1query_range. Client side code is implemented here - https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmui/packages/vmui/src/api/query-range.ts
- Query Parameters:
query (string, required) – Raw promql query to execute against victoria metrics, for example - avg (cpu_load{environment!=
start (string) – start of range encoded in RFC3339, default - 1 hour ago
end (string) – end of range encoded in RFC3339, default - now
step (string) – step, default is 5m
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /ep/rule/
List rules collection
- Query Parameters:
monitor_id (string) – monitor identification
page (integer) – page to show, default is 0
limit (integer) – limit of items per page to show, default is 10
- Response JSON Object:
items[] (object)
items[].created_at (string) – CreatedAt shows timestamp of rule creation
items[].creator (string) – Creator depicts user who created this rule
items[].id (string) – ID is unique rule identifier, usually starting with
41xitems[].labels_absent (object) – LabelsAbsent are key-value pairs of labels of metrics this rule does not applies too
items[].labels_required (object) – LabelsRequired are key-value pairs of labels of metrics this rule applies too
items[].parameters (object) – Parameters are type specific parameters for this rule
items[].priority (integer) – Priority is rule priority
items[].type (string) – Type is rule type, can be
thresholdorno_datapagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /ep/rule/{id}
Show rule by ID
- Parameters:
id (string, required) – Rule ID
- Response JSON Object:
created_at (string) – CreatedAt задаёт момент создания правила
creator (string) – Creator хранит идентификатор пользователя, который создал правило
id (string) – ID - задаёт уникальный идентификатор правила в базе данных
labels_absent (object) – LabelsAbsent - задаёт ярлыки, которых НЕ ДОЛЖНО быть у метрики для применения правила
labels_required (object) – LabelsRequired - задаёт ярлыки, которые должны быть у метрики для применения правила
monitor_id (string) – MonitorID - задаёт идентификатор монитора, к которому присоединяется правило
parameters (object) – Parameters задаёт параметры правила, их наличие и значения зависят от типа правила
priority (integer) – Priority задаёт приоритет правила, чем ниже, тем важнее. Правило с приоритетом 1 важнее правила с приоритетом 3
type (string) – Type задаёт тип правила
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/show_labels
Show labels with either name or value matching filter
- Query Parameters:
filter (string) – filter by labels“ value to apply for groups returned
monitor_id (string) – Monitor ID если передан то возвращаются только лейблы указаного монитора
filter – filter by labels“ value to apply for groups returned
- Response JSON Object:
items[] (object)
items[].name (string)
items[].value (string)
total (integer)
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
500 Internal Server Error – Internal Server Error
- GET /ep/show_notification_group/{id}/{group}
Show current status of Monitor selected by ID
- Parameters:
id (string, required) – Monitor ID
group (string, required) – Notification group ID
- Query Parameters:
filter (string) – filter by labels value to apply for groups returned
page (integer) – page of metric’s groups to show, default is 0
limit (integer) – limit of metric’s groups per page to show, default is 50
- Response JSON Object:
current_notification_group (object)
current_notification_group.critical (integer) – Critical - счётчик подгрупп метрик в состоянии Critical
current_notification_group.id (string) – ID уникальный идентификатор группы оповещений
current_notification_group.labels (object) – Labels - ярлыки группы оповещений
current_notification_group.muted (boolean) – Muted означает, что сейчас группа оповещений заглушена, так как на неё действует частичное заглушение по ярлыкам метрики
current_notification_group.muted_until (string) – MutedUntil момент, когда группа оповещений будет разглушена
current_notification_group.mutes[] (object)
current_notification_group.mutes[].created_at (string) – CreatedAt - момент создания монитора в базе данных
current_notification_group.mutes[].creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
current_notification_group.mutes[].description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
current_notification_group.mutes[].finish_at (string) – FinishAt хранит момент времени, когда это заглушение будет снято
current_notification_group.mutes[].full (boolean) – Full означает, что заглушение применено ко всем группам метрик
current_notification_group.mutes[].id (integer) – ID - уникальный идентификатор заглушки на монитор
current_notification_group.mutes[].is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
current_notification_group.mutes[].labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
current_notification_group.mutes[].monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
current_notification_group.mutes[].started_at (string) – StartedAt хранит момент времени, когда это заглушение начало действовать
current_notification_group.mutes[].tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
current_notification_group.mutes[].ttl (string) – TTL - задаёт время жизни мьюта
current_notification_group.name (string) – Name имя группы оповещений, например -
development, для случая группировки оповещений по ярлыкуenvironmentcurrent_notification_group.new (integer) – New - счётчик подгрупп метрик в состоянии New
current_notification_group.no_data (integer) – NoData - счётчик подгрупп метрик в состоянии NoData
current_notification_group.ok (integer) – OK - счётчик подгрупп метрик в состоянии OK
current_notification_group.prev_state (string) – PrevState - показывает предыдущее состояние группы оповещений в виде строки
current_notification_group.prev_state_as_int (integer) – PrevStateAsInt - показывает предыдущее состояние группы оповещений в виде числа
current_notification_group.state (string) – State shows metric state as string
current_notification_group.state_as_int (integer) – StateAsInt показывет состояние метрики в виде числа
current_notification_group.warning (integer) – Warning - счётчик подгрупп метрик в состоянии Warning
metric_groups[] (object)
metric_groups[].group (object) – Group describes group identification of metric as map
metric_groups[].group_by[] (string)
metric_groups[].id (string) – ID is unique metrics identifier
metric_groups[].labels (object) – Labels describes metric
metric_groups[].last_recovered_timestamp (string) – LastRecoveredTimestamp - момент крайнего перехода метрики из состояний StateWarning, StateCritical, StateNoData в StateOK
metric_groups[].last_triggered_timestamp (string) – LastTriggeredTimestamp - момент крайнего перехода метрики из состояния StateOK в StateWarning, StateCritical, StateNoData
metric_groups[].muted (boolean) – Muted означает, что сейчас группа метрик заглушена, так как на неё действует частичное заглушение по ярлыкам метрики
metric_groups[].muted_until (string) – MutedUntil момент, когда группа метрик будет разглушена
metric_groups[].mutes[] (object)
metric_groups[].mutes[].created_at (string) – CreatedAt - момент создания монитора в базе данных
metric_groups[].mutes[].creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
metric_groups[].mutes[].description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
metric_groups[].mutes[].finish_at (string) – FinishAt хранит момент времени, когда это заглушение будет снято
metric_groups[].mutes[].full (boolean) – Full означает, что заглушение применено ко всем группам метрик
metric_groups[].mutes[].id (integer) – ID - уникальный идентификатор заглушки на монитор
metric_groups[].mutes[].is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
metric_groups[].mutes[].labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
metric_groups[].mutes[].monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
metric_groups[].mutes[].started_at (string) – StartedAt хранит момент времени, когда это заглушение начало действовать
metric_groups[].mutes[].tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
metric_groups[].mutes[].ttl (string) – TTL - задаёт время жизни мьюта
metric_groups[].name (string) – Name is metric name
metric_groups[].no_data (boolean) – NoData means metric value was empty - it had no data when it was updated last time
metric_groups[].object_id (string) – ObjectID describes observation object to which this metric belongs. It can be hostname/service id/container id and so on.
metric_groups[].rule_id (string) – RuleID - правило, которое влияет на метрику
metric_groups[].rule_type (string) – RuleType - тип правила, которое влияет на метрику
metric_groups[].state (string) – State shows metric state as string
metric_groups[].state_number (number) – StateAsFloat shows metric state as number
metric_groups[].timestamp (string) – Timestamp shows when metric value was received
metric_groups[].value (number) – Value shows metric value
monitor (object)
monitor.aggregator (string) – Aggregator задаёт функцию агрегации для пользовательской группировки результатов запроса
monitor.alert_window (string) – AlertWindow - промежуток времени
monitor.all (integer) – All - счётчик всех метрик
monitor.basic_quantile (number) – BasicQuantile - квантиль для базового монитора - от 0.5 до 0.95
monitor.contact_points[] (string)
monitor.created_at (string) – CreatedAt - момент создания монитора в базе данных
monitor.creator (string) – Creator - идентификатор пользователя, который создал монитор
monitor.critical (integer) – Critical - счётчик метрик в состоянии Critical
monitor.description (string) – Description - человеко-читаемое описание монитора
monitor.deviation (number) – Deviation - отклонение, целое число от 0 до 5
monitor.deviation_count (string) – DeviationCount - задаёт режим подсчёта отклонений - выше, ниже, или же выше и ниже
monitor.escalation_chains[] (integer)
monitor.fully_muted (boolean) – FullyMuted означает, что монитор сейчас полностью заглушен
monitor.group_by[] (string)
monitor.id (string) – ID - уникальный идентификатор монитора
monitor.labels (object) – Labels - хранит пользовательские ярлыки для монитора
monitor.margin_multiplier (number) – MarginMultiplier Множитель ширины коридора 0.1 .. 5
monitor.metric_ttl (string) – MetricTTL - задаёт время жизни метрики
monitor.mute_warnings (boolean) – MuteWarnings - заглушать проблемы и события уровня StateWarning
monitor.muted_until (string) – MutedUntil - момент времени, когда заглушение монитор пройдёт
monitor.mutes[] (object)
monitor.mutes[].created_at (string) – CreatedAt - момент создания монитора в базе данных
monitor.mutes[].creator (string) – Creator - идентификатор пользователя, который создал заглушку на монитор
monitor.mutes[].description (string) – Description - человеко понятное описание, зачем эта заглушка? например, «у админа обед с 13 до 14»
monitor.mutes[].finish_at (string) – FinishAt хранит момент времени, когда это заглушение будет снято
monitor.mutes[].full (boolean) – Full означает, что заглушение применено ко всем группам метрик
monitor.mutes[].id (integer) – ID - уникальный идентификатор заглушки на монитор
monitor.mutes[].is_recurring (boolean) – IsRecurring хранит истину, если мьют повторяется
monitor.mutes[].labels (object) – Labels задаёт ярлыки группы метрик, для которых срабатывает заглушение
monitor.mutes[].monitor_id (string) – MonitorID - идентификатор монитора, к которому относится заглушение
monitor.mutes[].started_at (string) – StartedAt хранит момент времени, когда это заглушение начало действовать
monitor.mutes[].tags (object) – Tags задаёт тэги монитора, для которых срабатывает мьют. Если у монитора есть эти ярлыки, то мьют к нему применим
monitor.mutes[].ttl (string) – TTL - задаёт время жизни мьюта
monitor.name (string) – Name - уникальное, человеко-читаемое название монитора, например - cpu_load_dev
monitor.next_update_on (string) – NextUpdateOn отображает момент следующего обновления групп метрик монитора
monitor.no_data (integer) – NoData - счётчик метрик в состоянии NoData
monitor.no_data_grace_time (string) – NoDataGraceTime - в режимах NoDataModeNotify, NoDataModeSilent сколько монитор ждёт, прежде чем метрика будет переведена в состояние NoData по мнению правила
monitor.no_data_mode (string) – NoDataMode режим обработки ситуации NO_DATA
monitor.no_data_mode_description (string) – NoDataModeDescription человеко понятное описание режима работы обработки ситуации NO_DATA
monitor.notification_group[] (string)
monitor.object_id (string) – ObjectTag - какой ярлыкlabel метрики хранит в себе идентификатор объекта - например, hostname=holod.local означает, что метрика взята с сервера holod.local
monitor.ok (integer) – Ok - счётчик метрик в состоянии OK
monitor.partially_muted (boolean) – PartiallyMuted означает, что монитор частисно заглушен - то есть, для одних комбинаций ярлыков он заглуше, для других - нет
monitor.query (string) – Query - текст запроса к victoria metrics
monitor.rate (string) – Rate - задаёт интервал получения метрик
monitor.seasonality (string) – Seasonality - сезонность, может быть
hourly,``daily``,``weekly``monitor.status (string) – Status - самое тяжёлое состояние группы метрик монитора
monitor.stddev_multiplier (number) – StddevMultiplier Множитель стандартного отклонения 0.1 .. 5
monitor.step (string) – Step - задаёт шаг времени при получении метрик
monitor.threshold_by_covar (number) – параметры монитора для адаптивной стратегии ThresholdByCovar Порог по коэффициенту отклонения 0.1 .. 5
monitor.type (string) – Type задаёт тип монитора
monitor.updated_at (string) – UpdatedAt хранит момент, когда был отправлен запрос к Victoria Metrics
monitor.use_notification_policy (boolean) – UseNotificationPolicy - используется политика оповещений, при этом NotificationChannel и NotificationRecipients игнорируются
monitor.vm_query_error (string) – VmQueryError хранит крайную ошибку запроса к Victoria Metrics
monitor.vm_query_ok (boolean) – VmQueryOK означает, что крайний запрос к Victoria Metrics завершился успешно
monitor.warning (integer) – Warning - счётчик метрик в состоянии Warning
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ep/show_tags
Show labels with either name or value matching filter
- Query Parameters:
filter (string) – filter by tags“ value to apply for groups returned
monitor_id (string) – Monitor ID если передан то возвращаются только тэги указаного монитора
- Response JSON Array of Objects:
name (string)
value (string)
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
500 Internal Server Error – Internal Server Error
- GET /ep/triggered_by_object
List observation objects affected by rules, only for DEBUG purpose
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
- GET /ep/triggered_by_rule
List rules and objects affected by them, only for DEBUG purpose
- Status Codes:
200 OK – OK
401 Unauthorized – Unauthorized
- GET /hostmap
Retrieves hostmap information
- Query Parameters:
group (array) – Group fields, example: product,node
filter (array) – Filter fields, example: product:1,node:2
active (boolean) – Include only active agents
empty (boolean) – Include groups with empty values
duplicate (boolean) – Include duplicate values
- Response JSON Object:
groups[] (object)
groups[].hosts[] (object)
groups[].hosts[].critical (integer)
groups[].hosts[].got_events (boolean)
groups[].hosts[].hostname (string)
groups[].hosts[].warning (integer)
groups[].key (string)
groups[].value (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /hostmap/filters
Retrieves possible filters
- Response JSON Object:
filters (object)
- Status Codes:
200 OK – OK
500 Internal Server Error – Internal Server Error
- GET /hostmap/groups
Retrieves possible groups
- Response JSON Object:
groups[] (string)
- Status Codes:
200 OK – OK
500 Internal Server Error – Internal Server Error
- GET /hostmap/hosts/{id}
Retrieves host information
- Parameters:
id (string, required) – Hostname
- Response JSON Object:
agents[] (object)
agents[].arch (string)
agents[].deployment (string)
agents[].id (string)
agents[].name (string)
agents[].os (string)
agents[].runtime (string)
agents[].status (string)
agents[].type (string)
agents[].version (string)
hostname (string)
is_muted (boolean)
problems[] (object)
problems[].created_at (string)
problems[].message (string)
problems[].monitor_id (string)
problems[].state (string)
problems[].updated_at (string)
targets[] (object)
targets[].labels (object)
targets[].name (string)
targets[].status (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /is/actions/
List actions
- Query Parameters:
creator (string) – filter actions by creator
incident_id (string) – filter actions by incident
sort (string) – how to sort actions, either blank or creator
page (integer) – page to show, default is 0
limit (integer) – limit of items per page to show, default is 10
- Response JSON Object:
items[] (object)
items[].assignee (string)
items[].closer (string)
items[].comment (string)
items[].completed (boolean)
items[].created_at (string)
items[].creator (string)
items[].description (string)
items[].escalation_chain_instance_id (integer)
items[].escalation_chain_template (integer)
items[].hyperlink (string)
items[].id (integer)
items[].incident_id (integer)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /is/actions/
Create action
- Response JSON Object:
assignee (string)
closer (string)
comment (string)
completed (boolean)
created_at (string)
creator (string)
description (string)
escalation_chain_instance_id (integer)
escalation_chain_template (integer)
hyperlink (string)
id (integer)
incident_id (integer)
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- DELETE /is/actions/{id}
Get action by id
- Parameters:
id (string, required) – Action ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /is/actions/{id}
Get action by id
- Parameters:
id (string, required) – Action ID
- Response JSON Object:
assignee (string)
closer (string)
comment (string)
completed (boolean)
created_at (string)
creator (string)
description (string)
escalation_chain_instance_id (integer)
escalation_chain_template (integer)
hyperlink (string)
id (integer)
incident_id (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- PUT /is/actions/{id}
Update action
- Parameters:
id (string, required) – Action ID
- Status Codes:
204 No Content – No Content
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /is/facts/
List facts
- Query Parameters:
creator (string) – filter actions by creator
incident_id (string) – filter actions by incident
sort (string) – how to sort actions, either blank or creator
page (integer) – page to show, default is 0
limit (integer) – limit of items per page to show, default is 10
- Response JSON Object:
items[] (object)
items[].created_at (string)
items[].creator (string)
items[].description (string)
items[].hyperlink (string)
items[].id (integer)
items[].incident_id (integer)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /is/facts/
Create fact
- Response JSON Object:
created_at (string)
creator (string)
description (string)
hyperlink (string)
id (integer)
incident_id (integer)
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- DELETE /is/facts/{id}
Delete fact by id
- Parameters:
id (string, required) – Action ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /is/facts/{id}
Get action by id
- Parameters:
id (string, required) – Fact ID
- Response JSON Object:
created_at (string)
creator (string)
description (string)
hyperlink (string)
id (integer)
incident_id (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- PUT /is/facts/{id}
Update fact
- Parameters:
id (string, required) – Fact ID
- Status Codes:
204 No Content – No Content
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /is/incidents/
List incidents
- Query Parameters:
creator (string) – filter incidents by creator
text (string) – filter incidents by text
level (string) – filter incidents by level
status (string) – filter incidents by status as string
resolved (string) – filter incidents by resolved flag - true or false
sort (string) – how to sort incidents, either blank or creator
page (integer) – page to show, default is 0
limit (integer) – limit of items per page to show, default is 10
from (integer) – From timestamp - date in unix milliseconds format like
Date.now()returns, default is now minus 72 hoursto (integer) – To timestamp - date in unix milliseconds format like
Date.now()returns. Default is now
- Response JSON Object:
items[] (object)
items[].commander (string) – Commander - руководитель инцидента, строка
items[].created_at (string) – CreatedAt - момент создания инцидента
items[].creator (string) – Creator - создатель инцидента, строка
items[].description (string) – Description - полное описание инцидента
items[].detection_method (string) – DetectionMethod - как инцидент был создан - вручную, webhook и т.д.
items[].escalation_chains[] (string)
items[].id (integer) – ID - идентификатор инцидента, число
items[].labels (object) – Labels - ярлыки инцидента, ассоциированный массив с ключом строка и значением - строка
items[].level (integer) – Level - уровень инцидента, число см Level’s
items[].level_name (string) – LevelName - наименование уровня инцидента, при редактировании не учитывается
items[].origin (string) – Origin - откуда создан инцидент, например, название сервиса
items[].origin_link (string) – OriginLink - ссылка на страницу (проблема, график, события в логи и т.д.) на основе которой создан инцидент
items[].participants[] (string)
items[].resolved (boolean) – Resolved - флаг закрытия инцидента
items[].status (string) – Status - статус инцидента, строка
items[].status_id (integer) – StatusID - идентификатор статуса инцидента
items[].title (string) – Title - название инцидента
items[].updated_at (string) – UpdatedAt - момент обновления инцидента
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /is/incidents/
Create incident
- Response JSON Object:
commander (string) – Commander - руководитель инцидента, строка
created_at (string) – CreatedAt - момент создания инцидента
creator (string) – Creator - создатель инцидента, строка
description (string) – Description - полное описание инцидента
detection_method (string) – DetectionMethod - как инцидент был создан - вручную, webhook и т.д.
escalation_chains[] (string)
id (integer) – ID - идентификатор инцидента, число
labels (object) – Labels - ярлыки инцидента, ассоциированный массив с ключом строка и значением - строка
level (integer) – Level - уровень инцидента, число см Level’s
level_name (string) – LevelName - наименование уровня инцидента, при редактировании не учитывается
origin (string) – Origin - откуда создан инцидент, например, название сервиса
origin_link (string) – OriginLink - ссылка на страницу (проблема, график, события в логи и т.д.) на основе которой создан инцидент
participants[] (string)
resolved (boolean) – Resolved - флаг закрытия инцидента
status (string) – Status - статус инцидента, строка
status_id (integer) – StatusID - идентификатор статуса инцидента
title (string) – Title - название инцидента
updated_at (string) – UpdatedAt - момент обновления инцидента
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- DELETE /is/incidents/{id}
Delete incident by id
- Parameters:
id (string, required) – Action ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /is/incidents/{id}
Get incident by id
- Parameters:
id (string, required) – Incident ID
- Response JSON Object:
commander (string) – Commander - руководитель инцидента, строка
created_at (string) – CreatedAt - момент создания инцидента
creator (string) – Creator - создатель инцидента, строка
description (string) – Description - полное описание инцидента
detection_method (string) – DetectionMethod - как инцидент был создан - вручную, webhook и т.д.
escalation_chains[] (string)
id (integer) – ID - идентификатор инцидента, число
labels (object) – Labels - ярлыки инцидента, ассоциированный массив с ключом строка и значением - строка
level (integer) – Level - уровень инцидента, число см Level’s
level_name (string) – LevelName - наименование уровня инцидента, при редактировании не учитывается
origin (string) – Origin - откуда создан инцидент, например, название сервиса
origin_link (string) – OriginLink - ссылка на страницу (проблема, график, события в логи и т.д.) на основе которой создан инцидент
participants[] (string)
resolved (boolean) – Resolved - флаг закрытия инцидента
status (string) – Status - статус инцидента, строка
status_id (integer) – StatusID - идентификатор статуса инцидента
title (string) – Title - название инцидента
updated_at (string) – UpdatedAt - момент обновления инцидента
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- PUT /is/incidents/{id}
Update incident
- Parameters:
id (string, required) – Incident ID
- Status Codes:
204 No Content – No Content
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /is/levels/
List levels
- Response JSON Object:
items[] (object)
items[].created_at (string)
items[].creator (string)
items[].description (string)
items[].id (integer)
items[].name (string)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /is/levels/
Create fact
- Response JSON Object:
created_at (string)
creator (string)
description (string)
id (integer)
name (string)
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- DELETE /is/levels/{id}
Delete fact by id
- Parameters:
id (string, required) – Level ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /is/levels/{id}
Get level by id
- Parameters:
id (string, required) – Level ID
- Response JSON Object:
created_at (string)
creator (string)
description (string)
id (integer)
name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- PUT /is/levels/{id}
Update level
- Parameters:
id (string, required) – Level ID
- Status Codes:
204 No Content – No Content
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /is/status/
List statuses
- Response JSON Object:
items[] (object)
items[].created_at (string)
items[].creator (string)
items[].id (integer)
items[].name (string)
items[].resolved (boolean)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- POST /is/status/
Create level
- Response JSON Object:
created_at (string)
creator (string)
description (string)
id (integer)
name (string)
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- DELETE /is/status/{id}
Delete status by id
- Parameters:
id (string, required) – Status ID
- Status Codes:
204 No Content – No Content
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /is/status/{id}
Get status by id
- Parameters:
id (string, required) – Status ID
- Response JSON Object:
created_at (string)
creator (string)
id (integer)
name (string)
resolved (boolean)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- PUT /is/status/{id}
Update status by id
- Parameters:
id (string, required) – Status ID
- Status Codes:
204 No Content – No Content
400 Bad Request – Bad Request
401 Unauthorized – Unauthorized
403 Forbidden – Forbidden
500 Internal Server Error – Internal Server Error
- GET /license/product
Получение всех лицензий
Возвращает список всех лицензий
- Response JSON Object:
info (object)
info.active_arms_count (integer)
info.active_ext_target_count (integer)
info.active_host_count (integer)
info.latest_license_expiry (string)
info.limited_license_count (integer)
info.nearest_license_expiry (string)
info.total_arms_count (integer)
info.total_ext_target_count (integer)
info.total_host_count (integer)
info.unlimited_license_count (integer)
license[] (object)
license[].certSerialNumber (string) – Данные из сертификата
license[].certValidUntil (string)
license[].created (string)
license[].endDate (string)
license[].id (string)
license[].issuerEmail (string)
license[].issuerName (string)
license[].issuerOrg (string) – Данные выдающего из сертификата
license[].message (string)
license[].owner (object) – Поля владельца
license[].owner.displayName (string)
license[].productId (string)
license[].productName (string)
license[].quantity_arm (integer)
license[].quantity_ext_target (integer)
license[].quantity_host (integer)
license[].recipientEmail (string)
license[].recipientName (string)
license[].recipientOrg (string) – Данные получателя из сертификата
license[].startDate (string)
license[].status (string) – Расчетные данные по лицензии
license[].type (string)
license[].updated (string)
- Status Codes:
200 OK – OK
500 Internal Server Error – Internal Server Error
- DELETE /license/product/{id}
Удаление лицензии
Удаляет лицензию по её идентификатору
- Parameters:
id (string, required) – Идентификатор лицензии
- Response JSON Object:
active_arms_count (integer)
active_ext_target_count (integer)
active_host_count (integer)
latest_license_expiry (string)
limited_license_count (integer)
nearest_license_expiry (string)
total_arms_count (integer)
total_ext_target_count (integer)
total_host_count (integer)
unlimited_license_count (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /license/product/{id}
Получение лицензии по ID
Возвращает информацию о лицензии по её идентификатору
- Parameters:
id (string, required) – Идентификатор лицензии
- Response JSON Object:
certSerialNumber (string) – Данные из сертификата
certValidUntil (string)
created (string)
endDate (string)
id (string)
issuerEmail (string)
issuerName (string)
issuerOrg (string) – Данные выдающего из сертификата
message (string)
owner (object) – Поля владельца
owner.displayName (string)
productId (string)
productName (string)
quantity_arm (integer)
quantity_ext_target (integer)
quantity_host (integer)
recipientEmail (string)
recipientName (string)
recipientOrg (string) – Данные получателя из сертификата
startDate (string)
status (string) – Расчетные данные по лицензии
type (string)
updated (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- POST /license/product/upload
Загрузка новой лицензии
Загружает и проверяет новую лицензию из архивного файла
- Response JSON Object:
info (object)
info.active_arms_count (integer)
info.active_ext_target_count (integer)
info.active_host_count (integer)
info.latest_license_expiry (string)
info.limited_license_count (integer)
info.nearest_license_expiry (string)
info.total_arms_count (integer)
info.total_ext_target_count (integer)
info.total_host_count (integer)
info.unlimited_license_count (integer)
license[] (object)
license[].certSerialNumber (string) – Данные из сертификата
license[].certValidUntil (string)
license[].created (string)
license[].endDate (string)
license[].id (string)
license[].issuerEmail (string)
license[].issuerName (string)
license[].issuerOrg (string) – Данные выдающего из сертификата
license[].message (string)
license[].owner (object) – Поля владельца
license[].owner.displayName (string)
license[].productId (string)
license[].productName (string)
license[].quantity_arm (integer)
license[].quantity_ext_target (integer)
license[].quantity_host (integer)
license[].recipientEmail (string)
license[].recipientName (string)
license[].recipientOrg (string) – Данные получателя из сертификата
license[].startDate (string)
license[].status (string) – Расчетные данные по лицензии
license[].type (string)
license[].updated (string)
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
409 Conflict – Conflict
500 Internal Server Error – Internal Server Error
Retrieves custom menu links
- Response JSON Object:
administration[] (object)
administration[].icon (string)
administration[].label (string)
administration[].url (string)
configurations[] (object)
configurations[].icon (string)
configurations[].label (string)
configurations[].url (string)
monitoring[] (object)
monitoring[].icon (string)
monitoring[].label (string)
monitoring[].url (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /logs/filterParams
Get unique filter parameters for logs
Returns unique values for each field (log_type, hostname, etc.) with their counts, sorted by frequency
- Query Parameters:
q (string, required) – Filter to search logs
global_search (string) – Global search across all fields
page (string) – Number of current page
limit (string) – Number of logs per page
sort (string) – Sorting field
log_type (string) – Type of logs
- Response JSON Object:
data (object)
- Status Codes:
200 OK – Unique field values with counts
400 Bad Request – Invalid request parameters
404 Not Found – No data found
500 Internal Server Error – Internal server error
- GET /logs/graph
Getting data for a graph by filter
- Query Parameters:
q (string, required) – Filter to search logs
global_search (string) – Global search across all fields
page (string) – Number of current page
limit (string) – Number of logs per page
sort (string) – Sorting field
log_type (string) – Type of logs
- Response JSON Object:
data_x[] (string)
log_level_series[] (object)
log_level_series[].data[] (integer)
log_level_series[].name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /logs/search
Retrieves a list of logs by filters
- Query Parameters:
q (string, required) – Filter to search logs
global_search (string) – Global search across all fields
page (string) – Number of current page
limit (string) – Number of logs per page
sort (string) – Sorting field
log_type (string) – Type of logs
- Response JSON Object:
items[] (object)
items[].agent_id (string)
items[].agent_name (string)
items[].collected_time (string)
items[].created_time (string)
items[].hostname (string)
items[].labels (object)
items[].level (string)
items[].message (string)
items[].service_name (string)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
total_count (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- POST /logs/search/monitorLogs
Search logs
Выполняет поиск логов через clickhouse-selector с использованием POST запроса
Пример запроса:
{ "payload": { "time": { "from": "2024-02-05T11:00:00+03:00", "to": "2026-02-17T11:05:59+03:00" }, "query": [ { "op": "and", "clauses": [ { "field": "service.name", "op": "contains", "value": "journald" } ] } ], "paging": { "limit": 50 } } }- Request JSON Object:
payload (object)
payload.paging (object)
payload.paging.cursor (string)
payload.paging.limit (integer)
payload.paging.offset (integer)
payload.query[] (object)
payload.query[].field (string)
payload.query[].op (string:enum)
payload.query[].value (string)
payload.sort[] (object)
payload.sort[].dir (string:enum)
payload.sort[].field (string)
payload.time (object)
payload.time.from (string:date-time)
payload.time.to (string:date-time)
- Response JSON Object:
paging (object)
paging.limit (integer)
paging.next_cursor (string)
paging.offset (integer)
rows[] (object)
rows[].agent_id (string)
rows[].agent_name (string)
rows[].collected_time (string)
rows[].created_time (string)
rows[].hostname (string)
rows[].labels (object)
rows[].level (string)
rows[].message (string)
rows[].service_name (string)
total (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /logs/uniqueAgents
Getting unique agents from the database
- Query Parameters:
log_type (string) – Type of logs
- Response JSON Array of Objects:
id (string)
name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /logs/uniqueFields/{field}
Getting unique values from the database
- Parameters:
field (string, required) – Field to get unique values from
- Query Parameters:
log_type (string) – Type of logs
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /logs/uniqueValueByKey/{field}
Getting unique values from the database
- Parameters:
field (string, required) – Field to get unique values from
- Query Parameters:
log_type (string) – Type of logs
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /ns/contact_points
Получение контактных точек
Возвращает список контактных точек с пагинацией
- Query Parameters:
changeable (boolean) – Фильтр по типу изменяемости контактной точки
with_pagination (boolean, required) – Позволяет включить и отключить пагинацию
limit (integer) – Лимит в пагинации (по умолчанию 10)
page (integer) – Страница в пагинации (по умолчанию 0)
- Response JSON Object:
items[] (object)
items[].age (string) – Age - время существования channel в человеческом виде
items[].changeable (boolean) – Changeable - описывает возможность канала изменяться
items[].created_at (string) – CreateAt - дата и время добавления в базу
items[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
items[].name (string) – Name - имя доставщика, которое задано пользователем
items[].types[] (string)
items[].update_at (string) – CreateAt - дата и время последнего обновления
pagination (object) – Pagination - информация о пагинации
pagination.current_page (integer) – CurrentPage - номер текущей страницы (начинается с 1) Пример: 1 (первая страница)
pagination.next_page (integer) – NextPage - номер следующей страницы (0 если это последняя страница) Пример: При CurrentPage=1 и TotalPages=3 → 2
pagination.per_page (integer) – PerPage - количество элементов на странице Типовые значения: 10, 25, 50, 100
pagination.previous_page (integer) – PreviousPage - номер предыдущей страницы (0 если это первая страница) Пример: При CurrentPage=2 → 1
pagination.total (integer) – Total - общее количество элементов в наборе данных Пример: 150 (всего записей в базе)
pagination.total_pages (integer) – TotalPages - общее количество страниц Вычисляется как: ceil(Total / PerPage) Пример: При Total=15 и PerPage=10 → 2
- Status Codes:
200 OK – Сокращенная информация о контактных точках
400 Bad Request – Ошибка при поиске контактной точки
500 Internal Server Error – Ошибка сервера
- POST /ns/contact_points
Создание контактной точки
Создает новую контактную точку с указанием настройки транспорта и получателей
- Request JSON Object:
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[] (object)
integrations[].channel (object) – Channel - настройка доставщика
integrations[].channel.id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].channel.settings (object) – Settings - хранит настройки, ключи мапа зависят от реализации доставщика
integrations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].recipients[] (string)
integrations[].type (string) – Type - определяет реализацию доставщика - mattermost, telegram и smtp и тд
name (string) – Name - имя доставщика, которое задано пользователем
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
changeable (boolean) – Changeable - описывает возможность канала изменяться
created_at (string) – CreateAt - дата и время добавления в базу
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[] (object)
integrations[].age (string) – Age - время существования channel в человеческом виде
integrations[].channel (object) – Channel - настройка доставщика
integrations[].channel.age (string) – Age - время существования channel в человеческом виде
integrations[].channel.created_at (string) – CreateAt - дата и время добавления в базу
integrations[].channel.id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].channel.settings (object) – Settings - хранит настройки, ключи мапа зависят от реализации доставщика, в частности, для mattermost это webHook и имя канала
integrations[].channel.update_at (string) – CreateAt - дата и время последнего обновления
integrations[].created_at (string) – CreateAt - дата и время добавления в базу
integrations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].recipients[] (string)
integrations[].type (string) – Type - определяет реализацию доставщика - mattermost, telegram и smtp и тд
integrations[].update_at (string) – CreateAt - дата и время последнего обновления
name (string) – Name - имя доставщика, которое задано пользователем
update_at (string) – CreateAt - дата и время последнего обновления
- Status Codes:
201 Created – Контактная точка успешно создана
400 Bad Request – Некорректные данные запроса
500 Internal Server Error – Ошибка сервера
- PUT /ns/contact_points
Полное обновление контактной точки
Заменяет все данные по указанному в контактной точек ID
- Request JSON Object:
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[] (object)
integrations[].channel (object) – Channel - настройка доставщика
integrations[].channel.id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].channel.settings (object) – Settings - хранит настройки, ключи мапа зависят от реализации доставщика
integrations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].recipients[] (string)
integrations[].type (string) – Type - определяет реализацию доставщика - mattermost, telegram и smtp и тд
name (string) – Name - имя доставщика, которое задано пользователем
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
changeable (boolean) – Changeable - описывает возможность канала изменяться
created_at (string) – CreateAt - дата и время добавления в базу
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[] (object)
integrations[].age (string) – Age - время существования channel в человеческом виде
integrations[].channel (object) – Channel - настройка доставщика
integrations[].channel.age (string) – Age - время существования channel в человеческом виде
integrations[].channel.created_at (string) – CreateAt - дата и время добавления в базу
integrations[].channel.id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].channel.settings (object) – Settings - хранит настройки, ключи мапа зависят от реализации доставщика, в частности, для mattermost это webHook и имя канала
integrations[].channel.update_at (string) – CreateAt - дата и время последнего обновления
integrations[].created_at (string) – CreateAt - дата и время добавления в базу
integrations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].recipients[] (string)
integrations[].type (string) – Type - определяет реализацию доставщика - mattermost, telegram и smtp и тд
integrations[].update_at (string) – CreateAt - дата и время последнего обновления
name (string) – Name - имя доставщика, которое задано пользователем
update_at (string) – CreateAt - дата и время последнего обновления
- Status Codes:
200 OK – Информация о контактной точки
400 Bad Request – Некорректные данные запроса
404 Not Found – Контактная точка не найден
500 Internal Server Error – Ошибка сервера
- DELETE /ns/contact_points/{id}
Удаление контактной точки
Удаляет контактной точки по указанному ID
- Parameters:
id (integer:int64, required) – ID контактной точки для удаления
- Status Codes:
204 No Content – контактная точка успешно удалена
400 Bad Request – Неверный ID контактной точки
404 Not Found – Контактная точка не найден
500 Internal Server Error – Ошибка сервера
- GET /ns/contact_points/{id}
Получение контактной точки по ID
Возвращает информацию о контактной точке по его уникальному идентификатору
- Parameters:
id (integer:int64, required) – Уникальный ID контактной точки
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
changeable (boolean) – Changeable - описывает возможность канала изменяться
created_at (string) – CreateAt - дата и время добавления в базу
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[] (object)
integrations[].age (string) – Age - время существования channel в человеческом виде
integrations[].channel (object) – Channel - настройка доставщика
integrations[].channel.age (string) – Age - время существования channel в человеческом виде
integrations[].channel.created_at (string) – CreateAt - дата и время добавления в базу
integrations[].channel.id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].channel.settings (object) – Settings - хранит настройки, ключи мапа зависят от реализации доставщика, в частности, для mattermost это webHook и имя канала
integrations[].channel.update_at (string) – CreateAt - дата и время последнего обновления
integrations[].created_at (string) – CreateAt - дата и время добавления в базу
integrations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
integrations[].recipients[] (string)
integrations[].type (string) – Type - определяет реализацию доставщика - mattermost, telegram и smtp и тд
integrations[].update_at (string) – CreateAt - дата и время последнего обновления
name (string) – Name - имя доставщика, которое задано пользователем
update_at (string) – CreateAt - дата и время последнего обновления
- Status Codes:
200 OK – Информация о контактной точке
400 Bad Request – Неверный ID контактной точки
404 Not Found – Контактная точка не найдена
500 Internal Server Error – Ошибка сервера
- GET /ns/escalation_chain_instances
Получение списка экземпляров цепочек эскалаций
Возвращает список экземпляров цепочек эскалации с пагинацией и фильтрацией
- Query Parameters:
escalation_chain_template_id (integer:int64) – Фильтр по шаблону цепочки эскалации
is_running (boolean) – Фильтр по типу состоянию
creator (string) – Фильтр по типу создателя
with_pagination (boolean, required) – Позволяет включить и отключить пагинацию
limit (integer) – Лимит в пагинации (по умолчанию 10)
page (integer) – Страница в пагинации (по умолчанию 0)
- Response JSON Object:
items[] (object)
items[].age (string) – Age - время существования channel в человеческом виде
items[].closed_by (string) – ClosedBy идентификатор пользователя, который остановил цепочку
items[].created_at (string) – CreateAt - дата и время добавления в базу
items[].creator (string) – Creator идентификатор пользователя, который создал цепочку
items[].escalation_chain_template_id (integer) – EscalationChainTemplateId - идентификатор шаблона цепочки эскалации, на основании которого была создана конкретная реализация
items[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
items[].is_running (boolean) – IsRunning - статус открытости/закрытости цепочки эскалации
items[].meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д. для конкретной реализации шаблона
items[].source (string) – Source - это может быть и problem_id, monitor_id, incident_id и т.д. позволяет единообразно установить, откуда создано
items[].update_at (string) – UpdatedAt - дата и время последнего обновления
pagination (object) – Pagination - информация о пагинации
pagination.current_page (integer) – CurrentPage - номер текущей страницы (начинается с 1) Пример: 1 (первая страница)
pagination.next_page (integer) – NextPage - номер следующей страницы (0 если это последняя страница) Пример: При CurrentPage=1 и TotalPages=3 → 2
pagination.per_page (integer) – PerPage - количество элементов на странице Типовые значения: 10, 25, 50, 100
pagination.previous_page (integer) – PreviousPage - номер предыдущей страницы (0 если это первая страница) Пример: При CurrentPage=2 → 1
pagination.total (integer) – Total - общее количество элементов в наборе данных Пример: 150 (всего записей в базе)
pagination.total_pages (integer) – TotalPages - общее количество страниц Вычисляется как: ceil(Total / PerPage) Пример: При Total=15 и PerPage=10 → 2
- Status Codes:
200 OK – Данные успешно получены
400 Bad Request – Ошибка при поиске
500 Internal Server Error – Ошибка сервера
- PATCH /ns/escalation_chain_instances
Полное обновление экземпляра цепочки эскалации
Заменяет все данные по указанному в экземпляре цепочки эскалации ID
- Request JSON Object:
escalation_chain_template_id (integer) – EscalationChainTemplateId - идентификатор шаблона цепочки эскалации, на основании которого была создана конкретная реализация
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д. для конкретной реализации шаблона
source (string) – Source - это может быть и problem_id, monitor_id, incident_id и т.д. позволяет единообразно установить, откуда создано
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
closed_by (string) – ClosedBy идентификатор пользователя, который остановил цепочку
created_at (string) – CreateAt - дата и время добавления в базу
creator (string) – Creator идентификатор пользователя, который создал цепочку
escalation_chain_template_id (integer) – EscalationChainTemplateId - идентификатор шаблона цепочки эскалации, на основании которого была создана конкретная реализация
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
is_running (boolean) – IsRunning - статус открытости/закрытости цепочки эскалации
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д. для конкретной реализации шаблона
source (string) – Source - это может быть и problem_id, monitor_id, incident_id и т.д. позволяет единообразно установить, откуда создано
update_at (string) – UpdatedAt - дата и время последнего обновления
- Status Codes:
200 OK – Информация об экземпляре цепочки эскалации
400 Bad Request – Некорректные данные запроса
404 Not Found – Экземпляр цепочки эскалации не найден
500 Internal Server Error – Ошибка сервера
- POST /ns/escalation_chain_instances
Создание экземпляра цепочки эскалации
Создает новый экземпляр цепочки эскалации
- Request JSON Object:
escalation_chain_template_id (integer) – EscalationChainTemplateId - идентификатор шаблона цепочки эскалации, на основании которого была создана конкретная реализация
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д. для конкретной реализации шаблона
source (string) – Source - это может быть и problem_id, monitor_id, incident_id и т.д. позволяет единообразно установить, откуда создано
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
closed_by (string) – ClosedBy идентификатор пользователя, который остановил цепочку
created_at (string) – CreateAt - дата и время добавления в базу
creator (string) – Creator идентификатор пользователя, который создал цепочку
escalation_chain_template_id (integer) – EscalationChainTemplateId - идентификатор шаблона цепочки эскалации, на основании которого была создана конкретная реализация
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
is_running (boolean) – IsRunning - статус открытости/закрытости цепочки эскалации
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д. для конкретной реализации шаблона
source (string) – Source - это может быть и problem_id, monitor_id, incident_id и т.д. позволяет единообразно установить, откуда создано
update_at (string) – UpdatedAt - дата и время последнего обновления
- Status Codes:
201 Created – Экземпляр цепочки эскалации успешно создана
400 Bad Request – Некорректные данные запроса
500 Internal Server Error – Ошибка сервера
- PUT /ns/escalation_chain_instances
Полное обновление экземпляра цепочки эскалации
Заменяет все данные по указанному в экземпляре цепочки эскалации ID
- Request JSON Object:
escalation_chain_template_id (integer) – EscalationChainTemplateId - идентификатор шаблона цепочки эскалации, на основании которого была создана конкретная реализация
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д. для конкретной реализации шаблона
source (string) – Source - это может быть и problem_id, monitor_id, incident_id и т.д. позволяет единообразно установить, откуда создано
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
closed_by (string) – ClosedBy идентификатор пользователя, который остановил цепочку
created_at (string) – CreateAt - дата и время добавления в базу
creator (string) – Creator идентификатор пользователя, который создал цепочку
escalation_chain_template_id (integer) – EscalationChainTemplateId - идентификатор шаблона цепочки эскалации, на основании которого была создана конкретная реализация
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
is_running (boolean) – IsRunning - статус открытости/закрытости цепочки эскалации
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д. для конкретной реализации шаблона
source (string) – Source - это может быть и problem_id, monitor_id, incident_id и т.д. позволяет единообразно установить, откуда создано
update_at (string) – UpdatedAt - дата и время последнего обновления
- Status Codes:
200 OK – Информация об экземпляре цепочки эскалации
400 Bad Request – Некорректные данные запроса
404 Not Found – Экземпляр цепочки эскалации не найден
500 Internal Server Error – Ошибка сервера
- DELETE /ns/escalation_chain_instances/{id}
Удаление экземпляра цепочки эскалации
Удаляет экземпляр цепочки эскалации по указанному ID
- Parameters:
id (integer:int64, required) – ID экземпляра цепочки эскалации для удаления
- Status Codes:
204 No Content – Экземпляр цепочки эскалации успешно удален
400 Bad Request – Неверный ID экземпляра цепочки эскалации
404 Not Found – Экземпляр цепочки эскалации не найден
500 Internal Server Error – Ошибка сервера
- GET /ns/escalation_chain_instances/{id}
Получение экземпляра цепочки эскалации по ID
Возвращает информацию об экземпляре цепочки эскалации по его уникальному идентификатору
- Parameters:
id (integer:int64, required) – Уникальный ID
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
closed_by (string) – ClosedBy идентификатор пользователя, который остановил цепочку
created_at (string) – CreateAt - дата и время добавления в базу
creator (string) – Creator идентификатор пользователя, который создал цепочку
escalation_chain_template_id (integer) – EscalationChainTemplateId - идентификатор шаблона цепочки эскалации, на основании которого была создана конкретная реализация
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
is_running (boolean) – IsRunning - статус открытости/закрытости цепочки эскалации
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д. для конкретной реализации шаблона
source (string) – Source - это может быть и problem_id, monitor_id, incident_id и т.д. позволяет единообразно установить, откуда создано
update_at (string) – UpdatedAt - дата и время последнего обновления
- Status Codes:
200 OK – Данные успешно получены
400 Bad Request – Неверный ID
404 Not Found – Данные не найдена
500 Internal Server Error – Ошибка сервера
- POST /ns/escalation_chain_instances/{id}/run
Запускает цепочку эскалации
Запускает цепочку эскалации
- Parameters:
id (integer:int64) – id сущности цепочки эскалации
- Request JSON Object:
notification_data (object) – Данные для отправки уведомления
notification_data.data (object) – Data - переданные пользователем данные
notification_data.message (string) – Message - тело сообщения в формате HTML кода
notification_data.priority (integer) – Priority - приоритет оповещения
notification_data.subject (string) – Subject - тема сообщения, отображение зависит от реализации доставщика, например для эл. почты - это Subject письма
notification_data.text (string) – Text - тело сообщение в формате PLAIN TEXT
- Status Codes:
204 No Content – Цепочка эскалации успешно отработана
400 Bad Request – Ошибка при выполнении цепочки эскалации
500 Internal Server Error – Ошибка сервера
- POST /ns/escalation_chain_instances/{id}/stop
Останавливаем цепочку эскалации
Останавливаем цепочку эскалации
- Parameters:
id (integer:int64) – id сущности цепочки эскалации
- Status Codes:
204 No Content – Цепочка эскалации остановлена
400 Bad Request – Ошибка при остановке цепочки эскалации
500 Internal Server Error – Ошибка сервера
- DELETE /ns/escalation_chain_instances/delete_by_metadata
Удаление экземпляра(ов) цепочки эскалации по MetaData
Удаляет все экземпляры цепочки эскалации, у которых meta_data содержит все пары ключ/значение из переданного объекта
- Status Codes:
204 No Content – Экземпляр(ы) цепочки эскалации успешно удалены
400 Bad Request – Неверные параметры metaData
403 Forbidden – Нет прав
404 Not Found – Экземпляры цепочки эскалации не найдены
500 Internal Server Error – Ошибка сервера
- POST /ns/escalation_chain_instances/stop_by_metadata
Останавливаем цепочки эскалации по MetaData
Останавливаем цепочки эскалации, которые соответствуют ключам и значениям из MetaData
- Status Codes:
204 No Content – Цепочки эскалации успешно остановлены
400 Bad Request – Ошибка при остановке цепочек эскалации
500 Internal Server Error – Ошибка сервера
- GET /ns/escalation_chain_templates
Получение списка шаблонов цепочек эскалаций
Возвращает список шаблонов цепочек эскалации с пагинацией и фильтрацией
- Query Parameters:
name (string) – Фильтр по типу имени
creator (string) – Фильтр по типу создателю
changeable (boolean) – Фильтр по типу изменяемости
with_pagination (boolean, required) – Позволяет включить и отключить пагинацию
limit (integer) – Лимит в пагинации (по умолчанию 10)
page (integer) – Страница в пагинации (по умолчанию 0)
- Response JSON Object:
items[] (object)
items[].age (string) – Age - время существования channel в человеческом виде
items[].changeable (boolean) – Changeable - изменяемость контактной точки
items[].created_at (string) – CreateAt - дата и время добавления в базу
items[].creator (string) – Creator идентификатор пользователя
items[].description (string) – Description - описание цепочки эскалации
items[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
items[].name (string) – Name - уникальное имя цепочки эскалации
items[].update_at (string) – UpdatedAt - дата и время последнего обновления
pagination (object) – Pagination - информация о пагинации
pagination.current_page (integer) – CurrentPage - номер текущей страницы (начинается с 1) Пример: 1 (первая страница)
pagination.next_page (integer) – NextPage - номер следующей страницы (0 если это последняя страница) Пример: При CurrentPage=1 и TotalPages=3 → 2
pagination.per_page (integer) – PerPage - количество элементов на странице Типовые значения: 10, 25, 50, 100
pagination.previous_page (integer) – PreviousPage - номер предыдущей страницы (0 если это первая страница) Пример: При CurrentPage=2 → 1
pagination.total (integer) – Total - общее количество элементов в наборе данных Пример: 150 (всего записей в базе)
pagination.total_pages (integer) – TotalPages - общее количество страниц Вычисляется как: ceil(Total / PerPage) Пример: При Total=15 и PerPage=10 → 2
- Status Codes:
200 OK – Данные успешно получены
400 Bad Request – Ошибка при поиске
500 Internal Server Error – Ошибка сервера
- POST /ns/escalation_chain_templates
Создание шаблона цепочки эскалации
Создает новый шаблон цепочки эскалации
- Request JSON Object:
description (string) – Description - описание цепочки эскалации
escalations[] (object)
escalations[].action (string) – Action - действие, которое будет выполнено в контексте данной эскалации
escalations[].additional_parameters (object) – AdditionalParameters - какая-то доп информация по эскалации для конкретного действия
escalations[].contact_point_names[] (string)
escalations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
escalations[].level (integer) – Level - порядковый номер выполнения эскалации
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д.
name (string) – Name - уникальное имя цепочки эскалации
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
changeable (boolean) – Changeable - изменяемость контактной точки
created_at (string) – CreateAt - дата и время добавления в базу
creator (string) – Creator идентификатор пользователя
description (string) – Description - описание цепочки эскалации
escalations[] (object)
escalations[].action (string) – Action - действие, которое будет выполнено в контексте данной эскалации
escalations[].additional_parameters (object) – AdditionalParameters - какая-то доп информация по эскалации для конкретного действия
escalations[].age (string) – Age - время существования channel в человеческом виде
escalations[].contact_point_names[] (string)
escalations[].created_at (string) – CreateAt - дата и время добавления в базу
escalations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
escalations[].level (integer) – Level - порядковый номер выполнения эскалации
escalations[].update_at (string) – UpdatedAt - дата и время последнего обновления
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д.
name (string) – Name - уникальное имя цепочки эскалации
update_at (string) – UpdatedAt - дата и время последнего обновления
- Status Codes:
201 Created – Шаблон к цепочке эскалации успешно создана
400 Bad Request – Некорректные данные запроса
500 Internal Server Error – Ошибка сервера
- PUT /ns/escalation_chain_templates
Полное обновление шаблона цепочки эскалации
Заменяет все данные по указанному в шаблоне цепочки эскалации ID
- Request JSON Object:
description (string) – Description - описание цепочки эскалации
escalations[] (object)
escalations[].action (string) – Action - действие, которое будет выполнено в контексте данной эскалации
escalations[].additional_parameters (object) – AdditionalParameters - какая-то доп информация по эскалации для конкретного действия
escalations[].contact_point_names[] (string)
escalations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
escalations[].level (integer) – Level - порядковый номер выполнения эскалации
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д.
name (string) – Name - уникальное имя цепочки эскалации
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
changeable (boolean) – Changeable - изменяемость контактной точки
created_at (string) – CreateAt - дата и время добавления в базу
creator (string) – Creator идентификатор пользователя
description (string) – Description - описание цепочки эскалации
escalations[] (object)
escalations[].action (string) – Action - действие, которое будет выполнено в контексте данной эскалации
escalations[].additional_parameters (object) – AdditionalParameters - какая-то доп информация по эскалации для конкретного действия
escalations[].age (string) – Age - время существования channel в человеческом виде
escalations[].contact_point_names[] (string)
escalations[].created_at (string) – CreateAt - дата и время добавления в базу
escalations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
escalations[].level (integer) – Level - порядковый номер выполнения эскалации
escalations[].update_at (string) – UpdatedAt - дата и время последнего обновления
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д.
name (string) – Name - уникальное имя цепочки эскалации
update_at (string) – UpdatedAt - дата и время последнего обновления
- Status Codes:
200 OK – Информация о шаблоне цепочки эскалации
400 Bad Request – Некорректные данные запроса
404 Not Found – Шаблон цепочки эскалации не найден
500 Internal Server Error – Ошибка сервера
- DELETE /ns/escalation_chain_templates/{id}
Удаление шаблона цепочки эскалации
Удаляет шаблон цепочки эскалации по указанному ID
- Parameters:
id (integer:int64, required) – ID шаблона цепочки эскалации для удаления
- Status Codes:
204 No Content – Шаблон цепочки эскалации успешно удален
400 Bad Request – Неверный ID шаблона цепочки эскалации
404 Not Found – Шаблон цепочки эскалации не найден
500 Internal Server Error – Ошибка сервера
- GET /ns/escalation_chain_templates/{id}
Получение шаблон цепочки эскалации по ID
Возвращает информацию о шаблоне цепочки эскалации по его уникальному идентификатору
- Parameters:
id (integer:int64, required) – Уникальный ID
- Response JSON Object:
age (string) – Age - время существования channel в человеческом виде
changeable (boolean) – Changeable - изменяемость контактной точки
created_at (string) – CreateAt - дата и время добавления в базу
creator (string) – Creator идентификатор пользователя
description (string) – Description - описание цепочки эскалации
escalations[] (object)
escalations[].action (string) – Action - действие, которое будет выполнено в контексте данной эскалации
escalations[].additional_parameters (object) – AdditionalParameters - какая-то доп информация по эскалации для конкретного действия
escalations[].age (string) – Age - время существования channel в человеческом виде
escalations[].contact_point_names[] (string)
escalations[].created_at (string) – CreateAt - дата и время добавления в базу
escalations[].id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
escalations[].level (integer) – Level - порядковый номер выполнения эскалации
escalations[].update_at (string) – UpdatedAt - дата и время последнего обновления
id (integer) – ID - уникальный, неизменяемый идентификатор записи в базе данных
meta_data (object) – MetaData - какая-то доп информация по инциденту, проблеме, монитору и т.д.
name (string) – Name - уникальное имя цепочки эскалации
update_at (string) – UpdatedAt - дата и время последнего обновления
- Status Codes:
200 OK – Данные успешно получены
400 Bad Request – Неверный ID
404 Not Found – Данные не найдена
500 Internal Server Error – Ошибка сервера
- POST /ns/test_notifications
Отправка тестового уведомления
Отправляет уведомление с настройками канала
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- POST /ns/validate/webhook/body
Валидация body вебхука
Проверяет корректность body для вебхук-интеграции
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /permissions
Получение списка всех ролей и их разрешений
Показывает список всех ролей и их разрешений - доступно только администратору
- Response JSON Array of Objects:
description (string)
groups[] (string)
name (string)
permissions[] (string)
priority (integer)
- Status Codes:
200 OK – OK
403 Forbidden – Restrictted
500 Internal Server Error – Внутренняя ошибка сервера
- GET /roles
Получение списка ролей
Возвращает список ролей и их разрешений из базы данных
- Response JSON Object:
groups (object)
- Status Codes:
200 OK – Успешный ответ с массивом ролей
500 Internal Server Error – Внутренняя ошибка сервера
- POST /roles
Обновление ролей
Обновляет группы для ролей администратора, редактора и наблюдателя
- Request JSON Object:
groups (object)
- Response JSON Object:
groups (object)
- Status Codes:
200 OK – Успешный ответ с обновлёнными данными
400 Bad Request – Неверный запрос
500 Internal Server Error – Внутренняя ошибка сервера
- GET /roles/access
Get permissions for the authenticated user
Retrieves the permissions associated with the user’s role based on the token groups. The highest role (admin > employee > observer) is selected, with observer as the default if no valid role is found.
- Request Headers:
Authorization (string, required) – JWT token for authentication
- Status Codes:
200 OK – Successful response with permissions» example([«MONITORING_READ»,»MONITORING_EDIT»,»MONITORS_READ»])
401 Unauthorized – Unauthorized - Missing or invalid token» example(«Missing Authorization header»)
500 Internal Server Error – Internal server error - Permissions not configured for role» example(«Permissions not configured for role»)
- GET /service_map/
Get service map for the authenticated user
Get service map data for frontend visualization for the authenticated user
- Query Parameters:
from (integer) – From timestamp - date in unix milliseconds format like
Date.now()returns, default is now minus 72 hoursto (integer) – To timestamp - date in unix milliseconds format like
Date.now()returns. Default is now
- Response JSON Object:
links[] (object)
links[].source (string)
links[].target (string)
nodes[] (object)
nodes[].id (string)
nodes[].info (object)
nodes[].info.errorRate (number)
- Status Codes:
200 OK – Successful response
401 Unauthorized – Unauthorized - Missing or invalid token» example(«Missing Authorization header»)
500 Internal Server Error – Internal server error - Permissions not configured for role» example(«Permissions not configured for role»)
- PATCH /settings/ai
Partially update AI settings
Update only the provided (non-empty) fields of AI settings (record with id=1)
- Request JSON Object:
config (object)
config.api_key (string)
config.base_url (string)
config.model (string)
enabled (boolean)
- Response JSON Object:
config (object)
config.api_key (string)
config.base_url (string)
config.model (string)
created_at (string)
created_by (string)
enabled (boolean)
updated_at (string)
updated_by (string)
- Status Codes:
200 OK – Updated successfully
400 Bad Request – Invalid request
404 Not Found – Not found
500 Internal Server Error – Internal server error
- GET /settings/ai/admin_info
Get AI settings info
Retrieve AI configuration settings
- Response JSON Object:
config (object)
config.api_key (string)
config.base_url (string)
config.model (string)
created_at (string)
created_by (string)
enabled (boolean)
updated_at (string)
updated_by (string)
- Status Codes:
200 OK – AI configuration info
500 Internal Server Error – Internal server error
- GET /settings/ai/info
Get AI settings (masked)
Retrieve AI configuration settings without sensitive data. Accessible to Admin, Editor, and Observer roles.
- Response JSON Object:
config (object)
config.api_key (string)
config.base_url (string)
config.model (string)
created_at (string)
created_by (string)
enabled (boolean)
updated_at (string)
updated_by (string)
- Status Codes:
200 OK – AI configuration info (masked)
500 Internal Server Error – Internal server error
- POST /settings/ch/ttl
Update TTL configuration
Update the time-to-live (TTL) settings for logs based on type and retention period.
- Request JSON Object:
table_name (string)
ttl_day_count (integer)
- Status Codes:
200 OK – TTL updated successfully
400 Bad Request – Invalid request
404 Not Found – Entity not found
500 Internal Server Error – Internal server error
- GET /settings/db/info
Get DB info from ClickHouse + VictoriaMetrics
Retrieve combined info from ClickHouse tables and VictoriaMetrics status
- Response JSON Object:
ch[] (object)
ch[].database (string)
ch[].has_ttl (boolean)
ch[].table (string)
ch[].total_bytes (integer)
ch[].total_rows (integer)
ch[].ttl_days (integer)
ch_error (string) – ChError - ошибка соединения с Clickhouse, если пустое, то база данных работает штатно
vm (object) – VM - настройки для виктории метрикс
vm.total_label_value_pairs (integer)
vm.total_series (integer)
vm.ttl_hours (integer)
vm_error (string) – VmError - ошибка соединения с Victoria Metrics, если пустое, то база данных работает штатно
- Status Codes:
200 OK – Combined CH + VM info
500 Internal Server Error – Internal server error
- GET /signals/filterParams
Get unique filter parameters for signals
Returns unique values for each field (signal_type, hostname, instance, etc.) with their counts, sorted by frequency
- Query Parameters:
q (string, required) – Filter to search signals
global_search (string) – Global search across all fields
page (string) – Number of current page
limit (string) – Number of signals per page
sort (string) – Sorting field
- Response JSON Object:
data (object)
- Status Codes:
200 OK – Unique field values with counts
400 Bad Request – Invalid request parameters
404 Not Found – No data found
500 Internal Server Error – Internal server error
- GET /signals/graph
Getting data for a graph by filter
- Query Parameters:
q (string, required) – Filter to search signals
global_search (string) – Global search across all fields
page (string) – Number of current page
limit (string) – Number of signals per page
sort (string) – Sorting field
- Response JSON Object:
data_x[] (string)
signal_type_series[] (object)
signal_type_series[].data[] (integer)
signal_type_series[].name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /signals/search
Retrieves a list of signals by filters
- Query Parameters:
q (string, required) – Filter to search signals
global_search (string) – Global search across all fields
page (string) – Number of current page
limit (string) – Number of signals per page
sort (string) – Sorting field
- Response JSON Object:
items[] (object)
items[].agent_id (string)
items[].agent_name (string)
items[].collected_time (string)
items[].created_time (string)
items[].hostname (string)
items[].instance (string)
items[].labels (object)
items[].raw_data (string)
items[].service_name (string)
items[].signal_type (string)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
total_count (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /signals/uniqueAgents
Getting unique agents from the database
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /signals/uniqueFields/{field}
Getting unique values from the database
- Parameters:
field (string, required) – Field to get unique values from
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /signals/uniqueValueByKey/{field}
Getting unique values from the database
- Parameters:
field (string, required) – Field to get unique values from
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- GET /snmp/mibs
Search MIBs
- Query Parameters:
limit (integer)
page (integer)
q (string)
- Response JSON Object:
mibs[] (object)
mibs[].created_at (string)
mibs[].data (string)
mibs[].dependencies[] (string)
mibs[].id (string)
mibs[].name (string)
mibs[].structure (object)
mibs[].structure.children[] (object)
mibs[].structure.children[].description (string)
mibs[].structure.children[].name (string)
mibs[].structure.children[].syntax (string)
mibs[].structure.children[].type (string)
mibs[].structure.name (string)
mibs[].updated_at (string)
paging (object)
paging.current_page (integer)
paging.next_page (integer)
paging.per_page (integer)
paging.previous_page (integer)
paging.total (integer)
paging.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- POST /snmp/mibs
Upload new MIB file
Upload and parse new mib file
- Response JSON Object:
dependencies[] (string)
id (string)
mib (string)
missing[] (string)
structure (object)
structure.children[] (object)
structure.children[].description (string)
structure.children[].name (string)
structure.children[].syntax (string)
structure.children[].type (string)
structure.name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- DELETE /snmp/mibs/{id}
Delete MIB
- Parameters:
id (string, required) – MIB id
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /snmp/mibs/{id}
Retrieves mib information
- Parameters:
id (string, required) – MIB ID
- Response JSON Object:
created_at (string)
data (string)
dependencies[] (string)
id (string)
name (string)
structure (object)
structure.children[] (object)
structure.children[].description (string)
structure.children[].name (string)
structure.children[].syntax (string)
structure.children[].type (string)
structure.name (string)
updated_at (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- POST /snmp/mibs/base64
Create mib file from base64
The same as Create, but accept json with base64 encoded string
- Response JSON Object:
dependencies[] (string)
id (string)
mib (string)
missing[] (string)
structure (object)
structure.children[] (object)
structure.children[].description (string)
structure.children[].name (string)
structure.children[].syntax (string)
structure.children[].type (string)
structure.name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- POST /snmp/mibs/check
Check MIB file and its dependencies if some are missing
- Response JSON Object:
dependencies[] (string)
id (string)
mib (string)
missing[] (string)
structure (object)
structure.children[] (object)
structure.children[].description (string)
structure.children[].name (string)
structure.children[].syntax (string)
structure.children[].type (string)
structure.name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- POST /snmp/mibs/modules
Retrieves mib modules
- Response JSON Object:
modules[] (object)
modules[].description (string)
modules[].title (string)
modules[].value (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /templates
Retrieves all templates data
- Query Parameters:
limit (integer)
page (integer)
q (string)
type (string)
- Response JSON Object:
paging (object)
paging.current_page (integer)
paging.next_page (integer)
paging.per_page (integer)
paging.previous_page (integer)
paging.total (integer)
paging.total_page (integer)
templates[] (object)
templates[].created_at (string)
templates[].data[] (integer)
templates[].id (string)
templates[].name (string)
templates[].total (integer)
templates[].type (string)
templates[].updated_at (string)
templates[].used_by[] (object)
templates[].used_by[].agent_id (string)
templates[].used_by[].agent_name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- POST /templates
Create a new template
- Response JSON Object:
created_at (string)
data[] (integer)
id (string)
name (string)
total (integer)
type (string)
updated_at (string)
used_by[] (object)
used_by[].agent_id (string)
used_by[].agent_name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- DELETE /templates/{id}
Delete template
- Parameters:
id (string, required) – Template ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
409 Conflict – Conflict
500 Internal Server Error – Internal Server Error
- GET /templates/{id}
Get template by ID
- Parameters:
id (string, required) – Template ID
- Response JSON Object:
created_at (string)
data[] (integer)
id (string)
name (string)
total (integer)
type (string)
updated_at (string)
used_by[] (object)
used_by[].agent_id (string)
used_by[].agent_name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- PATCH /templates/{id}
Update template data
- Parameters:
id (string, required) – Template ID
- Response JSON Object:
created_at (string)
data[] (integer)
id (string)
name (string)
total (integer)
type (string)
updated_at (string)
used_by[] (object)
used_by[].agent_id (string)
used_by[].agent_name (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /templates/check-name
Check if template name exists
- Query Parameters:
name (string, required) – Template name
- Response JSON Object:
exists (boolean)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /traces/by-id
Get trace by id
Возвращает трейс с его спанами по TraceId
- Query Parameters:
traceId (string, required) – Trace ID (hex)
- Response JSON Object:
duration_ns (string:int64) – nanos
operation (string)
service (string)
spans[] (object)
spans[].attributes (object)
spans[].duration_ns (string:int64)
spans[].events[] (object)
spans[].events[].Attributes (object)
spans[].events[].Name (string)
spans[].events[].Timestamp (string)
spans[].http_status (integer)
spans[].links[] (object)
spans[].operation (string)
spans[].parentSpanId (string)
spans[].resource (object)
spans[].scope (object)
spans[].scope.name (string)
spans[].scope.version (string)
spans[].service (string)
spans[].span.kind (string:enum)
spans[].spanId (string)
spans[].status (string:enum)
spans[].status_message (string)
spans[].timestamp (string:date-time)
spans[].timestamp_ns (string:int64)
spans[].trace_state (string)
spans[].traceId (string)
status (string:enum)
traceId (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
404 Not Found – Not Found
500 Internal Server Error – Internal Server Error
- POST /traces/query
Execute trace query
Выполняет селекторный запрос по трейсам
- Request JSON Object:
payload (object)
payload.filters (object)
payload.filters.http.status_group[] (string:enum)
payload.filters.operation[] (string)
payload.filters.service.name[] (string)
payload.filters.span.kind[] (string:enum)
payload.filters.trace.status[] (string:enum)
payload.include (object)
payload.include.facet_counts (boolean)
payload.include.metrics[] (string)
payload.paging (object)
payload.paging.cursor (string)
payload.paging.limit (integer)
payload.query[] (object)
payload.query[].field (string)
payload.query[].op (string:enum)
payload.query[].value (string)
payload.range (object)
payload.range.duration_ns (object)
payload.range.duration_ns.gte (integer:int64) – 1_000_000_000 ns = 1 s
payload.range.duration_ns.lte (integer:int64) – 8_000_000_000 ns = 8 s
payload.sort[] (object)
payload.sort[].dir (string:enum)
payload.sort[].field (string)
payload.time (object)
payload.time.from (string:date-time)
payload.time.to (string:date-time)
type (string)
- Response JSON Object:
facets (object) – пример: {«service.name»:{«gateway»:42}}
metrics (object) – пример: {«count»:1234}
paging (object)
paging.next_cursor (string)
rows[] (object)
rows[].duration_ns (string:int64)
rows[].http_status (integer)
rows[].operation (string)
rows[].service (string)
rows[].status (string:enum)
rows[].timestamp_ns (string:int64)
rows[].traceId (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /upstreams
Get all upstreams from DB by query parameters
- Query Parameters:
q (string) – Search name or hostname by substring
page (integer) – pagination: page number
limit (integer) – pagination: number rows on page
active (boolean) – Filter by active upstreams
- Response JSON Object:
backends[] (object)
backends[].address_http (string)
backends[].address_https (string)
backends[].auth_token (string)
backends[].author (string)
backends[].connected_agents[] (string)
backends[].connection_linux[] (string)
backends[].connection_windows[] (string)
backends[].created_time (string)
backends[].deleted (boolean)
backends[].deleted_time (string)
backends[].description (string)
backends[].id (string)
backends[].name (string)
backends[].number_of_connected_agents (integer)
backends[].proxy_agent (object)
backends[].proxy_agent.hostname (string)
backends[].proxy_agent.id (string)
backends[].proxy_agent.name (string)
backends[].proxy_agent.status (string:enum)
backends[].real_addresses[] (string)
backends[].type (string:enum)
backends[].updated_time (string)
paging (object)
paging.current_page (integer)
paging.next_page (integer)
paging.per_page (integer)
paging.previous_page (integer)
paging.total (integer)
paging.total_page (integer)
upstreams[] (object)
upstreams[].address_http (string)
upstreams[].address_https (string)
upstreams[].auth_token (string)
upstreams[].author (string)
upstreams[].connected_agents[] (string)
upstreams[].connection_linux[] (string)
upstreams[].connection_windows[] (string)
upstreams[].created_time (string)
upstreams[].deleted (boolean)
upstreams[].deleted_time (string)
upstreams[].description (string)
upstreams[].id (string)
upstreams[].name (string)
upstreams[].number_of_connected_agents (integer)
upstreams[].proxy_agent (object)
upstreams[].proxy_agent.hostname (string)
upstreams[].proxy_agent.id (string)
upstreams[].proxy_agent.name (string)
upstreams[].proxy_agent.status (string:enum)
upstreams[].real_addresses[] (string)
upstreams[].type (string:enum)
upstreams[].updated_time (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- DELETE /upstreams/{id}
Delete upstream by ID if it is not active
- Parameters:
id (string, required) – Upstream ID
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
422 Unprocessable Entity – Unprocessable Entity
500 Internal Server Error – Internal Server Error
- GET /upstreams/{id}
Get upstream information from DB by ID
- Parameters:
id (string, required) – Upstream ID
- Response JSON Object:
address_http (string)
address_https (string)
auth_token (string)
author (string)
connected_agents[] (string)
connection_linux[] (string)
connection_windows[] (string)
created_time (string)
deleted (boolean)
deleted_time (string)
description (string)
id (string)
name (string)
number_of_connected_agents (integer)
proxy_agent (object)
proxy_agent.hostname (string)
proxy_agent.id (string)
proxy_agent.name (string)
proxy_agent.status (string:enum)
real_addresses[] (string)
type (string:enum)
updated_time (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- PATCH /upstreams/{id}
Update upstream by ID
- Parameters:
id (string, required) – Upstream ID
- Response JSON Object:
address_http (string)
address_https (string)
auth_token (string)
author (string)
connected_agents[] (string)
connection_linux[] (string)
connection_windows[] (string)
created_time (string)
deleted (boolean)
deleted_time (string)
description (string)
id (string)
name (string)
number_of_connected_agents (integer)
proxy_agent (object)
proxy_agent.hostname (string)
proxy_agent.id (string)
proxy_agent.name (string)
proxy_agent.status (string:enum)
real_addresses[] (string)
type (string:enum)
updated_time (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /upstreams/agents/{agent_id}
Get upstream by agent ID
- Parameters:
agent_id (string, required) – Agent ID
- Response JSON Object:
address_http (string)
address_https (string)
auth_token (string)
author (string)
connected_agents[] (string)
connection_linux[] (string)
connection_windows[] (string)
created_time (string)
deleted (boolean)
deleted_time (string)
description (string)
id (string)
name (string)
number_of_connected_agents (integer)
proxy_agent (object)
proxy_agent.hostname (string)
proxy_agent.id (string)
proxy_agent.name (string)
proxy_agent.status (string:enum)
real_addresses[] (string)
type (string:enum)
updated_time (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /upstreams/agents/{id}
Get all connected agents to upstream by upstream ID
- Parameters:
id (string, required) – Upstream ID
- Response JSON Object:
connected_agents[] (object)
connected_agents[].hostname (string)
connected_agents[].id (string)
connected_agents[].name (string)
connected_agents[].status (string:enum)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- GET /vector
Get vector with pagination
- Query Parameters:
q (string) – query
page (string) – page
limit (string) – limit
- Response JSON Object:
items[] (object)
items[].content (string)
items[].created_time (string)
items[].description (string)
items[].id (string)
items[].name (string)
items[].updated_time (string)
pagination (object)
pagination.current_page (integer)
pagination.next_page (integer)
pagination.per_page (integer)
pagination.previous_page (integer)
pagination.total (integer)
pagination.total_page (integer)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- POST /vector
Creating a new config
- Response JSON Object:
content (string)
created_time (string)
description (string)
id (string)
name (string)
updated_time (string)
- Status Codes:
201 Created – Created
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- DELETE /vector/{id}
Delete config
- Parameters:
id (string, required) – Collector id
- Status Codes:
204 No Content – No Content
400 Bad Request – Bad Request
409 Conflict – Conflict
500 Internal Server Error – Internal Server Error
- GET /vector/{id}
Get vector by ID
- Parameters:
id (string, required) – Vector ID
- Response JSON Object:
content (string)
created_time (string)
description (string)
id (string)
name (string)
updated_time (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error
- PATCH /vector/{id}
Update vector
- Parameters:
id (string, required) – Vector ID
- Response JSON Object:
content (string)
created_time (string)
description (string)
id (string)
name (string)
updated_time (string)
- Status Codes:
200 OK – OK
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error