Configuring alerts

Alerts only go to channels that you create and attach to a check.

Step 1: Create a channel

  1. Open https://dashboard.checkilo.app/channels.
  2. Click New channel.
  3. Choose a channel type.
  4. Fill in the required fields.
  5. Save the channel.

Channel availability

| Channel | What you need | Available on | |---|---|---| | Email | Email address | Free, Pro, Business | | Slack | Slack incoming webhook URL | Free, Pro, Business | | Webhook | URL that accepts POST requests | Free, Pro, Business | | Discord | Discord webhook URL | Pro, Business | | Telegram | Bot token and chat ID | Pro, Business | | LINE | Access token and recipient | Pro, Business | | Teams | Incoming webhook URL | Pro, Business |

If your plan does not allow a channel type, Checkilo blocks creation and shows a plan limit message.

Step 2: Attach the channel to a check

Creating a channel is not enough. Attach it to each check that should use it.

  1. Open My Checks.
  2. Open the check.
  3. Click Edit.
  4. In Where should alerts go?, select the channels for this check.
  5. Save changes.

Now alerts for that check go to every selected channel.

Alert types

| Alert | When it fires | |---|---| | RunFailed | A ping reaches /fail or /failure. | | RunTimedOut | A run starts but does not reach /success, /ok, /fail, or /failure before Max run duration + Grace period. | | NoNewRun | A scheduled check has an expected interval, and no new run starts before Expected interval + Grace period. |

RunFailed fires when the ping arrives. RunTimedOut and NoNewRun are found by the background worker, so they can arrive shortly after the exact deadline.

What alert metadata contains

If you send JSON metadata to a failure ping, Checkilo can include that metadata in the alert and show it on the run detail page.

Example failure ping:

curl -X POST 'https://ping.checkilo.app/abc123xyz9mZ/fail?run=zap-run-123' \
  -H 'Content-Type: application/json' \
  -d '{"error":"Quota exceeded","record_id":"row-4421"}'

Only send data that is safe to store and show in alert channels.

Troubleshooting

A channel exists but alerts do not arrive. Open the check's edit page and confirm the channel is selected.

A failure ping appears but no channel receives it. Confirm the check has at least one attached channel and that the channel credentials are still valid.

You expected a scheduled alert. Confirm Expected interval is set on the check. Without it, Checkilo does not send NoNewRun alerts.


Next: Reading the run detail page · Understanding ping URLs

Checkilo © 2026 Checkilo Help
All systems operational