Skip to content
Start here

Create a sharable link to a query result

client.Workers.Observability.SharedQueries.New(ctx, params) (*ObservabilitySharedQueryNewResponse, error)
POST/accounts/{account_id}/workers/observability/shared/query

Shared queries store the results of a previously run query, allowing you to share the results with others.

Security
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
User Service Key

Used when interacting with the Origin CA certificates API. View/change your key.

Example:X-Auth-User-Service-Key: v1.0-144c9defac04969c7bfad8ef-631a41d003a32d25fe878081ef365c49503f7fada600da935e2851a1c7326084b85cbf6429c4b859de8475731dc92a9c329631e6d59e6c73da7b198497172b4cefe071d90d0f5d2719
Accepted Permissions (at least one required)
Workers Observability Write
ParametersExpand Collapse
params ObservabilitySharedQueryNewParams
AccountID param.Field[string]

Path param: Your Cloudflare account ID.

QueryID param.Field[string]

Body param: Identifier for the query. When parameters are omitted, this ID is used to load a previously saved query’s parameters. When providing parameters inline, pass any identifier (e.g. an ad-hoc ID).

Body param: Timeframe for the query using Unix timestamps in milliseconds. Narrower timeframes produce faster responses and more specific results.

From float64

Start timestamp for the query timeframe (Unix timestamp in milliseconds)

To float64

End timestamp for the query timeframe (Unix timestamp in milliseconds)

Chart param.Field[bool]Optional

Body param: When true, includes time-series data in the response.

Compare param.Field[bool]Optional

Body param: When true, includes a comparison dataset from the previous time period of equal length.

Dry param.Field[bool]Optional

Body param: When true, executes the query without persisting the results. Useful for validation or previewing.

Granularity param.Field[float64]Optional

Body param: Number of time-series buckets. Only used when view is ‘calculations’. Omit to let the system auto-detect an appropriate granularity.

IgnoreSeries param.Field[bool]Optional

Body param: When true, omits time-series data from the response and returns only aggregated values. Reduces response size when series are not needed.

Limit param.Field[float64]Optional

Body param: Maximum number of events to return when view is ‘events’. Also controls the number of group-by rows when view is ‘calculations’.

maximum2000
Offset param.Field[string]Optional

Body param: Cursor for pagination in event, trace, and invocation views. Pass the $metadata.id of the last returned item to fetch the next page.

OffsetBy param.Field[float64]Optional

Body param: Numeric offset for paginating grouped/pattern results (top-N lists). Use together with limit. Not used by cursor-based pagination.

OffsetDirection param.Field[string]Optional

Body param: Pagination direction: ‘next’ for forward, ‘prev’ for backward.

Parameters param.Field[ObservabilitySharedQueryNewParamsParameters]Optional

Body param: Query parameters defining what data to retrieve — filters, calculations, group-bys, and ordering. In practice this should always be provided for ad-hoc queries. Only omit when executing a previously saved query by queryId. Use the keys and values endpoints to discover available fields before building filters.

Calculations []ObservabilitySharedQueryNewParamsParametersCalculationOptional

Aggregation calculations to compute (e.g. count, avg, p99). Each calculation produces aggregate values and optional time-series data.

Operator ObservabilitySharedQueryNewParamsParametersCalculationsOperator

Aggregation operator to apply. Examples: count, avg, sum, min, max, median, p90, p95, p99, uniq, stddev, variance.

One of the following:
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorUniq ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "uniq"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorCount ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "count"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorMax ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "max"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorMin ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "min"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorSum ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "sum"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorAvg ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "avg"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorMedian ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "median"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP001 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p001"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP01 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p01"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP05 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p05"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP10 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p10"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP25 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p25"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP75 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p75"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP90 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p90"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP95 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p95"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP99 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p99"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP999 ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "p999"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorStddev ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "stddev"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorVariance ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "variance"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorCountDistinct ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "COUNT_DISTINCT"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorCountUppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "COUNT"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorMaxUppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "MAX"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorMinUppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "MIN"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorSumUppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "SUM"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorAvgUppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "AVG"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorMedianUppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "MEDIAN"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP001Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P001"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP01Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P01"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP05Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P05"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP10Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P10"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP25Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P25"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP75Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P75"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP90Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P90"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP95Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P95"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP99Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P99"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorP999Uppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "P999"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorStddevUppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "STDDEV"
const ObservabilitySharedQueryNewParamsParametersCalculationsOperatorVarianceUppercase ObservabilitySharedQueryNewParamsParametersCalculationsOperator = "VARIANCE"
Alias stringOptional

Custom label for this calculation in the results. Useful for distinguishing multiple calculations.

Key stringOptional

