Documentation/Architecture

Architecture overview

Services

  • API (Go, :8080 + :8443) — cabinet HTTP, mTLS ingest
  • TSDB (:8428) — Prometheus-compatible TSDB
  • Postgres (:5432) — relational state
  • Cabinet (Next.js, :3000) — the browser UI

The API is a single binary with three TLS-distinguished surfaces:

  • Cabinet: cookie session, allowlist CORS, users in the browser
  • Embed: bearer JWT, *-CORS, partners in an iframe
  • mTLS: peer-cert auth, a separate listener, agents

Plus two CORS-permissive surfaces:

  • Public dashboards (/public/dashboards/:token)
  • SCIM (/scim/v2/Users, /scim/v2/Groups)