Hanzo
OpenapiO11y

Returns one product's RED series — request rate, errors, p50 and p95 latency —…

Returns one product's RED series — request rate, errors, p50 and p95 latency — for the caller's org, plus that org's LLM usage rollup over the same…

GET /v1/o11y/product/metrics

Addresshttps://api.hanzo.ai/v1/o11y/product/metrics
MethodGET
Operationget_o11y_product_metrics
AuthAuthorization: Bearer $HANZO_API_KEY

Returns one product's RED series — request rate, errors, p50 and p95 latency — for the caller's org, plus that org's LLM usage rollup over the same window. The series come from org-tagged request spans, so a tenant only ever aggregates its own traffic; a validated platform SuperAdmin sees the whole product's RED, while usage stays the caller's own org either way. A well-formed product with no backing workload answers empty series; a malformed slug is a 400.

Request

3 fields.

FieldInTypeRequiredDescription
productquerystringProduct is the console product slug to read, e.g.
rangequeryintegerRange is the window in seconds.
stepSecqueryintegerStepSec is the bucket width in seconds, clamped to [30, 3600].

Response

StatusBodyMeaning
200o11y.metricsResponseok

200 body — 31 fields.

FieldInTypeAlwaysDescription
productbodystringProduct is the service these numbers are about, echoed back.
rangebodyobjectRange is the window actually used, after clamping — not what was asked for.
range.sinceSecbodyinteger
range.stepSecbodyinteger
seriesbodyobjectSeries is the RED trend: request rate, error rate and two latency quantiles, bucketed at range.stepSec and oldest bucket first.
series.errorsbodyo11y.point[]
series.errors[].tbodystringT is the bucket start, RFC3339 in UTC.
series.errors[].vbodynumberV is the bucket's value.
series.latencyP50Msbodyo11y.point[]
series.latencyP50Ms[].tbodystringT is the bucket start, RFC3339 in UTC.
series.latencyP50Ms[].vbodynumberV is the bucket's value.
series.latencyP95Msbodyo11y.point[]
series.latencyP95Ms[].tbodystringT is the bucket start, RFC3339 in UTC.
series.latencyP95Ms[].vbodynumberV is the bucket's value.
series.requestsbodyo11y.point[]
series.requests[].tbodystringT is the bucket start, RFC3339 in UTC.
series.requests[].vbodynumberV is the bucket's value.
summarybodyobjectSummary totals the window in one object, so a tile does not have to sum the series to render.
summary.errorRatebodynumber
summary.errorsbodyinteger
summary.p95Msbodynumber
summary.requestsbodyinteger
usagebodyobjectUsage is the LLM side of the same window: how many calls, how many tokens and what they cost.
usage.callsbodyinteger
usage.costCentsbodyinteger
usage.seriesbodyo11y.usageBucket[]
usage.series[].callsbodyintegerCalls is how many LLM calls landed in the bucket.
usage.series[].costCentsbodyintegerCostCents is what they cost, in cents.
usage.series[].tbodystringT is the bucket start, RFC3339 in UTC.
usage.series[].tokensbodyintegerTokens is how many tokens they consumed.
usage.tokensbodyinteger

Failure carries the platform error shape — see Errors.

Examples

hanzo o11y product metrics

O11y API · All Hanzo APIs · Interactive reference

How is this guide?

On this page