Dashboard API
The dashboard reads from a JSON API under /api on the backend (port 3010). You normally don't call these directly — the UI does — but they're useful for scripting, exports, or integrations. This is an overview; the backend source is the full contract.
All responses are JSON. Time filters (from / to) accept ISO datetimes.
Browse and try every endpoint in the API explorer (Swagger UI).
Traces & spans
In development
Traces endpoints are still under development and not production-ready.
| Endpoint | Purpose |
|---|---|
GET /api/traces?from&to | One row per trace (query, status, tokens, latency, model, …) |
GET /api/trace/:traceId/summary | Full trace: query, response, tools, spans |
GET /api/spans?traceId&type&from&to | Flat span list (capped) |
GET /api/spans/:id | A single span |
GET /api/errors | ERROR spans only |
Summary, models & cost
| Endpoint | Purpose |
|---|---|
GET /api/summary?from&to | KPIs + top agents + top MCP tools |
GET /api/models?from&to | Per-model requests + input/output tokens |
GET /api/cost-daily?days (or ?from&to) | Per-day, per-model, per-service tokens (for the spend chart) |
GET /api/tokens | Daily token usage per agent (7 days) |
Evaluation
In development
Evaluation endpoints are still under development and not production-ready.
| Endpoint | Purpose |
|---|---|
GET/POST /api/datasets, DELETE /api/datasets/:id | Manage datasets |
GET/POST /api/datasets/:id/records | Dataset records |
GET /api/judges, POST /api/judges, PUT/DELETE /api/judges/:id | Manage LLM judges |
POST /api/datasets/:id/evaluate | Start an async evaluation run |
GET /api/eval-runs, GET /api/eval-runs/:id/results | Poll runs + results |
POST /api/traces/:traceId/evaluate | Synchronous quick-eval of one trace |
AI Core proxy
/aicore/* proxies to a configured SAP AI Core destination (used by Judges, Reporting, and Detect Issues for LLM inference). Configure the destination + resource group on the dashboard's Settings page. Returns 503 if AI Core isn't configured.
Full contract
For exact request/response shapes, status codes, and query parameters, see the backend server/server.ts and the app's README / PRD in the repository.
