Alerts & contacts
Alert contacts are the destinations Moonitor notifies when a monitor goes down or recovers. Wire them up once and you'll hear about downtime wherever you already work.
What an alert is
An alert contact is somewhere Moonitor sends a notification — an inbox, a chat channel, or your own server. You manage them in the dashboard under Alert contacts. Every alert tells you which monitor is affected, its target, whether it’s down or back up, and — for a down — the cause. You’ll get a “recovery” alert too once the monitor passes a check again.
Supported channels
Moonitor can notify you through any of these:
- Email — an inbox of your choice.
- Webhook — an HTTP POST to your own URL.
- Slack — a message to a Slack channel.
- Discord — a message to a Discord channel.
- Telegram — a message to a Telegram chat.
Note
SMS and voice alerts aren’t supported yet.
Set up from day one
You don’t have to configure anything to get your first alert. When you sign up, Moonitor creates a pre-verified Email contact for your account email, and every new monitor is automatically linked to all of your existing contacts. So alerts work out of the box with zero setup — add a monitor and it can already reach you.
Linking contacts to monitors
Each monitor can notify any subset of your contacts — a noisy internal job might only ping a webhook, while your marketing site alerts the whole team. Set this on the monitor’s page, or update many monitors at once with the bulk action on the Monitors list.
When alerts fire
By default Moonitor notifies a monitor’s linked contacts on the first check that fails, not minutes later.
Before a failure counts, it has to be confirmed. We check from Helsinki, Oregon, Johannesburg and Singapore, and a majority of them have to see the same problem, then see it again a few seconds later. A failure only one location can reproduce, or one that clears on the re-check, is a wobble between us and you rather than an outage, so we don’t wake you for it.
Recovery (“up”) alerts go only to the contacts that were notified of the matching “down”, so you never get a recovery for an incident you never heard about. See Incidents for how down and up events are detected and paired.
Only alert if it’s still down
Some servers have short hiccups that are real, confirmed from every location, and over by the next check. If you’d rather not hear about those, set Alert after to 2 or more failed checks in a row. It’s per contact, on the monitor’s page, so the team’s inbox can wait for a second failed check while a webhook still fires on the first. To change it on many monitors at once, select them on the Monitors list and use Alert contacts.
The trade-off is time: each extra check adds about one check interval before you hear about a real outage. On a 5-minute monitor set to 2, that’s about 5 minutes. Short failures still appear in the monitor’s incident history either way.
Channel setup
An email contact must be verified before it receives alerts. When you add a new email contact, Moonitor sends a verification link to that address — click it to confirm. Your sign-up address is pre-verified, so it works straight away.
Webhook
Moonitor sends an HTTP POST with a JSON body to your URL on both down and up events. The payload looks like this:
{
"event": "down" | "up",
"monitor": { "id": "...", "name": "...", "target": "...", "type": "HTTP" },
"incident": { "id": "...", "startedAt": "...", "resolvedAt": null, "cause": "..." },
"at": "2026-01-01T00:00:00.000Z"
}On a down event resolvedAt is null; on an up event it’s set to the time the incident was resolved.
Slack
Paste a Slack Incoming Webhook URL. Moonitor posts a message to that channel on down and up, including the monitor name, its target and the cause.
To get one, add an Incoming Webhook in your Slack workspace and point it at the channel you want alerts in. Slack gives you a URL — copy it and paste it here.
Discord
Paste a Discord channel Webhook URL. Moonitor posts a message to that channel on down and up.
To get one, open the channel’s settings, go to Integrations → Webhooks, create a webhook, and copy its URL.
Telegram
Moonitor sends alerts through its Telegram bot, and Telegram only lets a bot message people who have started it first. Setup takes a minute:
- Open the bot link shown on the Alert contacts page and press Start. The bot replies with your chat ID.
- For alerts in a group instead, add the bot to the group and send
/chatid; it replies with the group’s chat ID. - Enter that chat ID as the contact value. Moonitor sends a test message immediately — if it can’t reach the chat, the contact isn’t saved and you’ll see why.
Heads up
Keep your webhook URL and your Slack and Discord webhook URLs private — anyone who has one can post into your channel or hit your endpoint.
Test that alerts arrive
Before you rely on a contact, take a minute to prove it works end to end:
Verify the contact
For an email contact, click the verification link first. A contact that isn’t verified won’t receive anything.
Link it to a monitor
Make sure the contact is linked to at least one active monitor.
Trigger a quick check
Use Check now, or pause and resume a monitor, to confirm the alert lands where you expect.
Tip
Verify your email contact and send a quick test — a pause/resume or a Check now — so you know alerts reach you before you actually need them.
What’s in an alert
| Field | Description |
|---|---|
| Monitor | Which monitor the alert is about. |
| Target | The URL, or host and port, the monitor checks. |
| Status | Whether the monitor is down or back up. |
| Cause | For a down, why the check failed. |
Note
For example, a Slack or Discord alert when a site goes down reads like 🔴 Marketing site is DOWN — https://example.com with the reason underneath. When it recovers you get the matching 🟢 Marketing site is back UP — https://example.com.