Documentation

All 214 endpoints share the same request handling, response envelope and error taxonomy. Learn it once.

The response envelope

Success or failure, every response has the same shape. Handlers return a result and the framework wraps it, so the envelope cannot drift between endpoints.

{
  "request_id": "0f1c…",          // echo it back when reporting a problem
  "service_id": "market-ticker",
  "service_version": "1.0.0",
  "status": "success",
  "data": { … },                  // the endpoint's own payload
  "warnings": [],                 // things you should know about this result
  "sources": [],                  // where the data came from, with timestamps
  "confidence": null,             // 0..1 for graded judgements; null for exact maths
  "informational_only": true,     // true when this is analysis, not advice
  "data_timestamp": "…",          // when the underlying data was true
  "processing_ms": 42,            // measured, not estimated
  "generated_at": "…"
}

Fields worth understanding

warnings
Not decoration. A partial extraction, a truncated document, a figure that could not be verified, a source that was stale — all appear here. An empty array means the endpoint had nothing to qualify.
sources
Every endpoint that touches an upstream names it, says what was obtained from it, and whether the value came from cache. This is what makes a finding checkable rather than merely asserted.
confidence
Present only where a graded judgement was made — screening, extraction, classification. Deliberately null on exact calculations: a fixed 1.0 on arithmetic would be noise, and an invented number on a screening result would be worse than none at all.
informational_only
True where the output is analysis rather than advice. Screening and analytics results are a starting point for a decision, never the decision.

Free routes

These need no payment:

RouteWhat it is for
GET /health Liveness probe.
GET /ready Readiness probe including datastore and provider checks.
GET /version Application name, version and build metadata.
GET /metrics Prometheus metrics. Restricted to loopback/LAN or a token.
GET /v1/catalog Full public service catalogue.
GET /v1/catalog/{service_id} Public catalogue entry for one service.
GET /v1/pricing Public price list for every paid service.
GET /v1/examples/{service_id} Example request and response for one service.
GET /v1/schema/{service_id} JSON Schema for one service's input and output.
GET /v1/status/public Coarse public status. Exposes no sensitive detail.

Conventions