status table every core writes one row into every ~15 seconds), shaped for graphing: one shared timestamps axis and, per metric, an aligned values array plus the tile figures — current, first, min, max, avg, change-percent (first → current) and, for a counter, total.hostname is required. Status rows are not replicated between core servers, so name the server to read (see GET /nmsstatus/servers). A request naming another core is proxied to it and answered with what it said; an unknown hostname is a 404, an unreachable one a 502.gauge-aggregate=max|min to change that) and its current is the latest raw sample. A counter (packets, transactions, SIP responses — anything that only ever increases) is turned into a rate per second: the delta between consecutive buckets' last samples over the seconds between them. A counter reset (process restart) renders as null for that bucket rather than a negative rate. GET /nmsstatus/metrics says which is which.interval is 1m, 10m or 1h. The default interval follows the range (1h–24h → 1m, 2d/7d → 10m, 28d → 1h) and stays under the point ceiling (NsNmsstatusMaxPoints, default 2000); an explicit interval that would exceed it is a 400 naming the coarser one to use. A bucket with no samples is null, not 0.datetime-start/datetime-end win over range. All times are UTC unless the caller's RFC3339 offset says otherwise.Authorization: Bearer ********************curl --location 'https://awqacore01.crexendocloud.com/ns-api/v2/nmsstatus?hostname=core1.example.com&range=undefined&datetime-start=2026-05-26T22%3A00%3A00.000Z&datetime-end=2026-05-26T23%3A00%3A00.000Z&interval=undefined&metrics=session-connected%2Crxpkt-count%2Cuas-oop&gauge-aggregate=undefined' \
--header 'Authorization: Bearer <token>'{
"hostname": "core1.example.com",
"range": "24h",
"interval": "1m",
"interval-seconds": 60,
"gauge-aggregate": "avg",
"start-datetime": "2019-08-24T14:15:22.123Z",
"end-datetime": "2019-08-24T14:15:22.123Z",
"timestamps": [
0
],
"metrics": {
"property1": {
"type": "gauge",
"unit": "packets/s",
"label": "string",
"group": "string",
"current": 0,
"first": 0,
"min": 0,
"max": 0,
"avg": 0,
"change-percent": 3,
"samples": 0,
"total": 0,
"values": [
0
]
},
"property2": {
"type": "gauge",
"unit": "packets/s",
"label": "string",
"group": "string",
"current": 0,
"first": 0,
"min": 0,
"max": 0,
"avg": 0,
"change-percent": 3,
"samples": 0,
"total": 0,
"values": [
0
]
}
}
}