Field name to calculate over. Must exist in the data — verify with the keys endpoint. Omit for operators that don’t require a key (e.g. count).

KeyType ObservabilitySharedQueryNewParamsParametersCalculationsKeyTypeOptional

Data type of the key. Required when key is provided to ensure correct aggregation.

One of the following:
const ObservabilitySharedQueryNewParamsParametersCalculationsKeyTypeString ObservabilitySharedQueryNewParamsParametersCalculationsKeyType = "string"
const ObservabilitySharedQueryNewParamsParametersCalculationsKeyTypeNumber ObservabilitySharedQueryNewParamsParametersCalculationsKeyType = "number"
const ObservabilitySharedQueryNewParamsParametersCalculationsKeyTypeBoolean ObservabilitySharedQueryNewParamsParametersCalculationsKeyType = "boolean"
Datasets []stringOptional

Datasets to query. Leave empty to query all available datasets.

FilterCombination ObservabilitySharedQueryNewParamsParametersFilterCombinationOptional

Logical operator for combining top-level filters: ‘and’ (all must match) or ‘or’ (any must match). Defaults to ‘and’.

One of the following:
const ObservabilitySharedQueryNewParamsParametersFilterCombinationAnd ObservabilitySharedQueryNewParamsParametersFilterCombination = "and"
const ObservabilitySharedQueryNewParamsParametersFilterCombinationOr ObservabilitySharedQueryNewParamsParametersFilterCombination = "or"
const ObservabilitySharedQueryNewParamsParametersFilterCombinationAndUppercase ObservabilitySharedQueryNewParamsParametersFilterCombination = "AND"
const ObservabilitySharedQueryNewParamsParametersFilterCombinationOrUppercase ObservabilitySharedQueryNewParamsParametersFilterCombination = "OR"
Filters []ObservabilitySharedQueryNewParamsParametersFilterOptional

Filters to narrow query results. Use the keys and values endpoints to discover available fields before building filters. Supports nested groups via kind: ‘group’. Maximum nesting depth is 4.

One of the following:
type ObservabilitySharedQueryNewParamsParametersFiltersObject struct{…}
FilterCombination ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombination
One of the following:
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombinationAnd ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombination = "and"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombinationOr ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombination = "or"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombinationAndUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombination = "AND"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombinationOrUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFilterCombination = "OR"
Filters []ObservabilitySharedQueryNewParamsParametersFiltersObjectFilter
One of the following:
type ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObject struct{…}
FilterCombination ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombination
One of the following:
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombinationAnd ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombination = "and"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombinationOr ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombination = "or"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombinationAndUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombination = "AND"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombinationOrUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectFilterCombination = "OR"
Filters []unknown
Kind ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersObjectKind
type ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeaf struct{…}

A filter condition applied to query results. Use the keys and values endpoints to discover available fields and their values before constructing filters.

Key string

Filter field name. Use verified keys from previous query results or the keys endpoint. Common keys include $metadata.service, $metadata.origin, $metadata.trigger, $metadata.message, and $metadata.error.

Operation ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation

Comparison operator. String operators: includes, not_includes, starts_with, ends_with, regex. Existence: exists, is_null. Set membership: in, not_in (comma-separated values). Numeric: eq, neq, gt, gte, lt, lte.

One of the following:
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationIncludes ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "includes"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationNotIncludes ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "not_includes"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationStartsWith ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "starts_with"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationEndsWith ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "ends_with"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationRegex ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "regex"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationExists ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "exists"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationIsNull ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "is_null"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationIn ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "in"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationNotIn ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "not_in"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationEq ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "eq"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationNeq ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "neq"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationGt ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "gt"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationGte ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "gte"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationLt ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "lt"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationLte ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "lte"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationEquals ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "="
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationNotEquals ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "!="
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationGreater ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = ">"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationGreaterOrEquals ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = ">="
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationLess ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "<"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationLessOrEquals ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "<="
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationIncludesUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "INCLUDES"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationDoesNotInclude ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "DOES_NOT_INCLUDE"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationMatchRegex ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "MATCH_REGEX"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationExistsUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "EXISTS"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationDoesNotExist ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "DOES_NOT_EXIST"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationInUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "IN"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationNotInUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "NOT_IN"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationStartsWithUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "STARTS_WITH"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperationEndsWithUppercase ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafOperation = "ENDS_WITH"
Type ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafType

Data type of the filter field. Must match the actual type of the key being filtered.

One of the following:
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafTypeString ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafType = "string"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafTypeNumber ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafType = "number"
const ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafTypeBoolean ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafType = "boolean"
Kind ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafKindOptional

