Recipe · Uptime Kuma

Send Uptime Kuma alerts to your phone

Wire Uptime Kuma's Webhook notification type to a Paperplane channel with a custom body template, so a monitor going down becomes an alert, not a log line.

Uptime Kuma’s default webhook payload is shaped for its own dashboard, not for Paperplane’s title/message fields — so the notification needs a custom body template, which Uptime Kuma supports natively.

Set up the notification

  1. Settings → Notifications → Setup Notification, type Webhook.
  2. Set the URL to your channel’s endpoint: https://<host>/events/<username>/Uptime.
  3. Turn on Custom Body, and set the request body to match Paperplane’s payload, using Uptime Kuma’s template variables:
{
  "title": "{{ monitorJSON.name }} is {{ heartbeatJSON.status }}",
  "message": "{{ msg }}",
  "priority": "High",
  "nature": "pending"
}
  1. If the channel has an endpoint key, add it as a custom header field if your Uptime Kuma version exposes one for webhook notifications — otherwise lock the channel down by IP or leave it open behind Uptime Kuma’s own network.
  2. Attach the notification to each monitor you want on your phone, or set it as a default for new monitors.

Why nature: pending

An Uptime Kuma “down” event isn’t necessarily an error you can fix yet — it might resolve itself. pending still promotes it to an alert you have to acknowledge, without asserting it’s already a confirmed failure. Switch to error if you’d rather every down event page you as a hard failure from the start.

Uptime Kuma sends a second notification when the monitor recovers — that one lands as a plain message unless you also set nature/priority in a second template for the “up” case.