Skip to content

API reference

All paths below are relative to /api/v1. Admin sessions are allowed; API token requests need the scope noted by each group.

Current usage and providers

EndpointPurposeScope
GET /providersSupported provider catalogue and capabilitiesPublic
GET /configsConnection metadataconfigs:read
GET /configs/{id}/historySaved provider snapshotshistory:read
POST /configs/{id}/pollPoll one connectionpoll:write
POST /pollPoll all enabled connectionspoll:write
GET /poll/statusPoll scheduler statuspoll:write
GET /usageLatest state, health, and last-known-good datausage:read
GET /homepageFlat Homepage Dashboard payloadallowed host or usage:read

Configuration creation, update, ordering, deletion, credential testing, Codex OAuth, and API-token management require an admin session.

Analytics

All analytics endpoints require analytics:read.

EndpointImportant parameters
GET /analytics/summary
GET /analytics/overviewfrom, to, `interval=hour
GET /analytics/economicsfrom, to, provider, config_id
GET /analytics/providers/{id}
GET /analytics/providers/{id}/capacitymetric, timezone
GET /analytics/providers/{id}/timeseriesmetric, interval, from, to, timezone
GET /analytics/providers/{id}/dailymetric, from, to, timezone
GET /analytics/providers/{id}/hourlymetric, date, timezone
GET /analytics/providers/{id}/forecastmetric, timezone
GET /analytics/providers/{id}/comparisonmetric, `window=day
GET /analytics/providers/{id}/attributionfrom, to
GET /analytics/hermesfrom, to, provider

from and to are ISO-8601 datetimes. timezone is an IANA timezone name; the frontend sends the browser's local timezone for calendar grouping.

Data sources

GET /datasources/configs, observations, and status require datasources:read. Create, update, delete, test, sync, and provider-mapping operations require an admin session.

EndpointPurpose
GET /datasources/configs/{id}/observationsInspect recent ingested records and aliases
GET /datasources/configs/{id}/statusSync health and diagnostics
GET /datasources/configs/{id}/provider-mappingsInspect Hermes provider mappings (admin)
PUT /datasources/configs/{id}/provider-mappingsReplace/update Hermes provider mappings (admin)
POST /datasources/configs/{id}/testTest without saving observations (admin)
POST /datasources/configs/{id}/syncSync immediately (admin)

Use the generated OpenAPI document exposed by the running backend for complete request and response schemas. API consumers should preserve null as missing; do not coerce it to zero.

Self-hosted API usage dashboard.