NEAR AI Cloud: Get platform-wide performance timeseries (Admin only)
GET /v1/admin/platform/performance-timeseries Get platform-wide performance timeseries (Admin only) Deprecated: this endpoint is moving to cloud-platform at the same path; the cloud-platform base URL will be announced. Behaviour may differ in edge cases.
Returns per-time-bucket: request count, token throughput (total and output-only), TTFT percentiles (p50/p95/p99), and error rate.
TTFT percentiles cover streaming requests only (ttft_ms IS NOT NULL). The
ttft_sample_count field in each bucket exposes the denominator so callers can
compute coverage fraction (ttft_sample_count / requests).
Error rate = stop_reason IN ('provider_error','timeout','incomplete') / requests
with a recorded stop_reason. Pre-V0037 rows (stop_reason IS NULL) are excluded from
both numerator and denominator.
Percentiles across hours are approximate (sample-weighted means of hourly percentiles).
Admin permissions: admin session, read_write token, or read_only token. Approved read across organizations; does not mutate business state.
Parameters:
- start (query, string): Start of time range (ISO 8601). Defaults to 30 days ago.
- end (query, string): End of time range (ISO 8601). Defaults to now.
- granularity (query, string): Time granularity: hour (≤31d), day (≤366d, default), week (≤3y), month (≤5y).
- model_name (query, string): Filter to a single model name (platform-wide if omitted).
Responses: 200: Performance timeseries retrieved successfully
- data (array of object, required)
- bucket (string, required): ISO 8601 bucket start (truncated to granularity).
- error_rate (number, double): stop_reason IN ('provider_error','timeout','incomplete') / requests WHERE stop_reason IS NOT NULL. Excludes pre-V0037 rows (stop_reason IS NULL) from both numerator and denominator.
- output_tokens (integer, int64, required): output_tokens only (generation throughput, prompt-inflation-free).
- p50_ttft_ms (number, double): 50th-percentile TTFT, ms (streaming requests only; None if no samples). Approx. across hours: sample-weighted mean of hourly p50s.
- p95_ttft_ms (number, double): 95th-percentile TTFT, ms (streaming requests only; None if no samples). Approx. across hours: sample-weighted mean of hourly p95s.
- p99_ttft_ms (number, double): 99th-percentile TTFT, ms (streaming requests only; None if no samples). Approx. across hours: sample-weighted mean of hourly p99s.
- requests (integer, int64, required)
- total_tokens (integer, int64, required): input_tokens + output_tokens.
- ttft_sample_count (integer, int64, required): Number of requests with ttft_ms recorded (streaming only). Use this as the denominator when interpreting TTFT percentiles.
- granularity (string, required)
- model_filter (string): Optional model filter applied (None = platform-wide).
- period_end (string, date-time, required)
- period_start (string, date-time, required) 400: Invalid request 401: Unauthorized 403: Missing admin privileges (forbidden) or insufficient token permission (insufficient_permissions). 500: Internal server error 504: Analytics statement budget exceeded