Compute timeseries analytics results for Product Analytics data.
Returns time-bucketed values for charts and trend analysis.
The compute.interval field (milliseconds) is required for time bucketing.
This endpoint requires the rum_apps_read permission.
Override the query execution strategy.
Allowed enum values: simple,background,trino-multistep,materialized-view
from [required]
int64
Start time in epoch milliseconds. Must be less than to.
query [required]
object
The analytics query definition containing a base query, compute rule, and optional grouping.
audience_filters
object
Audience filter definitions for targeting specific user segments.
accounts
[object]
Account audience queries.
name [required]
string
Name of this query, referenced in the formula.
query
string
Search query for filtering accounts.
formula
string
Boolean formula combining audience queries by name.
segments
[object]
Segment audience queries.
name [required]
string
Name of this query, referenced in the formula.
segment_id [required]
uuid
UUID of the segment to filter by.
users
[object]
User audience queries.
name [required]
string
Name of this query, referenced in the formula.
query
string
Search query for filtering users.
compute [required]
object
A compute rule for aggregating data.
aggregation [required]
string
The aggregation function (count, cardinality, avg, sum, min, max, etc.).
interval
int64
Time bucket size in milliseconds. Required for timeseries queries.
metric
string
The metric to aggregate on. Required for non-count aggregations.
group_by
[object]
Group-by rules for segmenting results.
facet [required]
string
The facet to group by.
limit
int64
Maximum number of groups to return.
should_exclude_missing
boolean
Exclude results with missing facet values.
sort
object
Sort configuration for group-by results.
aggregation
string
The aggregation function to sort by.
metric
string
The metric to sort by.
order
enum
Direction of sort.
Allowed enum values: asc,desc
default: desc
source
string
The source for audience-filter-based group-by.
indexes
[string]
Restrict the query to specific indexes. Max 1 entry.
query [required]
<oneOf>
A query definition discriminated by the data_source field.
Use product_analytics for standard event queries, or
product_analytics_occurrence for occurrence-filtered queries.
Option 1
object
A standard Product Analytics event query.
data_source [required]
enum
The data source identifier.
Allowed enum values: product_analytics
search [required]
object
Search parameters for an event query.
query
string
The search query using Datadog search syntax.
Option 2
object
A Product Analytics occurrence-filtered query.
data_source [required]
enum
The data source identifier for occurrence queries.
Allowed enum values: product_analytics_occurrence
search [required]
object
Search parameters for an occurrence query.
occurrences
object
Filter for occurrence-based queries.
meta
object
Additional metadata.
<any-key>
string
operator [required]
string
Comparison operator (=, >=, <=, >, <).
value [required]
string
The occurrence count threshold as a string.
query
string
The search query using Datadog search syntax.
request_id
string
Optional request ID for multi-step query continuation.
to [required]
int64
End time in epoch milliseconds.
type [required]
enum
The resource type for analytics requests.
Allowed enum values: formula_analytics_extended_request
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<API-KEY>"DD_APP_KEY="<APP-KEY>"cargo run
/**
* Compute timeseries analytics returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.ProductAnalyticsApi(configuration);constparams: v2.ProductAnalyticsApiQueryProductAnalyticsTimeseriesRequest={body:{data:{attributes:{from:1771232048460,query:{compute:{aggregation:"count",},query:{dataSource:"product_analytics",search:{query:"@type:view",},},},to: 1771836848262,},type:"formula_analytics_extended_request",},},};apiInstance.queryProductAnalyticsTimeseries(params).then((data: v2.ProductAnalyticsTimeseriesResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));