Skip to main content

Send website down alerts to IFTTT

Start an applet when a website goes down or comes back. Solo, Starter and Pro.

What you get

  • A message when a website goes down, with the website and the reason. We look again before we send it. See Confirmed Alerts.
  • The recovery arrives as its own message, with how long the website was down.
  • A test message when you add it, so you know it arrives.
  • Certificate expiry reminders are sent by email only, not to IFTTT. See SSL expiry reminders.

Which plans

Solo, Starter and Pro. Every chat, automation and webhook channel counts against one per-account limit: Solo 10, Starter 20, Pro 50. Not on Free.

IFTTT: how many each plan allows
PlanHow many
SoloUp to 10, shared with your other chat, automation and webhook channels
StarterUp to 20, shared with your other chat, automation and webhook channels
ProUp to 50, shared with your other chat, automation and webhook channels

Prices are in rupees, GST included. See plans.

Set it up

In TidyMonitor, open Alert channels, click Add channel and choose IFTTT. The app shows these same steps.

  1. Make an applet whose trigger is Webhooks, “Receive a web request with a JSON payload”.
  2. Open Documentation on the Webhooks service page to see your link and key.
  3. Paste the link for JSON requests in TidyMonitor, with your event name in it.

Then we send a test message. Tell us it arrived and the channel is ready.

What you give us

Webhooks service URL for the trigger 'Receive a web request with a JSON payload'.

Built to IFTTT’s documented format. Send the test message when you add it to see it arrive. Read IFTTT’s own guide.

What we send

IFTTT receives our standard webhook payload, version 1, so every key below is a field you can use there.

Webhook payload, version 1: every key, its type and its meaning
KeyTypeMeaning
textstringOne ready-made line. Post it as it is if you need nothing else.
eventstringDOWN, DOWN_FINAL (the last repeat before we go quiet), RECOVERY, SSL_EXPIRY, DOMAIN_EXPIRY. A test message is RECOVERY with test: true.
monitorstringThe monitor’s name (its URL when unnamed).
urlstringThe monitored address.
detailstringDown: the reason. Recovery: the downtime. Test: empty.
timestringClock time in India, HH:mm:ss IST.
versionnumber1.
testbooleantrue only for “Send a test”. Filter on this first.
statusstringdown, up, warning (a reminder), test.
monitor_idnumber or nullStable id of the monitor. null for a test.
incident_idnumber or nullThe outage’s id: the same on DOWN, every repeat, and its RECOVERY. Use it to pair them. null for reminders and tests.
occurred_atstringISO 8601 with offset, India time. Down: when the outage began. Recovery: when it ended.
reasonstring or nullDown only: why (HTTP 500, timeout and so on).
downtimestring or nullRecovery only, for example 2h 5m.
days_leftnumber or nullReminders only.
expires_onstring or nullReminders only, for example 2026-10-21.

Reminders are sent by email only today, so a webhook does not receive the reminder events yet. Their keys are part of the format and stay null.

An example: a website goes down

{
  "text": "🔴 Acme API is DOWN — HTTP 500 (at 09:15:00 IST)",
  "event": "DOWN",
  "monitor": "Acme API",
  "url": "https://acme.test",
  "detail": "HTTP 500",
  "time": "09:15:00 IST",
  "version": 1,
  "test": false,
  "status": "down",
  "monitor_id": 7,
  "incident_id": 5,
  "occurred_at": "2026-10-14T09:15:00+05:30",
  "reason": "HTTP 500",
  "downtime": null,
  "days_left": null,
  "expires_on": null
}

The rules

  • One POST with Content-Type application/json; charset=UTF-8.
  • Every key is always present, in this order, and null when it does not apply.
  • Keys may be added in a later version. None is renamed or removed, and no meaning changes, without a new version.
  • Answer with any 2xx within 10 seconds and we count it as delivered. Anything else is tried again (6 attempts, at least 2 minutes apart), then the monitor’s fallback channel gets the alert.
  • Redirects are not followed. The address must be public.
  • The first message, sent while you add the channel, carries only text. “Send a test” from the channel’s menu sends the full payload.

Don’t hear it from a customer.

By signing up you agree to our Terms and Privacy Policy.