API referenceBeing regenerated

An honest interim while we rebuild the interactive reference.

We’re regenerating the interactive reference from the live Fastify backend. While that ships, here’s a surface map of every product endpoint, with a pointer to the methodology.

01Surface map

Six product surfaces, ~70 live endpoints.

One card per product surface with a representative endpoint list. Detailed per-surface docs are the next wave of work; until they ship, the methodology page covers the engine.

014 endpoints

Signals

Raw normalized signal catalog per area. The primitive — every other surface composes from this.

  • GET/v1/area
  • GET/v1/signals/:category
  • GET/v1/areas
  • GET/v1/meta
/docs/signalsComing soon
021 endpoint

Scores

Deterministic composite score per area. Four presets, custom weights, or saved organisation preset_id.

  • POST/v1/score
/docs/scoresComing soon
037 endpoints

Monitor

Portfolios of tracked areas. Bulk enrich, detect monthly change, fire signal.changed webhooks.

  • POST/v1/portfolios
  • GET/v1/portfolios
  • GET/v1/portfolios/:id
  • DELETE/v1/portfolios/:id
  • POST/v1/portfolios/:id/areas
  • POST/v1/portfolios/:id/enrich
  • POST/v1/portfolios/:id/changes
/docs/monitorComing soon
044 endpoints

Intelligence

Typed query plane. AI emits the plan; the database answers. 6 plan ops, 92.9% planner accuracy.

  • POST/v1/query
  • POST/v1/peers
  • POST/v1/insights
  • POST/v1/forecast
/docs/intelligenceComing soon
05~25 endpoints

Levers (organisation)

Per-organisation methodology + admin. Custom signal bundles, scoring presets, methodology pinning, peer cohorts, members, RBAC, white-label, IP allowlist.

  • POST/v1/orgs
  • PATCH/v1/orgs/:id
  • POST/v1/orgs/:id/bundles
  • POST/v1/orgs/:id/presets
  • PUT/v1/orgs/:id/methodology
  • POST/v1/orgs/:id/cohorts
  • + 19 more (CRUD per resource, members CRUD)
/docs/leversComing soon
063 endpoints

Reports

AI-narrated report for one area, bulk batch, list-mine.

  • POST/v1/report
  • POST/v1/batch
  • GET/me/reports
/docs/reportsComing soon
03Track to the new spec

Regenerate from the live backend, not by hand.

The new spec will be derived from Fastify route schemas already defined in apps/api/src/modules/**/routes.ts. Same source of truth as the live API. Auto-regenerated on every release.

Track A · Separate ticket

OpenAPI regeneration from Fastify schemas

Wire @fastify/swagger + @fastify/swagger-ui into apps/api; publish at apps/api/.../openapi.json; have apps/web fetch and embed at build time. Auth surfaced consistently with the oga_ prefix. Engine-version enum read from getSupportedEngineVersions() rather than hardcoded. Dark-flagged endpoints noted with an x-availability extension.

When that lands, this page returns to an interactive reference (Scalar or equivalent), themed to Brand v3. Until then, this honest map.

The engine ships today, even while the spec catches up.

Get an API key and read the methodology. The surface is real; the documentation rebuild is in flight.