# google-analytics.reports.batch

Up to five reports on one property in one request

> Returns multiple reports in a batch. All reports must be for the same Google Analytics property.

Page: https://telipot.com/catalog/tasks/google-analytics.reports.batch · Markdown: https://telipot.com/catalog/tasks/google-analytics.reports.batch/md · JSON: https://telipot.com/catalog/tasks/google-analytics.reports.batch/json

| Field | Value |
| --- | --- |
| provider | [Google Analytics 4](https://telipot.com/catalog/providers/google-analytics) `google-analytics` |
| capability | [`analytics.reports.batch`](https://telipot.com/catalog/capabilities/analytics.reports.batch) |
| kind | data |
| tier | core |
| price | Free (Free from the tool) |
| identity | Company account |
| auth | `oauth · OAuth 2.0 with PKCE` |
| scope | own_account |
| principal | organization |
| required_scopes | `analytics.readonly` |
| retention | standard |
| route | `POST https://analyticsdata.googleapis.com/v1beta/properties/{propertyId}:batchRunReports` |
| verification | Not verified yet. Not checked yet. We test with a real request before we mark it. |
| status | live |
| docs | https://developers.google.com/analytics/devguides/reporting/data/v1/rest/v1beta/properties/batchRunReports |

## Preview the price · nothing runs

```bash
telipot run google-analytics.reports.batch \
  --input-json '{"propertyId":"123456789","requests":[{"dateRanges":[{"startDate":"2026-09-01","endDate":"2026-09-30"}],"dimensions":[{"name":"country"}],"metrics":[{"name":"activeUsers"}]}]}' \
  --quote
```

## Run it

```bash
telipot run google-analytics.reports.batch \
  --input-json '{"propertyId":"123456789","requests":[{"dateRanges":[{"startDate":"2026-09-01","endDate":"2026-09-30"}],"dimensions":[{"name":"country"}],"metrics":[{"name":"activeUsers"}]}]}'
```

```bash
curl https://api.telipot.com/v1/tasks/google-analytics.reports.batch/run \
  -H "Authorization: Bearer $TELIPOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"propertyId":"123456789","requests":[{"dateRanges":[{"startDate":"2026-09-01","endDate":"2026-09-30"}],"dimensions":[{"name":"country"}],"metrics":[{"name":"activeUsers"}]}]}'
```

## Input

| Field | In | Type | Required | Constraints | Note |
| --- | --- | --- | --- | --- | --- |
| `propertyId` | pathParams | string | yes |  | The numeric id of a GA4 property, as google-analytics.accounts.summaries returns it after properties/ |
| `requests` | body | array | yes | at most 5 | Up to 5 report requests, each the body of google-analytics.reports.run; the property is the one in the path |

## Input schema

```json
{
  "type": "object",
  "properties": {
    "propertyId": {
      "type": "string",
      "description": "The numeric id of a GA4 property, as google-analytics.accounts.summaries returns it after properties/",
      "examples": [
        "123456789"
      ]
    },
    "requests": {
      "type": "array",
      "description": "Up to 5 report requests, each the body of google-analytics.reports.run; the property is the one in the path",
      "examples": [
        [
          {
            "dateRanges": [
              {
                "startDate": "2026-09-01",
                "endDate": "2026-09-30"
              }
            ],
            "dimensions": [
              {
                "name": "country"
              }
            ],
            "metrics": [
              {
                "name": "activeUsers"
              }
            ]
          }
        ]
      ],
      "maxItems": 5
    }
  },
  "required": [
    "propertyId",
    "requests"
  ],
  "additionalProperties": false
}
```

## Output schema

```json
{
  "type": "object",
  "properties": {
    "reports": {
      "type": "array",
      "description": "One report per request, in order, each shaped as the answer of google-analytics.reports.run",
      "items": {
        "type": "object",
        "properties": {
          "dimensionHeaders": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                }
              }
            }
          },
          "metricHeaders": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "type": {
                  "type": "string"
                }
              }
            }
          },
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "dimensionValues": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "string"
                      }
                    }
                  }
                },
                "metricValues": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "string"
                      }
                    }
                  }
                }
              }
            }
          },
          "rowCount": {
            "type": "integer"
          },
          "metadata": {
            "type": "object"
          },
          "kind": {
            "type": "string"
          }
        }
      }
    },
    "kind": {
      "type": "string"
    }
  }
}
```

## Example response

From `examples/google-analytics.reports.batch.json`.

```json
{
  "reports": [
    {
      "dimensionHeaders": [
        {
          "name": "country"
        }
      ],
      "metricHeaders": [
        {
          "name": "activeUsers",
          "type": "TYPE_INTEGER"
        }
      ],
      "rows": [
        {
          "dimensionValues": [
            {
              "value": "United States"
            }
          ],
          "metricValues": [
            {
              "value": "1842"
            }
          ]
        },
        {
          "dimensionValues": [
            {
              "value": "Germany"
            }
          ],
          "metricValues": [
            {
              "value": "311"
            }
          ]
        }
      ],
      "rowCount": 37,
      "metadata": {
        "currencyCode": "USD",
        "timeZone": "America/Los_Angeles"
      },
      "kind": "analyticsData#runReport"
    }
  ],
  "kind": "analyticsData#batchRunReports"
}
```
