Checked from outside every minute: a real webhook sent, read back by the API and seen on the live stream. Last check 38 s ago.
Each bar is a day. Green is a day it worked every time we checked; hover one for the detail. A quiet day with no webhooks still counts as working.
Milliseconds, as a sender sees them through Cloudflare.
Point your uptime monitor at /status.json. It answers 200 while everything works and says which part is not when something does not.
{
"ok": true,
"checked_at": "2026-10-12T21:18:04+00:00",
"parts": {
"catch": {
"ok": true,
"state": "ok",
"ms": 274
},
"api": {
"ok": true,
"state": "ok",
"ms": 297
},
"live": {
"ok": true,
"state": "ok",
"ms": 780
},
"forward": {
"ok": true,
"state": "ok",
"ms": null
},
"web": {
"ok": true,
"state": "ok",
"ms": 159
},
"cleanup": {
"ok": true,
"state": "ok",
"ms": null
}
}
}Every minute our server sends a real webhook through Cloudflare, reads it back through the API with a real key, and waits for it on the live stream, the same way you would.
Two checks in a row that fail. One failed or slow minute shows as slow, not down.
No. It uses its own inbox and key, and deletes what it sends as soon as it has read it back.
Open an inbox and send it something. See how fast it is for yourself, then read how much it can take.