Notifications API
The alarms sent to people as they are raised and cleared. How it works and how to set up each
channel: Notifications. The CLI equivalent is dtvsol notify ….
Authentication and errors: see the API overview.
GET /notify
Section titled “GET /notify”The settings, every password and token replaced by whether it is set, and how each channel’s last message went.
curl -s "http://ROUTER-IP:8880/notify" -H "X-API-Key: YOUR_API_KEY"{ "ok": true, "enabled": true, "levels": ["critical"], "changes": true, "clears": true, "link": "https://XXX.XXX.XXX.10:8881/", "email": {"enabled": true, "to": ["noc@your-isp.com"], "host": "smtp.your-isp.com", "port": 587, "security": "starttls", "user": "alarms@your-isp.com", "password_set": true}, "telegram": {"enabled": true, "chats": ["-1001234567890"], "token_set": true}, "whatsapp": {"enabled": false}, "sms": {"enabled": false}, "status": { "email": {"at": "2026-09-28 10:31:05", "t": 1790591465, "ok": true, "error": null}, "telegram": {"at": "2026-09-28 10:31:06", "t": 1790591466, "ok": false, "error": "chat -1001234567890: HTTP 403: Forbidden: bot was kicked from the group chat"} }}POST /notify/set
Section titled “POST /notify/set”Changes the settings: the fields given change, the others stay.
| Name | In | Type | Notes |
|---|---|---|---|
enabled |
body | boolean | Send the alarms, or not. |
levels |
body | array | critical, warning and/or info. Default ["critical"]. |
changes |
body | boolean | Every failed change too, whatever its level. Default true. |
clears |
body | boolean | When an alarm clears. Default true. |
link |
body | string | Added at the end of each message (https://…); empty removes it. |
email |
body | object | enabled, to (an array, or addresses separated by commas), add, del (one address), host, port, security (starttls, tls, none), user, password, from. |
telegram |
body | object | enabled, chats (chat ids or @channel), add, del, token. |
whatsapp |
body | object | enabled, to (numbers, + and the country code), add, del, phone_id, template, lang, token. |
sms |
body | object | enabled, to, add, del, sid (the Twilio account), from (the Twilio number), token. |
In a channel, a password or token given empty keeps the stored one, null removes it, and
"reset": true forgets the channel’s settings. Secrets are stored encrypted and never returned.
curl -s -X POST "http://ROUTER-IP:8880/notify/set" -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"enabled": true, "telegram": {"enabled": true, "add": "-1001234567890", "token": "123456:ABC…"}}'{"ok": true, "message": "notification settings saved"}, or 400 with {"ok": false, "error": …}
for a value that is not valid (nothing changed).
POST /notify/test
Section titled “POST /notify/test”Sends a test message on one channel now.
| Name | In | Type | Notes |
|---|---|---|---|
channel |
body | string | email, telegram, whatsapp or sms. Required. |
{"ok": true, "message": "sent by telegram to 1 recipient(s)"}, or 502 with
{"ok": false, "error": …} and the provider’s reason (HTTP 401: Unauthorized…).
This site was written with the help of AI and checked by our team.