Discriminator for leaf filter nodes. Always ‘filter’ when present; may be omitted.

Value ObservabilitySharedQueryNewParamsParametersFiltersObjectFiltersWorkersObservabilityFilterLeafValueUnionOptional

Comparison value. Must match actual values in your data — verify with the values endpoint. Ensure the value type (string/number/boolean) matches the field type. String comparisons are case-sensitive. Regex uses RE2 syntax (no lookaheads/lookbehinds).

One of the following:
UnionString
UnionFloat
UnionBool
Kind ObservabilitySharedQueryNewParamsParametersFiltersObjectKind
type ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeaf struct{…}

A filter condition applied to query results. Use the keys and values endpoints to discover available fields and their values before constructing filters.

Key string

Filter field name. Use verified keys from previous query results or the keys endpoint. Common keys include $metadata.service, $metadata.origin, $metadata.trigger, $metadata.message, and $metadata.error.

Operation ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation

Comparison operator. String operators: includes, not_includes, starts_with, ends_with, regex. Existence: exists, is_null. Set membership: in, not_in (comma-separated values). Numeric: eq, neq, gt, gte, lt, lte.

One of the following:
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationIncludes ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "includes"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationNotIncludes ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "not_includes"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationStartsWith ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "starts_with"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationEndsWith ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "ends_with"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationRegex ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "regex"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationExists ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "exists"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationIsNull ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "is_null"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationIn ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "in"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationNotIn ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "not_in"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationEq ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "eq"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationNeq ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "neq"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationGt ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "gt"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationGte ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "gte"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationLt ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "lt"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationLte ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "lte"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationEquals ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "="
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationNotEquals ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "!="
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationGreater ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = ">"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationGreaterOrEquals ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = ">="
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationLess ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "<"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationLessOrEquals ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "<="
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationIncludesUppercase ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "INCLUDES"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationDoesNotInclude ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "DOES_NOT_INCLUDE"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationMatchRegex ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "MATCH_REGEX"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationExistsUppercase ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "EXISTS"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationDoesNotExist ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "DOES_NOT_EXIST"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationInUppercase ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "IN"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationNotInUppercase ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "NOT_IN"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationStartsWithUppercase ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "STARTS_WITH"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperationEndsWithUppercase ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafOperation = "ENDS_WITH"
Type ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafType

Data type of the filter field. Must match the actual type of the key being filtered.

One of the following:
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafTypeString ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafType = "string"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafTypeNumber ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafType = "number"
const ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafTypeBoolean ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafType = "boolean"
Kind ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafKindOptional

Discriminator for leaf filter nodes. Always ‘filter’ when present; may be omitted.

Value ObservabilitySharedQueryNewParamsParametersFiltersWorkersObservabilityFilterLeafValueUnionOptional

Comparison value. Must match actual values in your data — verify with the values endpoint. Ensure the value type (string/number/boolean) matches the field type. String comparisons are case-sensitive. Regex uses RE2 syntax (no lookaheads/lookbehinds).

One of the following:
UnionString
UnionFloat
UnionBool
GroupBys []ObservabilitySharedQueryNewParamsParametersGroupByOptional

Fields to group calculation results by. Only applicable when the query view is ‘calculations’. Produces per-group aggregate values.

Type ObservabilitySharedQueryNewParamsParametersGroupBysType

Data type of the group-by field.

One of the following:
const ObservabilitySharedQueryNewParamsParametersGroupBysTypeString ObservabilitySharedQueryNewParamsParametersGroupBysType = "string"
const ObservabilitySharedQueryNewParamsParametersGroupBysTypeNumber ObservabilitySharedQueryNewParamsParametersGroupBysType = "number"
const ObservabilitySharedQueryNewParamsParametersGroupBysTypeBoolean ObservabilitySharedQueryNewParamsParametersGroupBysType = "boolean"
Value string

Field name to group results by (e.g. $metadata.service, $metadata.statusCode).

Havings []ObservabilitySharedQueryNewParamsParametersHavingOptional

Post-aggregation filters applied to calculation results. Use to filter groups after aggregation (e.g. only groups where count > 100).

Key string

Calculation alias or operator to filter on after aggregation.

Operation ObservabilitySharedQueryNewParamsParametersHavingsOperation

Numeric comparison operator: eq, neq, gt, gte, lt, lte.

