Phone-first ops already lives in ntfy: one HTTP POST, a notification on Android, iOS, and the desktop web app. The usual trap is one topic per SaaS, then a pile of curl ntfy.sh/… scripts when someone rotates the secret.
AlertHub treats ntfy like Discord or Gotify: you paste one topic URL on the project. Sources stay on https://api.thealerthub.com/sendAlert (or email ingest). AlertHub detects ntfy (ntfy) and POSTs the message body with Title, Priority, and Tags headers.
Docs: ntfy destination.
How ntfy delivery works
- In ntfy: install the app → subscribe to a hard-to-guess topic.
- The URL is
https://ntfy.sh/YOUR_TOPIC(orhttps://your-ntfy-host/YOUR_TOPIC; append?auth=…for a reserved topic). - In AlertHub: project Connections → ntfy → paste the URL.
- Warning and critical alerts become ntfy notifications (priority 4 vs 5). Info stays in the dashboard.
The topic name is the password. Pick something unguessable. Self-hosted ntfy works the same way: paste https://your-ntfy-host/YOUR_TOPIC (HTTPS, reachable from the internet).
Setup (once)
- Create a project at app.thealerthub.com.
- Subscribe to a topic in ntfy and paste
https://ntfy.sh/{topic}in AlertHub. - Send a test
warningvia the Ingestion API.
Alert 1: Phone-first on-call without Slack
Ops already lives in ntfy. Put Stripe failures, uptime, and GitHub Actions on the same AlertHub project so ntfy is the only extra destination to add.
Alert 2: ntfy + email destination
AlertHub also has an email destination for people who mute the phone. Same sources; ntfy for the pocket, email for the auditor.
Alert 3: One topic instead of per-script curls
When each cron job posts to its own ntfy topic, rotating the secret means touching every host. Move ingest to AlertHub (Shopify, email ingest), then keep a single ntfy URL in Connections.
Ideas to squeeze more value
- Unguessable topic. Treat
https://ntfy.sh/{topic}like a webhook secret. - Priority. Critical maps to ntfy priority 5 (urgent); warning maps to 4.
- Same pattern as Gotify. If a second team still uses a self-hosted Gotify, add the Gotify destination on the same project.
FAQ
Is ntfy a first-class destination?
Yes. AlertHub sends headers plus a markdown body when the stored webhook is classified as ntfy, same family as Discord and Gotify.
Does a reserved topic work?
Yes. Paste https://ntfy.sh/mytopic?auth=…. AlertHub forwards the query string.
Does self-hosted ntfy work?
Yes. Paste https://your-host/topic on the ntfy card. AlertHub cannot uniquely regex-match custom hosts, so it only requires HTTPS. The server must be reachable from the internet.
Do info alerts appear in ntfy?
No. Raise the source level when the phone should see it.
Next steps
Paste an ntfy topic URL in Connections, follow the ntfy setup, and send one test warning.
Related: Gotify alerts · GitHub Actions → ntfy · Uptime + VPS → ntfy · On-call with Slack