Status emails arrive after you have already heard from a customer. Slack “website down” apps multiply tokens. You want one place that already routes disk and services and payment failures.
AlertHub is not a probe network. It is the last hop: UptimeRobot, Better Stack, Healthchecks.io, cron-job.org, or a bash curl POST a critical (down) or warning (degraded) event. Then Slack, Telegram, WhatsApp, Discord, or Teams fire together.
Three ways to ingest an outage
| Method | Best for | Level |
|---|---|---|
Vendor webhook → sendAlert URL | UptimeRobot, Better Stack, Checkly | Critical on down |
| Email ingest | Tools that only email | {key}@critical.sendalert.thealerthub.com |
| Cron / Healthchecks.io HTTP | Dead man’s switch, backups | Warning/critical on miss |
Only warning and critical page channels. “Up again” can be info so the dashboard has a recovery row without a second siren — or skip recovery alerts entirely.
Setup (once)
- Create a project at app.thealerthub.com and copy the secret key.
- Connect Telegram or Slack (WhatsApp if you are on Pro).
- Pick webhook or email based on what the monitor supports.
Alert 1: UptimeRobot (or any HTTP notify URL)
Most monitors let you POST to a custom URL. Point it at AlertHub with query parameters (easy to paste) or JSON.
Example query style (put your key in the URL, keep the monitor’s body if it sends JSON — body wins on conflicts):
https://api.thealerthub.com/sendAlert?ah_key=YOUR_KEY&ah_source=UptimeRobot&ah_level=critical&ah_title=Monitor%20down&ah_description={{monitorURL}}
If the vendor does not expand {{monitorURL}}, hardcode the site name in ah_title and let their JSON fields map via placeholders. Build the URL in the Webhook Builder.
Use a second URL with ah_level=info for recovery if you want history without paging.
Alert 2: Healthchecks.io / cron ping
Healthchecks.io pings when a job does not check in. Create a check, set the failure notify URL to AlertHub critical, and wrap the cron:
#!/bin/bash
set -e
/usr/local/bin/backup.sh
curl -fsS -m 10 --retry 3 "https://hc-ping.com/YOUR_CHECK_UUID"
On failure of backup.sh, Healthchecks notices the missed ping. Alternatively POST to AlertHub from the ERR trap — see bash webhooks.
Alert 3: Email-only monitors
NAS, cheap uptime plans, and some status pages only send mail. Forward to {key}@critical.sendalert.thealerthub.com. Details: email ingestion.
Ideas to squeeze more value
- One project per environment.
prod-uptimevsstaging-uptimeso staging timeouts do not page WhatsApp. - Combine with VPS scripts. Disk usage and process checks stay in cron; public HTTPS stays in UptimeRobot.
- n8n as a custom probe. Schedule + HTTP IF — n8n guide.
FAQ
Does AlertHub ping my site for me?
No. The monitor (or cron) does. AlertHub stores and routes the event.
Should “up” be critical too?
Usually not. Info or skip. People ignore feeds that celebrate recovery as loudly as outages.
Where do I put the secret?
Query ah_key or JSON. Prefer a webhook URL that is not logged in a public Git repo.
Next steps
Point one monitor at sendAlert, confirm a forced down in the dashboard, then add Telegram.
Related: email ingestion · monitor services with bash