Status
Checking…
Reading the latest probe results.
Recent incidents
No reported incidents in the last 30 days.
This page runs on Upkeel
The status above is computed by Upkeel watching Upkeel. A probe process declares one expectation per surface every 30 seconds, runs the HTTP check, then either fulfills the expectation or lets it miss. The product you're evaluating is the engine driving this page.
Live apps/status-probe/src/probe.ts
// One iteration of the probe loop. Runs every 30s
// for each surface (ingest, platform, docs, marketing).
import { upkeel } from '@upkeel/sdk'
const surface = 'ingest'
const correlationId = `probe-${surface}-${Date.now()}`
// Declare what we expect: an event named app.status.ingest
// to arrive within 60 seconds, otherwise it's a miss.
await upkeel.expect({
name: 'app.status.ingest',
windowMs: 60_000,
correlationId,
})
// Actually do the HTTP check.
const res = await fetch('https://api.upkeel.dev/health')
// Either fulfill (probe succeeded — surface is healthy)…
if (res.ok) {
await upkeel.fulfill({ name: 'app.status.ingest', correlationId })
}
// …or let the expectation miss its 60s window, and Upkeel's
// engine flips app.status.<surface> on this page.
If you want the programmatic view, the same data this page reads is at
api.upkeel.dev/v1/public/status — JSON, CORS-open, 10-second cache.
Read the SDK guide to wire your own services into the same engine.