Skip to main content
The Rootprint API is the HTTP surface behind your self-hosted instance. Start with the external APIs when you need to send logs from a shipper or query logs from another tool. Use the session-based APIs when you need to automate web-app workflows such as index management, user administration, or monitoring. If you are setting up log collection for the first time, start with Send logs. If you already know the endpoint you need, use the generated endpoint reference in the sidebar.

Base URL

All API requests go to your Rootprint instance. Replace the host below with your Rootprint host, including the port if it does not serve on the default one.

Authentication

Rootprint uses these authentication modes, depending on the endpoint. Bearer-token endpoints use the standard Authorization header.
Ingest API keys are scoped to one index; that index is fixed by the key and cannot be changed per request. Spans are the exception: POST /v1/traces always writes to the span store named by TRACE_INDEX_ID, whatever index the key is scoped to. See Traces. Query API keys are read-only and not index-scoped. A personal API key, also called a personal access token (PAT), authenticates as the user who created it. A service account API key authenticates as the service account.

Endpoint groups

The generated endpoint reference is arranged around the audience for each endpoint.

Timestamps

Every timestamp the API takes is Unix epoch secondsstartTs and endTs on search, histogram, field-value, export, monitoring, and stats requests, and startTime/endTime in a share or saved-view body. Log documents keep their own nanosecond fields; that is document data, not a request parameter.
GET /api/indexes/{indexId}/stats ignores from and to rather than rejecting them. A caller sending those instead of startTs and endTs gets an unbounded query: the oldest snapshots up to limit (5,000 by default), not the window it asked for.

Common content types

Use application/json for most app and admin endpoints. Use application/x-ndjson for the HTTP endpoint.
Use application/x-protobuf for OTLP logs and traces.

Good first requests

Error responses

Most app-level endpoints return JSON errors with a stable error object.
OTLP endpoints follow OTLP-style error responses instead of the app JSON error shape.
Rootprint rate-limits unauthenticated auth routes per client IP and read routes (search, histogram, field values, traces, service health, share resolution) per signed-in user. Ingest endpoints are not limited by Rootprint — apply rate limiting at your reverse proxy or load balancer if your deployment needs it. See Rate limiting for the tunables.