Get performance quantiles over time
Returns p50, p90, p95, and p99 distributions for latency, time-to-first-token, and tokens-per-second, bucketed by time_tick.
Authentication
Use your Respan API key for Respan API authentication. Enter only the Respan API key value; clients send Authorization: Bearer <RESPAN_API_KEY>. For /api/responses, provider credentials such as Perplexity, OpenAI, or Azure OpenAI go in Settings -> Providers or respan_params.credential_override in the request body, not in this authentication field.
Use a dashboard JWT only for dashboard-authenticated endpoints. Respan API-key endpoints use the respanApiKey auth field instead.
Query parameters
Preset time range. Use this or explicit start_time / end_time.
Base date used with summary_type presets.
Bucket granularity for time-series responses.
Request
Narrows the spans the metrics are computed from.
Each key is a field to filter on, and each value is a condition: {"<field>": {"operator": "<operator>", "value": [...]}}. A span must match every condition. To set two conditions on one field, such as a range, pass a list of conditions.
Operators: "" (equals, the default), not, in, not_in, lt, lte, gt, gte, contains, not_contains, icontains (ignores case), startswith, not_startswith, endswith, not_endswith, empty, not_empty. Put values in a list: "" and in match any of the listed values, and not and not_in match none of them. Other operators take one value; for empty and not_empty, send [""].
Fields: span columns, such as model, provider_id, deployment_name, customer_identifier, custom_identifier, organization_key_id, prompt_id, log_type, status_code, environment, cost, latency, prompt_tokens, completion_tokens and total_request_tokens, plus metadata__<key> (values are strings). Aliases such as total_tokens and total_cost, and scores__<evaluator_id>, don't work here.
Example:
{
"model": {"operator": "", "value": ["gpt-5.5"]},
"customer_identifier": {"operator": "", "value": ["alex@acme.dev"]}
}