Hanzo
OpenapiO11y

Parses a builder query and echoes it back normalized to the v3 shape — the…

Parses a builder query and echoes it back normalized to the v3 shape — the endpoint the UI uses to canonicalize a query without running it.

POST /v1/o11y/query_range/format

Addresshttps://api.hanzo.ai/v1/o11y/query_range/format
MethodPOST
Operationpost_o11y_query_range_format
AuthAuthorization: Bearer $HANZO_API_KEY

Parses a builder query and echoes it back normalized to the v3 shape — the endpoint the UI uses to canonicalize a query without running it.

Callers need the viewer role; the runtime's own gate enforces it.

Request

87 fields, body application/json (required).

FieldInTypeRequiredDescription
compositeQuerybodyo11y.CompositeQuery
compositeQuery.builderQueriesbodyobject
compositeQuery.builderQueries.*bodyo11y.BuilderQuery
compositeQuery.builderQueries.*.IsAnomalybodyboolean
compositeQuery.builderQueries.*.QueriesUsedInFormulabodystring[]
compositeQuery.builderQueries.*.ShiftBybodyinteger
compositeQuery.builderQueries.*.aggregateAttributebodyo11y.AttributeKey
compositeQuery.builderQueries.*.aggregateAttribute.dataTypebodystring
compositeQuery.builderQueries.*.aggregateAttribute.isColumnbodyboolean
compositeQuery.builderQueries.*.aggregateAttribute.isJSONbodyboolean
compositeQuery.builderQueries.*.aggregateAttribute.keybodystring
compositeQuery.builderQueries.*.aggregateAttribute.typebodystring
compositeQuery.builderQueries.*.aggregateOperatorbodystring
compositeQuery.builderQueries.*.dataSourcebodystring
compositeQuery.builderQueries.*.disabledbodyboolean
compositeQuery.builderQueries.*.expressionbodystring
compositeQuery.builderQueries.*.filtersbodyo11y.FilterSet
compositeQuery.builderQueries.*.filters.itemsbodyo11y.FilterItem[]
compositeQuery.builderQueries.*.filters.items[].keybodyo11y.AttributeKey
compositeQuery.builderQueries.*.filters.items[].key.dataTypebodystring
compositeQuery.builderQueries.*.filters.items[].key.isColumnbodyboolean
compositeQuery.builderQueries.*.filters.items[].key.isJSONbodyboolean
compositeQuery.builderQueries.*.filters.items[].key.keybodystring
compositeQuery.builderQueries.*.filters.items[].key.typebodystring
compositeQuery.builderQueries.*.filters.items[].opbodystring
compositeQuery.builderQueries.*.filters.items[].valuebodyobject
compositeQuery.builderQueries.*.filters.opbodystring
compositeQuery.builderQueries.*.functionsbodyo11y.Function[]
compositeQuery.builderQueries.*.functions[].argsbodyobject[]
compositeQuery.builderQueries.*.functions[].namebodystring
compositeQuery.builderQueries.*.functions[].namedArgsbodyobject
compositeQuery.builderQueries.*.functions[].namedArgs.*bodyobject
compositeQuery.builderQueries.*.groupBybodyo11y.AttributeKey[]
compositeQuery.builderQueries.*.groupBy[].dataTypebodystring
compositeQuery.builderQueries.*.groupBy[].isColumnbodyboolean
compositeQuery.builderQueries.*.groupBy[].isJSONbodyboolean
compositeQuery.builderQueries.*.groupBy[].keybodystring
compositeQuery.builderQueries.*.groupBy[].typebodystring
compositeQuery.builderQueries.*.havingbodyo11y.Having[]
compositeQuery.builderQueries.*.having[].columnNamebodystring
compositeQuery.builderQueries.*.having[].opbodystring
compositeQuery.builderQueries.*.having[].valuebodyobject
compositeQuery.builderQueries.*.legendbodystring
compositeQuery.builderQueries.*.limitbodyinteger
compositeQuery.builderQueries.*.offsetbodyinteger
compositeQuery.builderQueries.*.orderBybodyo11y.OrderBy[]
compositeQuery.builderQueries.*.orderBy[].columnNamebodystring
compositeQuery.builderQueries.*.orderBy[].orderbodystring
compositeQuery.builderQueries.*.pageSizebodyinteger
compositeQuery.builderQueries.*.queryNamebodystring
compositeQuery.builderQueries.*.reduceTobodystring
compositeQuery.builderQueries.*.selectColumnsbodyo11y.AttributeKey[]
compositeQuery.builderQueries.*.selectColumns[].dataTypebodystring
compositeQuery.builderQueries.*.selectColumns[].isColumnbodyboolean
compositeQuery.builderQueries.*.selectColumns[].isJSONbodyboolean
compositeQuery.builderQueries.*.selectColumns[].keybodystring
compositeQuery.builderQueries.*.selectColumns[].typebodystring
compositeQuery.builderQueries.*.seriesAggregationbodystring
compositeQuery.builderQueries.*.spaceAggregationbodystring
compositeQuery.builderQueries.*.stepIntervalbodyinteger
compositeQuery.builderQueries.*.temporalitybodystring
compositeQuery.builderQueries.*.timeAggregationbodystring
compositeQuery.chQueriesbodyobject
compositeQuery.chQueries.*bodyo11y.DatastoreQuery
compositeQuery.chQueries.*.disabledbodyboolean
compositeQuery.chQueries.*.legendbodystring
compositeQuery.chQueries.*.querybodystring
compositeQuery.fillGapsbodybooleanFillGaps is used to fill the gaps in the time series data
compositeQuery.panelTypebodystring
compositeQuery.promQueriesbodyobject
compositeQuery.promQueries.*bodyo11y.PromQuery
compositeQuery.promQueries.*.disabledbodyboolean
compositeQuery.promQueries.*.legendbodystring
compositeQuery.promQueries.*.querybodystring
compositeQuery.promQueries.*.statsbodystring
compositeQuery.queriesbodyo11y.QueryEnvelope[]
compositeQuery.queries[].specbodyobjectSpec is the deferred decoding of the query if any.
compositeQuery.queries[].typebodyanyType is the type of the query.
compositeQuery.queryTypebodystring
compositeQuery.unitbodystringUnit for the time series data shown in the graph This is used in alerts to format the value and threshold
endbodyinteger
formatForWebbodyboolean
noCachebodyboolean
startbodyinteger
stepbodyintegerstep is in seconds; used for prometheus queries
variablesbodyobject
variables.*bodyobject

Response

StatusBodyMeaning
200o11y.O11yQueryRangeFormatOutok

200 body — 2 fields.

FieldInTypeAlwaysDescription
databodyanyData is the query, normalized to the v3 shape.
statusbodystringStatus is "success".

Failure carries the platform error shape — see Errors.

Examples

hanzo o11y query_range format

O11y API · All Hanzo APIs · Interactive reference

How is this guide?

On this page