SmsHealth¶
GET sms/health
Full state of the module: database, loaded adapters with their capabilities, what the crons are doing, how deep the queue is, the last known provider balances, and the counters of triggers and webhooks.
This is the page for an operator looking into a problem, not a probe for a monitor — it runs several queries, including a 24-hour report. For frequent polling use SmsPing.
Access Control¶
Allowed role: admin.
Request¶
GET request
GET https://{broker_domain}/sms/health
Authorization: <JWT_TOKEN>
{
"command": "SmsHealth",
"extID": "1",
"data": {}
}
const res = await platform.SmsHealth({});
Request Data¶
This method takes no parameters.
Response Data¶
queue.awaitingReport counts messages in SENT — accepted by the provider but never confirmed. A number that keeps growing means delivery reports are not arriving, which SmsPing cannot tell you.
{
"service": "sct-sms",
"nodeID": "sct-sms-3227647",
"version": "0.0.1",
"uptimeSec": 412,
"database": { "ok": true, "latencyMs": 1 },
"adapters": {
"loaded": ["infobip", "twilio", "vonage"],
"failed": [],
"capabilities": [
{
"name": "twilio",
"title": "Twilio",
"capabilities": { "polling": true, "webhook": true, "balance": true, "unicode": true },
"credentialsSchema": { "accountSid": "string", "authToken": "string", "fromNumber": "string" }
}
]
},
"crons": {
"enabled": true,
"queueIntervalSec": 5,
"queue": { "lastRunAt": "2026-08-24T13:39:30.004Z", "lastTaken": 7, "lastSent": 7, "lastFailed": 0, "runs": 84 },
"dlr": { "lastRunAt": "2026-08-24T13:39:15.114Z", "lastChecked": 7, "lastUpdated": 2, "runs": 14 },
"stuck": { "lastRunAt": "2026-08-24T13:30:00.000Z", "lastReset": 0, "totalReset": 1 },
"expired": { "lastRunAt": "2026-08-24T13:30:00.000Z", "lastExpired": 1, "totalExpired": 3 }
},
"queue": {
"pending": 7,
"oldestPendingAt": "2026-08-24 13:38:02",
"awaitingReport": 7,
"last24h": { "DELIVERED": 402, "SENT": 7, "PENDING": 7, "UNDELIVERED": 12, "FAILED": 2 }
},
"balances": {
"3": { "provider": "twilio", "amount": 42.15, "currency": "EUR", "low": false, "checkedAt": "2026-08-24T14:11:03.118Z", "error": null }
},
"triggers": { "eventsSeen": 312, "matched": 208, "queued": 205, "deduped": 3, "errors": 0 },
"webhooks": { "received": 420, "processed": 402, "duplicates": 12, "ignored": 4, "unverified": 2, "errors": 0 }
}
Errors¶
| Code | Error | Description |
|---|---|---|
401 |
PERMISSION_DENIED |
Not an admin session |
502 |
MOL_CALL_FAILED |
The module is not on the bus |