Back to API Overview

Infrastructure

Health checks and monitoring endpoints

Endpoints (2)

GET/api/health
Public

Health Check

Check database and Redis connectivity, and whether background jobs are running. Wrapped in the standard envelope; status is healthy | degraded | unhealthy; database and redis are connected | disconnected | disabled | unknown, and worker is alive | stale | not_consuming | disabled | unknown. Only unhealthy (database down) answers 503 — degraded (Redis down, or background jobs not running, database fine) stays 200 so a Redis blip does not get the machine restarted. worker: stale means background jobs (webhooks, per-minute billing, scheduled sources) are queueing and not running.

POST/api/client-errors
Auth Required

Report a Client Error or Metric

The server half of browser-side error reporting and web vitals. Reports land in AppLog with reason client_error; level 'metric' rows land as client.<message> metrics beside the server's own timings. Accepts a dashboard session cookie or an API key with the profiles:read scope — never anonymous, so a signed-out visitor's report is answered 401 and dropped. Always answers 204 with no body: over the rate limit (30/min), oversized (32KB body, 4KB meta), malformed or unparseable reports are dropped silently rather than answered 4xx, because the reporter must never become something a page retries. Bearer-shaped values (token=, sig=, key=, apiKey=, sk_…) are redacted from url and stack before storage.