One of the following:
const ObservabilitySharedQueryNewParamsParametersHavingsOperationEq ObservabilitySharedQueryNewParamsParametersHavingsOperation = "eq"
const ObservabilitySharedQueryNewParamsParametersHavingsOperationNeq ObservabilitySharedQueryNewParamsParametersHavingsOperation = "neq"
const ObservabilitySharedQueryNewParamsParametersHavingsOperationGt ObservabilitySharedQueryNewParamsParametersHavingsOperation = "gt"
const ObservabilitySharedQueryNewParamsParametersHavingsOperationGte ObservabilitySharedQueryNewParamsParametersHavingsOperation = "gte"
const ObservabilitySharedQueryNewParamsParametersHavingsOperationLt ObservabilitySharedQueryNewParamsParametersHavingsOperation = "lt"
const ObservabilitySharedQueryNewParamsParametersHavingsOperationLte ObservabilitySharedQueryNewParamsParametersHavingsOperation = "lte"
Value float64

Threshold value to compare the calculation result against.

Limit int64Optional

Maximum number of group-by rows to return in calculation results. A value of 10 is a sensible default for most use cases.

maximum2000
minimum0
Needle ObservabilitySharedQueryNewParamsParametersNeedleOptional

Full-text search expression applied across all event fields. Matches events containing the specified text.

Value ObservabilitySharedQueryNewParamsParametersNeedleValueUnion

The text or pattern to search for.

maxLength1000
One of the following:
UnionString
UnionFloat
UnionBool
IsRegex boolOptional

When true, treats the value as a regular expression (RE2 syntax).

MatchCase boolOptional

When true, performs a case-sensitive search. Defaults to case-insensitive.

OrderBy ObservabilitySharedQueryNewParamsParametersOrderByOptional

Ordering for grouped calculation results. Only effective when a group-by is present.

Value string

Alias of the calculation to order results by. Must match the alias (or operator) of a calculation in the query.

Order ObservabilitySharedQueryNewParamsParametersOrderByOrderOptional

Sort direction: ‘asc’ for ascending, ‘desc’ for descending.

One of the following:
const ObservabilitySharedQueryNewParamsParametersOrderByOrderAsc ObservabilitySharedQueryNewParamsParametersOrderByOrder = "asc"
const ObservabilitySharedQueryNewParamsParametersOrderByOrderDesc ObservabilitySharedQueryNewParamsParametersOrderByOrder = "desc"
View param.Field[ObservabilitySharedQueryNewParamsView]Optional

Body param: Controls the shape of the response. ‘events’: individual log lines matching the query. ‘calculations’: aggregated metrics (count, avg, p99, etc.) with optional group-by breakdowns and time-series. ‘invocations’: events grouped by request ID. ‘traces’: distributed trace summaries. ‘agents’: Durable Object agent summaries.

const ObservabilitySharedQueryNewParamsViewTraces ObservabilitySharedQueryNewParamsView = "traces"
const ObservabilitySharedQueryNewParamsViewEvents ObservabilitySharedQueryNewParamsView = "events"
const ObservabilitySharedQueryNewParamsViewCalculations ObservabilitySharedQueryNewParamsView = "calculations"
const ObservabilitySharedQueryNewParamsViewInvocations ObservabilitySharedQueryNewParamsView = "invocations"
const ObservabilitySharedQueryNewParamsViewRequests ObservabilitySharedQueryNewParamsView = "requests"
const ObservabilitySharedQueryNewParamsViewAgents ObservabilitySharedQueryNewParamsView = "agents"
ReturnsExpand Collapse
type ObservabilitySharedQueryNewResponse struct{…}
ID string

Specify the ID of the shared query.

Create a sharable link to a query result

package main

import (
  "context"
  "fmt"

  "github.com/stainless-sdks/cloudflare-go"
  "github.com/stainless-sdks/cloudflare-go/option"
  "github.com/stainless-sdks/cloudflare-go/workers"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
    option.WithAPIEmail("user@example.com"),
  )
  sharedQuery, err := client.Workers.Observability.SharedQueries.New(context.TODO(), workers.ObservabilitySharedQueryNewParams{
    AccountID: cloudflare.F("account_id"),
    QueryID: cloudflare.F("queryId"),
    Timeframe: cloudflare.F(workers.ObservabilitySharedQueryNewParamsTimeframe{
      From: cloudflare.F(0.000000),
      To: cloudflare.F(0.000000),
    }),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", sharedQuery.ID)
}
{
  "errors": [
    {
      "message": "message"
    }
  ],
  "messages": [
    {
      "message": "Successful request"
    }
  ],
  "result": {
    "id": "id"
  },
  "success": true
}
Returns Examples
{
  "errors": [
    {
      "message": "message"
    }
  ],
  "messages": [
    {
      "message": "Successful request"
    }
  ],
  "result": {
    "id": "id"
  },
  "success": true
}