Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/gnmyt/Nexterm/llms.txt

Use this file to discover all available pages before exploring further.

The monitoring API surfaces uptime checks and historical performance data collected by Nexterm’s built-in monitoring agent. You can query metrics for a single server, all servers at once, or a Proxmox integration. Global monitoring settings — such as check intervals and data retention — are managed through admin-only endpoints. All endpoints require authentication via Authorization: Bearer YOUR_TOKEN.

GET /api/monitoring

Returns monitoring data for all servers accessible to the authenticated user.

Response

Returns an array of server monitoring summaries.
[].serverId
number
Entry ID of the monitored server.
[].status
string
Current server status (online, offline, or unknown).
[].lastChecked
string
ISO 8601 timestamp of the most recent status check.
curl --request GET \
  --url http://your-server:6989/api/monitoring \
  --header 'Authorization: Bearer YOUR_TOKEN'

GET /api/monitoring/settings/global

Returns the global monitoring configuration. Requires admin role.
Only accounts with the admin role can access this endpoint. Non-admin requests receive 403 Forbidden.

Response

statusCheckerEnabled
boolean
Whether the status checker (ping/uptime) is active.
statusInterval
number
How often to run status checks, in seconds. Range: 10–300.
monitoringEnabled
boolean
Whether detailed performance monitoring is active.
monitoringInterval
number
How often to collect performance metrics, in seconds. Range: 30–600.
dataRetentionHours
number
How many hours of monitoring data to retain. Range: 1–24.
connectionTimeout
number
Timeout for monitoring connections, in seconds. Range: 5–120.
batchSize
number
Number of servers to check concurrently. Range: 1–50.
curl --request GET \
  --url http://your-server:6989/api/monitoring/settings/global \
  --header 'Authorization: Bearer YOUR_TOKEN'

PATCH /api/monitoring/settings/global

Updates global monitoring configuration settings. Requires admin role. All fields are optional — include only the settings you want to change.

Request body

statusCheckerEnabled
boolean
Enable or disable the status checker.
statusInterval
number
Status check interval in seconds. Minimum 10, maximum 300.
monitoringEnabled
boolean
Enable or disable detailed performance monitoring.
monitoringInterval
number
Metric collection interval in seconds. Minimum 30, maximum 600.
dataRetentionHours
number
Hours of data to keep. Minimum 1, maximum 24.
connectionTimeout
number
Monitoring connection timeout in seconds. Minimum 5, maximum 120.
batchSize
number
Concurrent servers to check. Minimum 1, maximum 50.

Response

Returns the updated settings object with the same fields as the GET response above.
curl --request PATCH \
  --url http://your-server:6989/api/monitoring/settings/global \
  --header 'Authorization: Bearer YOUR_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{"statusInterval": 30, "dataRetentionHours": 12}'

GET /api/monitoring/integration/:integrationId

Returns monitoring data for a specific Proxmox VE integration over a given time window.

Path parameters

integrationId
string
required
Unique identifier of the Proxmox integration.

Query parameters

timeRange
string
default:"1h"
Time range for the returned data. Accepted values: 1h, 6h, 24h.

Response

Returns an object containing time-series metrics for the integration’s nodes and VMs.
curl --request GET \
  --url 'http://your-server:6989/api/monitoring/integration/7?timeRange=6h' \
  --header 'Authorization: Bearer YOUR_TOKEN'

GET /api/monitoring/:serverId

Returns detailed historical monitoring data for a specific server entry.

Path parameters

serverId
string
required
Unique identifier of the server entry.

Query parameters

timeRange
string
default:"1h"
Time range for the returned data. Examples: 1h, 24h, 7d.

Response

status
string
Current server status.
uptime
number
Uptime percentage over the requested time range.
metrics
object[]
curl --request GET \
  --url 'http://your-server:6989/api/monitoring/42?timeRange=24h' \
  --header 'Authorization: Bearer YOUR_TOKEN'

Build docs developers (and LLMs) love