--- title: Hep.gg Status (LLM) description: Statuspage-style status pages with a public component tree, incident timeline, machine-readable feed, and a monitor-driven write API. --- # Hep.gg Status Statuspage-style status pages: a component tree, an incident timeline, and a machine-readable feed. A page is published on its own host (a hep.gg subdomain or a custom domain you own). External monitors can drive a page through the programmatic API below. ## Public status-page endpoints (unauthenticated) Served on the page's own host (https:///...): ### GET / Server-rendered status page (HTML): overall indicator, component tree, active incidents, scheduled maintenance, and (if enabled) 90-day uptime. ### GET /status.json Machine-readable summary: page info, a "version" fingerprint, overall status, components[], and incidents[] (id, name, impact, state, timestamps). ### GET /badge.svg Shields-style SVG status badge. Cacheable. ### GET /status-version.json Cheap fingerprint the page polls (~30-45s) to know when to refresh; the same "version" value appears in status.json. ## Programmatic API (drive a page from a monitor) Base URL: https://hep.gg Auth: Authorization: Bearer (a per-page key created in the dashboard; it only reads/writes its own page). ### GET /api/v1/status-api/status Current overall status, leaf components, and active incidents for the key's page. ### POST /api/v1/status-api/incidents Open an incident. Body (JSON): title string required. impact string optional. "none" | "minor" | "major" | "critical". body string optional. First update text. components array optional. [{ component: "", status: "" }] Unknown component refs are silently ignored. Response: { "ok": true, "data": { "id": "" } } ### POST /api/v1/status-api/incidents/:iid/updates Post an update / change state. Body (JSON): state string required. "investigating" | "identified" | "in_progress" | "monitoring" | "resolved". body string optional. components array optional. Affected components (same shape as above). ### POST /api/v1/status-api/components/:cid/status Set one component's status. Body (JSON): status string required. "operational" | "degraded" | "partial" | "outage" | "maintenance". Errors: 400 validation, 401 invalid/disabled key, 404 unknown component/incident. ## Tiers Free: 1 page (forced "Powered by Hep.gg") + 5 leaf components. Hep.gg Prime: 2 pages (footer removable) + unlimited components. Extra pages are 480 Hep Tokens / 30 days, bought from your token balance. ## Hep.gg dashboard (cookie auth - not for programmatic use) GET /api/v1/status (your pages) POST /api/v1/status (create; slot-gated) PATCH /api/v1/status/:pageID (name / labels / theme / domain) DELETE /api/v1/status/:pageID POST /api/v1/status/:pageID/mount (bind a hep.gg subdomain or owned domain) GET /api/v1/status/:pageID/components POST / PATCH / DELETE the tree GET /api/v1/status/:pageID/incidents POST / PATCH / DELETE + .../updates GET /api/v1/status/templates POST /api/v1/status/:pageID/templates POST /api/v1/status/purchases/trade (buy an extra page slot with Hep Tokens)