Base URL
This is also the SDK’s default endpoint, so a wrapped server needs no
endpoint option. The Railway host it used to name still answers, but it is an implementation detail and nothing should be pointed at it./docs, generated from the same Zod route definitions that validate the requests — so it cannot drift from the code.
Two kinds of auth
They are isolated by design: an ingest key cannot read a metric, and a session token cannot post telemetry. See Authentication.
Request format
- JSON bodies with
Content-Type: application/json - All responses are JSON
- Fields are
snake_case - Timestamps are ISO 8601, UTC
- Dates are
YYYY-MM-DD, and always whole UTC days
Status codes
See Errors.
The endpoints
Ingest —POST /v1/ingest
MCPs — GET/POST /v1/mcps, GET/PATCH/DELETE /v1/mcps/{id}
Metrics — /v1/mcps/{id}/overview, /tools, /tools/{name}, /insights, /sessions
Keys — GET/POST /v1/mcps/{id}/keys, DELETE /v1/keys/{keyId}
Account — /v1/account, /usage, /members, /profile, /company, /notifications
Health — GET /health
Concepts
Authentication
Two credentials, and which one goes where.
Ingest
Batches, the 202, and why invalid items are dropped silently.
Date ranges
from, to, defaults, and why every day is a UTC day.
The nightly pass
Why three metrics lag by a day, and what nightly_as_of means.
Errors
The error shape and what each status means.
Rate limits
Payloads per minute, and Retry-After.
Versioning
The wire version, and what counts as breaking.
Security
Isolation, key handling, and what is never recorded.