Timeseries
Query time-bucketed aggregation data for spans. Use this to analyze trends over time, detect anomalies, or build charts. Returns aligned timestamps with auto-computed interval based on the time range. Use UQL aggregation query (e.g. perMin(count()) | group by service_name) with aggregate functions: count(), avg(), sum(), p50(), p90(), p99(), etc. Use column parameter to select specific aggregate columns for the timeseries. Supports WHERE filters, full-text search, system filtering, and duration filtering. Returns groups with arrays of float values aligned with the time array. Use list_span_groups instead when you need a single aggregated snapshot (not time-bucketed). Use quantiles instead when you only need latency percentiles (p50/p90/p99). Documentation: https://uptrace.dev/features/querying/spans
Path parameters
Uptrace project ID.
Query parameters
RFC3339 timestamp.
Start time (inclusive) as RFC3339 timestamp.
RFC3339 timestamp.
End time (exclusive) as RFC3339 timestamp.
UQL aggregation query (e.g., perMin(count()) | group by service_name).
Additional WHERE clause appended to the query.
Full-text search for spans containing the given text.
Attribute names to search within when using search. Can be repeated for multiple attributes.
Filter by system (e.g., log:error, db:postgresql). Can be repeated for multiple systems.
Aggregate column names to include in the timeseries. Can be repeated for multiple columns.
Duration greater than or equal to N (milliseconds).
Duration less than N (milliseconds).
Limit number of results.
Response
Timeseries data.