---
title: "Compute scalar analytics"
method: POST
path: "/api/v2/product-analytics/analytics/scalar"
tags: ["Product Analytics"]
---

# Compute scalar analytics

`POST /api/v2/product-analytics/analytics/scalar`

## Request

- Base URL: `https://api.datadoghq.com`
- URL: `https://api.datadoghq.com/api/v2/product-analytics/analytics/scalar`
- Auth: API key in header `DD-API-KEY` and API key in header `DD-APPLICATION-KEY`

Compute scalar analytics results for Product Analytics data.
Returns aggregated values (counts, averages, percentiles) optionally grouped by facets.

## Request body

- ProductAnalyticsAnalyticsRequest: Request for computing analytics results (scalar or timeseries).
  - `data` ProductAnalyticsAnalyticsRequestData, required: Data object for an analytics request.
    - `attributes` ProductAnalyticsAnalyticsRequestAttributes, required: Attributes for an analytics request.
      - `enforced_execution_type` 'simple' | 'background' | 'trino-multistep' | 'materialized-view': Override the query execution strategy.
      - `from` integer, required: Start time in epoch milliseconds. Must be less than `to`.
      - `query` ProductAnalyticsAnalyticsQuery, required: The analytics query definition containing a base query, compute rule, and optional grouping.
        - `audience_filters` ProductAnalyticsAudienceFilters: Audience filter definitions for targeting specific user segments.
          - `accounts` ProductAnalyticsAudienceAccountSubquery[]: Account audience queries.
            - `name` string, required: 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` ProductAnalyticsAudienceSegmentSubquery[]: Segment audience queries.
            - `name` string, required: Name of this query, referenced in the formula.
            - `segment_id` string, uuid, required: UUID of the segment to filter by.
          - `users` ProductAnalyticsAudienceUserSubquery[]: User audience queries.
            - `name` string, required: Name of this query, referenced in the formula.
            - `query` string: Search query for filtering users.
        - `compute` ProductAnalyticsCompute, required: A compute rule for aggregating data.
          - `aggregation` string, required: The aggregation function (count, cardinality, avg, sum, min, max, etc.).
          - `interval` integer: Time bucket size in milliseconds. Required for timeseries queries.
          - `metric` string: The metric to aggregate on. Required for non-count aggregations.
        - `group_by` ProductAnalyticsGroupBy[]: Group-by rules for segmenting results.
          - `facet` string, required: The facet to group by.
          - `limit` integer: Maximum number of groups to return.
          - `should_exclude_missing` boolean: Exclude results with missing facet values.
          - `sort` ProductAnalyticsGroupBySort: Sort configuration for group-by results.
            - `aggregation` string: The aggregation function to sort by.
            - `metric` string: The metric to sort by.
            - `order` 'asc' | 'desc': Direction of sort.
          - `source` string: The source for audience-filter-based group-by.
        - `indexes` string[]: Restrict the query to specific indexes. Max 1 entry.
        - `query` union, required: A query definition discriminated by the `data_source` field. Use `product_analytics` for standard event queries, or `product_analytics_occurrence` for occurrence-filtered queries.
          - ProductAnalyticsEventQuery: A standard Product Analytics event query.
            - `data_source` 'product_analytics', required: The data source identifier.
            - `search` ProductAnalyticsEventSearch, required: Search parameters for an event query.
              - …
          - ProductAnalyticsOccurrenceQuery: A Product Analytics occurrence-filtered query.
            - `data_source` 'product_analytics_occurrence', required: The data source identifier for occurrence queries.
            - `search` ProductAnalyticsOccurrenceSearch, required: Search parameters for an occurrence query.
              - …
      - `request_id` string: Optional request ID for multi-step query continuation.
      - `to` integer, required: End time in epoch milliseconds.
    - `type` 'formula_analytics_extended_request', required: The resource type for analytics requests.

## Response `200`

OK

- ProductAnalyticsScalarResponse: Response for a scalar analytics query.
  - `data` ProductAnalyticsScalarResponseData: Data object for a scalar response.
    - `attributes` ProductAnalyticsScalarResponseAttributes: Attributes of a scalar analytics response, containing the result columns.
      - `columns` ProductAnalyticsScalarColumn[]: The list of result columns, each containing values and metadata.
        - `meta` ProductAnalyticsScalarColumnMeta: Metadata associated with a scalar response column, including optional unit information.
          - `unit` ProductAnalyticsUnit[], nullable: Unit definitions for the column values, if applicable.
            - `family` string: The unit family (e.g., time, bytes).
            - `id` integer: Numeric identifier for the unit.
            - `name` string: The full name of the unit (e.g., nanosecond).
            - `plural` string: Plural form of the unit name (e.g., nanoseconds).
            - `scale_factor` number, double: Conversion factor relative to the base unit of the family.
            - `short_name` string: Abbreviated unit name (e.g., ns).
        - `name` string: Column name (facet name for group-by, or "query").
        - `type` 'number' | 'group': Column type.
        - `values` unknown[]: Column values.
          - unknown
    - `id` string: Unique identifier for this response data object.
    - `type` 'scalar_response': The resource type identifier for a scalar analytics response.
  - `meta` ProductAnalyticsResponseMeta: Metadata for a Product Analytics query response.
    - `request_id` string: Unique identifier for the request, used for multi-step query continuation.
    - `status` 'done' | 'running' | 'timeout': The execution status of a Product Analytics query.

## Other responses

- `400`: Bad Request
- `403`: Not Authorized
- `429`: Too many requests

---

[API](https://skmtc.dev/datadog/apis/datadog-api-v2-collection.md) - [All operations](https://skmtc.dev/datadog/apis/datadog-api-v2-collection/llms.txt) - [OpenAPI document](https://skmtc.dev/datadog/apis/datadog-api-v2-collection/revisions/da68bf029e4c?raw)
