How it works
When an incident opens or resolves, Uptrue POSTs a JSON payload to the webhook URL you configure. The body is signed with HMAC-SHA256 using a per-channel secret — your endpoint should verify the X-Uptrue-Signature header before trusting the payload.
The payload includes the incident metadata (id, title, status, severity, started_at, resolved_at) and the monitor metadata (id, name, type, target). Both incident-opened and incident-resolved events are sent to the same webhook URL with different event values, so a single endpoint can handle the full lifecycle.
Setup in 4 steps
- 1In Uptrue, open Dashboard → Alerts → New Channel, pick "Webhook" as the type.
- 2Paste your endpoint URL. Optionally provide a webhook secret — if set, every POST is signed with X-Uptrue-Signature: sha256=<hex>.
- 3Save the channel. The first test request fires immediately — verify your endpoint receives it and that signature verification passes.
- 4Attach the channel to one or more monitors. Both incident-opened and incident-resolved events are POSTed to the same URL.
What you get
- JSON POST with full incident and monitor metadata
- HMAC-SHA256 signature in X-Uptrue-Signature header (when secret is set)
- User-Agent: Uptrue-Webhook/1.0 for easy filtering at your end
- Both incident.created and incident.resolved events on the same URL
- 10-second timeout — your endpoint should ack quickly and process async
Payload schema
POST /your-endpoint HTTP/1.1
Content-Type: application/json
User-Agent: Uptrue-Webhook/1.0
X-Uptrue-Signature: sha256=<hex digest of body>
{
"event": "incident.created",
"incident": {
"id": "uuid",
"title": "site.example.com is down",
"status": "open",
"severity": "critical",
"started_at": "2026-05-03T12:34:56.000Z",
"resolved_at": null
},
"monitor": {
"id": "uuid",
"name": "Production homepage",
"type": "http",
"target": "https://site.example.com"
},
"timestamp": "2026-05-03T12:34:58.123Z"
}Monitors that fire Webhook alerts
Every Uptrue monitor type can send to Webhook. Some of the most common:
- HTTP uptime monitoring — site goes down, you get alerted.
- SSL certificate monitoring — 30, 14 and 3 days before expiry.
- DNS record monitoring — unauthorised record changes.
- API endpoint monitoring — body assertions, status codes, latency.
- Security headers monitoring — HSTS, CSP, X-Frame-Options regressions.
- All 24 monitor types →
Want a one-off check first? Run our free Website Health Score or browse all free monitoring tools.
Frequently asked questions
Wire Webhook into your monitoring today
Free 3-monitor plan to start. Lite (£1/month) unlocks Webhook and every other channel.
Start Monitoring Free