Method: properties.batchRunPivotReports

Returns multiple pivot reports in a batch. All reports must be for the same GA4 Property.

HTTP request

POST https://analyticsdata.googleapis.com/v1beta/{property=properties/*}:batchRunPivotReports

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
property

string

A Google Analytics GA4 property identifier whose events are tracked. Specified in the URL path and not the body. To learn more, see where to find your Property ID. This property must be specified for the batch. The property within RunPivotReportRequest may either be unspecified or consistent with this property.

Example: properties/1234

Request body

The request body contains data with the following structure:

JSON representation
{
  "requests": [
    {
      object (RunPivotReportRequest)
    }
  ]
}
Fields
requests[]

object (RunPivotReportRequest)

Individual requests. Each request has a separate pivot report response. Each batch request is allowed up to 5 requests.

Response body

The batch response containing multiple pivot reports.

If successful, the response body contains data with the following structure:

JSON representation
{
  "pivotReports": [
    {
      object (RunPivotReportResponse)
    }
  ],
  "kind": string
}
Fields
pivotReports[]

object (RunPivotReportResponse)

Individual responses. Each response has a separate pivot report request.

kind

string

Identifies what kind of resource this message is. This kind is always the fixed string "analyticsData#batchRunPivotReports". Useful to distinguish between response types in JSON.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/analytics.readonly
  • https://www.googleapis.com/auth/analytics

RunPivotReportRequest

The request to generate a pivot report.

JSON representation
{
  "property": string,
  "dimensions": [
    {
      object (Dimension)
    }
  ],
  "metrics": [
    {
      object (Metric)
    }
  ],
  "dateRanges": [
    {
      object (DateRange)
    }
  ],
  "pivots": [
    {
      object (Pivot)
    }
  ],
  "dimensionFilter": {
    object (FilterExpression)
  },
  "metricFilter": {
    object (FilterExpression)
  },
  "currencyCode": string,
  "cohortSpec": {
    object (CohortSpec)
  },
  "keepEmptyRows": boolean,
  "returnPropertyQuota": boolean,
  "comparisons": [
    {
      object (Comparison)
    }
  ]
}
Fields
property

string

A Google Analytics GA4 property identifier whose events are tracked. Specified in the URL path and not the body. To learn more, see where to find your Property ID. Within a batch request, this property should either be unspecified or consistent with the batch-level property.

Example: properties/1234

dimensions[]

object (Dimension)

The dimensions requested. All defined dimensions must be used by one of the following: dimensionExpression, dimensionFilter, pivots, orderBys.

metrics[]

object (Metric)

The metrics requested, at least one metric needs to be specified. All defined metrics must be used by one of the following: metric_expression, metricFilter, orderBys.

dateRanges[]

object (DateRange)

The date range to retrieve event data for the report. If multiple date ranges are specified, event data from each date range is used in the report. A special dimension with field name "dateRange" can be included in a Pivot's field names; if included, the report compares between date ranges. In a cohort request, this dateRanges must be unspecified.

pivots[]

object (Pivot)

Describes the visual format of the report's dimensions in columns or rows. The union of the fieldNames (dimension names) in all pivots must be a subset of dimension names defined in Dimensions. No two pivots can share a dimension. A dimension is only visible if it appears in a pivot.

dimensionFilter

object (FilterExpression)

The filter clause of dimensions. Dimensions must be requested to be used in this filter. Metrics cannot be used in this filter.

metricFilter

object (FilterExpression)

The filter clause of metrics. Applied at post aggregation phase, similar to SQL having-clause. Metrics must be requested to be used in this filter. Dimensions cannot be used in this filter.

currencyCode

string

A currency code in ISO4217 format, such as "AED", "USD", "JPY". If the field is empty, the report uses the property's default currency.

cohortSpec

object (CohortSpec)

Cohort group associated with this request. If there is a cohort group in the request the 'cohort' dimension must be present.

keepEmptyRows

boolean

If false or unspecified, each row with all metrics equal to 0 will not be returned. If true, these rows will be returned if they are not separately removed by a filter.

Regardless of this keepEmptyRows setting, only data recorded by the Google Analytics (GA4) property can be displayed in a report.

For example if a property never logs a purchase event, then a query for the eventName dimension and eventCount metric will not have a row eventName: "purchase" and eventCount: 0.

returnPropertyQuota

boolean

Toggles whether to return the current state of this Analytics Property's quota. Quota is returned in PropertyQuota.

comparisons[]

object (Comparison)

Optional. The configuration of comparisons requested and displayed. The request requires both a comparisons field and a comparisons dimension to receive a comparison column in the response.