# Google Analytics

Google Analytics tracks and reports website traffic, user behavior, and conversion data, enabling marketers to optimize online performance and customer journeys

- **Category:** analytics
- **Auth:** OAUTH2
- **Composio Managed App Available?** Yes
- **Tools:** 69
- **Triggers:** 0
- **Slug:** `GOOGLE_ANALYTICS`
- **Version:** 20260316_00

## Tools

### Archive Custom Dimension

**Slug:** `GOOGLE_ANALYTICS_ARCHIVE_CUSTOM_DIMENSION`

Tool to archive a CustomDimension on a property. Use when you need to remove a custom dimension from active use without permanently deleting it. Archived dimensions cannot be used in new reports.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the CustomDimension to archive. Must be in the exact format: properties/{property_id}/customDimensions/{dimension_id} where property_id and dimension_id are numeric identifiers. IMPORTANT: Must start with 'properties/' prefix, contain '/customDimensions/' in the middle, have no trailing slashes, and no additional path segments. Valid example: 'properties/489591273/customDimensions/13661259421'. Invalid examples: '489591273/13661259421' (missing prefix), 'properties/489591273/customDimensions/13661259421/' (trailing slash), 'properties/489591273/customDimensions/13661259421/extra' (extra segments) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Batch Run Pivot Reports

**Slug:** `GOOGLE_ANALYTICS_BATCH_RUN_PIVOT_REPORTS`

Tool to return multiple pivot reports in a batch for a GA4 property. Use when you need to fetch multiple pivot table reports with multi-dimensional analysis in a single request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `property` | string | Yes | Required. The GA4 property resource name. Format: properties/{property_id} |
| `requests` | array | Yes | Required. Up to 5 individual RunPivotReportRequest objects. Each request can have dimensions, metrics, dateRanges, pivots, dimensionFilter, metricFilter, currencyCode, cohortSpec, keepEmptyRows, returnPropertyQuota, and comparisons fields. CRITICAL CONSTRAINT: Every dimension defined in 'dimensions' MUST be used in at least one of: pivots (fieldNames), dimensionFilter, or orderBys. Dimensions not used anywhere will cause a 400 error. The only exception is 'dateRange' dimensions. Additionally, all fieldNames in pivots must reference dimensions defined in the request's 'dimensions' array, and no two pivots can share the same dimension. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Batch Run Reports

**Slug:** `GOOGLE_ANALYTICS_BATCH_RUN_REPORTS`

Tool to return multiple analytics data reports in a batch. Use when you need to fetch multiple reports for one GA4 property in a single request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `property` | string | Yes | Required. The property resource name. Format: properties/{property_id} |
| `requests` | array | Yes | Required. Up to 5 individual RunReportRequest objects (minimum 1, maximum 5). CRITICAL: Non-cohort requests MUST contain 'dateRanges' with at least one date range. Cohort requests (containing 'cohortSpec') must NOT include 'dateRanges'. Each request can include: dateRanges (REQUIRED for non-cohort requests, FORBIDDEN for cohort requests - list of {startDate: string, endDate: string}), dimensions (list of {name: string}), metrics (list of {name: string}), dimensionFilter (FilterExpression: use {andGroup: {expressions: [...]}} for AND logic, {orGroup: {expressions: [...]}} for OR logic, {notExpression: {...}} for negation, or {filter: {fieldName: '...', ...}} for simple field filters. Do NOT nest as {filter: {andGroup: {...}}}), metricFilter (FilterExpression: same structure as dimensionFilter), offset (int), limit (int), metricAggregations (list of TOTAL/MINIMUM/MAXIMUM/COUNT), orderBys (list of ordering objects), currencyCode (string), cohortSpec (object - when present, dateRanges must be omitted), keepEmptyRows (boolean), returnPropertyQuota (boolean), comparisons (list of comparison objects). NOTE: Do NOT include 'pivots' field - use batchRunPivotReports action for pivot reports. |
| `unwrapped_filters` | array | No | Internal field to track which filters were unwrapped during validation |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check Compatibility

**Slug:** `GOOGLE_ANALYTICS_CHECK_COMPATIBILITY`

Tool to list dimensions and metrics compatible with a GA4 report request. Use when you need to validate compatibility of chosen dimensions or metrics before running a report.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `metrics` | array | No | Optional. List of metrics to check compatibility for. Maximum of 10 metrics allowed per request. |
| `property` | string | Yes | Required. GA4 property resource name. Format: properties/{property_id}. |
| `dimensions` | array | No | Optional. List of dimensions to check compatibility for. |
| `metricFilter` | object | No | Optional. A FilterExpression for metrics; must follow GA4 FilterExpression JSON schema. |
| `dimensionFilter` | object | No | Optional. A FilterExpression for dimensions; must follow GA4 FilterExpression JSON schema. |
| `compatibilityFilter` | string ("COMPATIBILITY_UNSPECIFIED" | "COMPATIBLE" | "INCOMPATIBLE") | No | Compatibility status for dimensions or metrics per Google Analytics Data API v1beta. Valid values: COMPATIBILITY_UNSPECIFIED, COMPATIBLE, INCOMPATIBLE. Note: Values like 'REPORT_COMPATIBLE' are NOT valid - use 'COMPATIBLE' instead. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Audience Export

**Slug:** `GOOGLE_ANALYTICS_CREATE_AUDIENCE_EXPORT`

Tool to create an audience export for Google Analytics. Use when you need to export a snapshot of users in an audience at a specific point in time. This initiates a long-running asynchronous request that returns an operation resource name immediately. The export begins in CREATING state with rowCount=0; the operation must complete before export data is accessible for querying.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Parent property resource name where the audience export will be created. Format: properties/{property_id}. |
| `audience` | string | Yes | Audience resource name identifying the audience to export. Format: properties/{property_id}/audiences/{audience_id}. |
| `dimensions` | array | No | Optional list of dimensions requested and displayed in the export. Each dimension is specified by dimensionName. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Audience List

**Slug:** `GOOGLE_ANALYTICS_CREATE_AUDIENCE_LIST`

Tool to create an audience list for later retrieval by initiating a long-running asynchronous request. Use when you need to create a snapshot of users currently in an audience. The method returns quickly with an Operation resource while processing occurs in the background.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The parent property resource name. Format: 'properties/{property_id}'. Example: 'properties/489591273' |
| `audience` | string | Yes | Required. The audience resource name identifying the audience being listed. Format: 'properties/{property_id}/audiences/{audience_id}'. Example: 'properties/489591273/audiences/11228260226' |
| `dimensions` | array | Yes | Required. The dimensions requested and displayed in the query response. At least one dimension is required. Each entry must be an object with a `dimensionName` key (e.g., `[{'dimensionName': 'deviceId'}]`). Only dimensions supported for audience lists on that property are valid; unsupported values return a 400 INVALID_ARGUMENT error. Use GOOGLE_ANALYTICS_GET_METADATA to retrieve valid dimension names. |
| `webhookNotification` | object | No | Webhook notification configuration for audience list operation updates. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Custom Dimension

**Slug:** `GOOGLE_ANALYTICS_CREATE_CUSTOM_DIMENSION`

Tool to create a CustomDimension for a Google Analytics property. Use when you need to add a new custom dimension to track specific user properties, event parameters, or eCommerce item parameters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `scope` | string ("DIMENSION_SCOPE_UNSPECIFIED" | "EVENT" | "USER" | "ITEM") | Yes | Required. Immutable. The scope of this dimension. Must be one of: EVENT, USER, or ITEM |
| `parent` | string | Yes | Required. The property in which to create the CustomDimension. Format: properties/{property_id} |
| `description` | string | No | Optional. Description for this custom dimension. Max length of 150 characters |
| `displayName` | string | Yes | Required. Display name for this custom dimension as shown in the Analytics UI. Max length of 82 characters, alphanumeric plus space and underscore starting with a letter |
| `parameterName` | string | Yes | Required. Immutable. Tagging parameter name for this custom dimension. For user-scoped dimensions, this is the user property name. For event-scoped dimensions, this is the event parameter name. For item-scoped dimensions, this is the parameter name in the eCommerce items array. May only contain alphanumeric and underscore characters, starting with a letter. Max length of 24 characters for user-scoped dimensions, 40 characters for event-scoped dimensions |
| `disallowAdsPersonalization` | boolean | No | Optional. If set to true, sets this dimension as NPA and excludes it from ads personalization. This is currently only supported by user-scoped custom dimensions |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Custom Metric

**Slug:** `GOOGLE_ANALYTICS_CREATE_CUSTOM_METRIC`

Tool to create a custom metric in Google Analytics. Use when you need to define a new custom metric for tracking specific event parameters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `scope` | string ("METRIC_SCOPE_UNSPECIFIED" | "EVENT") | Yes | Required. Immutable. The scope of this custom metric. |
| `parent` | string | Yes | Required. The property where the custom metric will be created. Format: properties/{property_id} |
| `description` | string | No | Optional. Description for this custom metric. Max length of 150 characters. |
| `displayName` | string | Yes | Required. Display name for this custom metric as shown in the Analytics UI. Max length of 82 characters, alphanumeric plus space and underscore starting with a letter. |
| `parameterName` | string | Yes | Required. Immutable. Tagging name for this custom metric. If this is an event-scoped metric, then this is the event parameter name. May only contain alphanumeric and underscore characters, starting with a letter. Max length of 40 characters for event-scoped metrics. |
| `measurementUnit` | string ("MEASUREMENT_UNIT_UNSPECIFIED" | "STANDARD" | "CURRENCY" | "FEET" | "METERS" | "KILOMETERS" | "MILES" | "MILLISECONDS" | "SECONDS" | "MINUTES" | "HOURS") | Yes | Required. The type for the custom metric's value. |
| `restrictedMetricType` | array | No | Optional. Types of restricted data that this metric may contain. Required for metrics with CURRENCY measurement unit. Must be empty for metrics with a non-CURRENCY measurement unit. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Expanded Data Set

**Slug:** `GOOGLE_ANALYTICS_CREATE_EXPANDED_DATA_SET`

Tool to create an expanded data set for a property. Use when you need to combine specific dimensions and metrics into a custom dataset after property creation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Parent property resource name. Format: properties/{propertyId} |
| `expandedDataSet` | object | Yes | Definition of the ExpandedDataSet to create. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Recurring Audience List

**Slug:** `GOOGLE_ANALYTICS_CREATE_RECURRING_AUDIENCE_LIST`

Tool to create a recurring audience list that automatically generates new audience lists daily based on the latest data. Use when you need to automate audience list creation and reduce quota token consumption.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Parent property resource name where the recurring audience list will be created. Format: properties/{property_id}. |
| `audience` | string | Yes | Audience resource name identifying the audience being listed. Format: properties/{property_id}/audiences/{audience_id}. |
| `dimensions` | array | Yes | List of dimensions requested and displayed in the audience list response. |
| `activeDaysRemaining` | integer | No | Counter decreasing daily. Defaults to 180 days for Analytics 360 properties (max 365) and 14 days for standard properties (max 30). |
| `webhookNotification` | object | No | Configuration for receiving webhook notifications about recurring audience list status. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Report Task

**Slug:** `GOOGLE_ANALYTICS_CREATE_REPORT_TASK`

Tool to create a report task as a long-running asynchronous request for customized Google Analytics event data reports. Use when you need to generate large or complex reports that process asynchronously.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Property identifier in format 'properties/{propertyId}'. The Google Analytics property for which to create the report task. |
| `reportDefinition` | object | No | Defines how the report executes. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Rollup Property

**Slug:** `GOOGLE_ANALYTICS_CREATE_ROLLUP_PROPERTY`

Tool to create a roll-up property. Use when consolidating multiple GA4 properties into one aggregated view.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account` | string | Yes | Required. Parent account resource. Format: accounts/{account_id} |
| `timeZone` | string | Yes | Required. IANA time zone for the roll-up property. |
| `displayName` | string | Yes | Required. Display name for the roll-up property. |
| `sourceProperties` | array | No | Optional. List of source property resource names to link. Format: properties/{property_id}. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Account

**Slug:** `GOOGLE_ANALYTICS_GET_ACCOUNT`

Tool to retrieve a single Account by its resource name. Use when you need detailed account info after confirming the account resource name (e.g., accounts/100).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the Account to retrieve. Must be in the exact format: accounts/{account_id} where account_id is a numeric identifier. IMPORTANT: Must start with 'accounts/' prefix, contain no forward slashes in the account_id, have no trailing slashes, and no additional path segments. Valid example: 'accounts/100'. Invalid examples: '100' (missing prefix), 'accounts/100/' (trailing slash), 'accounts/100/extra' (extra segments) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Attribution Settings

**Slug:** `GOOGLE_ANALYTICS_GET_ATTRIBUTION_SETTINGS`

Tool to retrieve attribution configuration for a Google Analytics property. Use when you need to check attribution models, lookback windows, and conversion export settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the attribution settings to retrieve. Must be in the exact format: properties/{property_id}/attributionSettings where property_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property_id, have no trailing slashes, and must end with '/attributionSettings'. Valid example: 'properties/489591273/attributionSettings'. Invalid examples: '489591273' (missing prefix), 'properties/489591273' (missing suffix), 'properties/489591273/attributionSettings/' (trailing slash) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Audience

**Slug:** `GOOGLE_ANALYTICS_GET_AUDIENCE`

Tool to retrieve a single Audience configuration from a Google Analytics property. Use when you need detailed audience information including membership criteria and filter clauses.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `audienceId` | string | Yes | Required. The audience identifier to retrieve. Provide the numeric audience ID (e.g., '11228260226'). |
| `propertyId` | string | Yes | Required. The Google Analytics property identifier. Can be provided as just the numeric ID (e.g., '123456789') or as full resource name (e.g., 'properties/123456789'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Audience Export

**Slug:** `GOOGLE_ANALYTICS_GET_AUDIENCE_EXPORT`

Tool to get configuration metadata about a specific audience export. Use when you need to understand an audience export after it has been created or check its status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The audience export resource name. Format: properties/{property}/audienceExports/{audience_export}. Example: properties/489591273/audienceExports/19298228 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Audience List

**Slug:** `GOOGLE_ANALYTICS_GET_AUDIENCE_LIST`

Tool to get configuration metadata about a specific audience list. Use after confirming the audience list resource name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the Audience List to retrieve. Format: properties/{property}/audienceLists/{audienceList}. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Custom Dimension

**Slug:** `GOOGLE_ANALYTICS_GET_CUSTOM_DIMENSION`

Tool to retrieve a single CustomDimension by its resource name. Use when you need detailed information about a specific custom dimension including its display name, scope, and parameter name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the CustomDimension to retrieve. Must be in the exact format: properties/{property_id}/customDimensions/{customDimension_id} where both property_id and customDimension_id are numeric identifiers. IMPORTANT: Must start with 'properties/' prefix, contain exactly one '/customDimensions/' segment, have no trailing slashes, and no additional path segments. Valid example: 'properties/489591273/customDimensions/13661238280'. Invalid examples: '489591273/13661238280' (missing prefix), 'properties/489591273/customDimensions/13661238280/' (trailing slash), 'properties/489591273/customDimensions/13661238280/extra' (extra segments) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Data Retention Settings

**Slug:** `GOOGLE_ANALYTICS_GET_DATA_RETENTION_SETTINGS`

Tool to retrieve data retention configuration for a Google Analytics property. Use when you need to check event-level and user-level data retention durations and reset settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the data retention settings to retrieve. Must be in the exact format: properties/{property_id}/dataRetentionSettings where property_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property_id, have no trailing slashes, and must end with '/dataRetentionSettings'. Valid example: 'properties/489591273/dataRetentionSettings'. Invalid examples: '489591273' (missing prefix), 'properties/489591273' (missing suffix), 'properties/489591273/dataRetentionSettings/' (trailing slash) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Data Sharing Settings

**Slug:** `GOOGLE_ANALYTICS_GET_DATA_SHARING_SETTINGS`

Tool to retrieve data sharing configuration for a Google Analytics account. Use when you need to check which data sharing settings are enabled for an account, including sharing with Google support, sales teams, products, and benchmarking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the data sharing settings to retrieve. Must be in the exact format: accounts/{account_id}/dataSharingSettings where account_id is a numeric identifier. IMPORTANT: Must start with 'accounts/' prefix, contain no forward slashes in the account_id, have no trailing slashes, and must end with '/dataSharingSettings'. Valid example: 'accounts/1000/dataSharingSettings'. Invalid examples: '1000' (missing prefix), 'accounts/1000' (missing suffix), 'accounts/1000/dataSharingSettings/' (trailing slash) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Google Signals Settings

**Slug:** `GOOGLE_ANALYTICS_GET_GOOGLE_SIGNALS_SETTINGS`

Tool to retrieve Google Signals configuration settings for a GA4 property. Use when you need to check whether Google Signals is enabled and the consent status for a property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the Google Signals settings to retrieve. Must be in the exact format: properties/{property_id}/googleSignalsSettings where property_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property_id, have no trailing slashes, and must end with '/googleSignalsSettings'. Valid example: 'properties/1000/googleSignalsSettings'. Invalid examples: '1000' (missing prefix), 'properties/1000' (missing suffix), 'properties/1000/googleSignalsSettings/' (trailing slash) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Key Event

**Slug:** `GOOGLE_ANALYTICS_GET_KEY_EVENT`

Tool to retrieve a Key Event. Use after confirming the key event resource name. Read-only; create, update, or delete operations require the Google Analytics UI.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. Resource name of the Key Event to retrieve. Format: properties/{property}/keyEvents/{keyEvent}. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Metadata

**Slug:** `GOOGLE_ANALYTICS_GET_METADATA`

Tool to get metadata for dimensions, metrics, and comparisons for a GA4 property. Use to discover available fields before building a report — always derive dimension/metric apiNames from this output rather than hardcoding from GA4 UI labels, which differ. Available fields vary per property; skip validation and downstream report tools like GOOGLE_ANALYTICS_RUN_REPORT return 400 INVALID_ARGUMENT on incompatible or invalid field combinations. Response can contain hundreds of fields; filter to relevant subset before passing to downstream logic.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Resource name of the metadata to retrieve. Format: properties/{property_id}/metadata. Use property_id=0 to return only universal (non-custom) metadata. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Property

**Slug:** `GOOGLE_ANALYTICS_GET_PROPERTY`

Tool to retrieve a single GA4 Property by its resource name. Use when you need detailed property configuration including display name, time zone, currency, and other settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the Property to retrieve. Must be in the exact format: properties/{property_id} where property_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property_id, have no trailing slashes, and no additional path segments. Valid example: 'properties/489591273'. Invalid examples: '489591273' (missing prefix), 'properties/489591273/' (trailing slash), 'properties/489591273/extra' (extra segments) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Property Quotas Snapshot

**Slug:** `GOOGLE_ANALYTICS_GET_PROPERTY_QUOTAS_SNAPSHOT`

Tool to retrieve all property quotas organized by category (corePropertyQuota, funnelPropertyQuota, realtimePropertyQuota) for a given GA4 property. Use when you need to check current quota usage. Snapshot data can lag real consumption by several minutes; treat reported values as approximate and avoid scheduling high-volume jobs at full apparent capacity.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `property` | string | Yes | Required. The property resource. Format: properties/{property_id}. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Recurring Audience List

**Slug:** `GOOGLE_ANALYTICS_GET_RECURRING_AUDIENCE_LIST`

Tool to get configuration metadata about a specific recurring audience list. Use when you need to understand a recurring audience list's state after it has been created or to get the resource name of the most recent audience list instance.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The recurring audience list resource name. Format: properties/{property}/recurringAudienceLists/{recurring_audience_list} |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Report Task

**Slug:** `GOOGLE_ANALYTICS_GET_REPORT_TASK`

Tool to get report metadata about a specific report task. Use after creating a report task to check its processing state or inspect its report definition.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The report task resource name. Format: properties/{property}/reportTasks/{reportTask} |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Accounts (Deprecated)

**Slug:** `GOOGLE_ANALYTICS_LIST_ACCOUNTS`

DEPRECATED: Use ListAccountsV1Beta instead. Tool to list all Accounts accessible by the caller. Use when you need to enumerate all Google Analytics accounts your credentials can access. Empty or partial results may indicate a permissions issue rather than no resources existing. Returned resource names follow the format accounts/{account_id}; use these in subsequent calls.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `pageSize` | integer | No | Optional. Maximum number of accounts to return. Must be ≥1. |
| `pageToken` | string | No | Optional. Token for retrieving the next page of results. |
| `showDeleted` | boolean | No | Optional. Whether to include soft-deleted (trashed) Accounts. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Account Summaries

**Slug:** `GOOGLE_ANALYTICS_LIST_ACCOUNT_SUMMARIES`

Tool to retrieve summaries of all Google Analytics accounts accessible by the caller. Use when you need a high-level overview of accounts and their properties without fetching full account details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `pageSize` | integer | No | Maximum number of account summaries to return. The service may return fewer than this value. If unspecified, at most 50 resources will be returned. Maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken` | string | No | Page token received from a previous ListAccountSummaries call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListAccountSummaries must match the call that provided the page token. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Accounts (v1beta)

**Slug:** `GOOGLE_ANALYTICS_LIST_ACCOUNTS_V1_BETA`

Tool to list all Google Analytics accounts accessible by the caller using v1beta API. Use when you need to enumerate accounts. Note that these accounts might not have GA properties yet. Soft-deleted accounts are excluded by default.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `pageSize` | integer | No | The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken` | string | No | A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must match the call that provided the page token. |
| `showDeleted` | boolean | No | Whether to include soft-deleted (ie: 'trashed') Accounts in the results. Accounts can be inspected to determine whether they are deleted or not. Defaults to false (soft-deleted accounts are excluded). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List AdSense Links

**Slug:** `GOOGLE_ANALYTICS_LIST_ADSENSE_LINKS`

Tool to list all AdSenseLinks on a property. Use when you need to fetch all AdSense links for a given Google Analytics property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Resource name of the property. Format: properties/{propertyId} (e.g., properties/1234). |
| `pageSize` | integer | No | Optional. Maximum number of results to return. Must be between 1 and 200. Defaults to 50. |
| `pageToken` | string | No | Optional. Token for retrieving the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Audience Exports

**Slug:** `GOOGLE_ANALYTICS_LIST_AUDIENCE_EXPORTS`

Tool to list all audience exports for a property. Use when you need to find and reuse existing audience exports rather than creating new ones.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Property identifier in format 'properties/{propertyId}'. Example: 'properties/489591273' |
| `pageSize` | integer | No | Optional. Maximum number of audience exports to return. Default: 200, Maximum: 1000 |
| `pageToken` | string | No | Optional. Token from a previous response for pagination to retrieve the next page of results |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Audience Lists

**Slug:** `GOOGLE_ANALYTICS_LIST_AUDIENCE_LISTS`

Tool to list all audience lists for a specified property to help find and reuse existing lists. Use when you need to retrieve a property's configured audience lists after confirming the property ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Resource name of the parent property. Format: properties/{property_id} |
| `pageSize` | integer | No | Optional. Maximum number of audience lists to return. Defaults to 200; maximum is 1000. |
| `pageToken` | string | No | Optional. Token for retrieving the next page of results. All other parameters must match original request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Audiences

**Slug:** `GOOGLE_ANALYTICS_LIST_AUDIENCES`

Tool to list Audiences on a property. Use when you need to retrieve audience configurations for a Google Analytics property. Audiences created before 2020 may not be supported.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The property for which to list Audiences. Format: properties/{propertyId} Scoped to a single property per call; invoke separately for each property to list audiences across multiple GA4 properties. |
| `pageSize` | integer | No | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string | No | Optional. A page token received from a previous ListAudiences call. Provide this to retrieve the subsequent page |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List BigQuery Links

**Slug:** `GOOGLE_ANALYTICS_LIST_BIGQUERY_LINKS`

Tool to list BigQuery Links on a property. Use when you need to retrieve BigQuery link resources associated with a Google Analytics property. Results support pagination for large datasets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The name of the property to list BigQuery links under. Format: properties/{property_id} (e.g., properties/1234). |
| `pageSize` | integer | No | Optional. Maximum number of resources to return. The service may return fewer than this value. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken` | string | No | Optional. A page token received from a previous ListBigQueryLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListBigQueryLinks must match the call that provided the page token. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Calculated Metrics

**Slug:** `GOOGLE_ANALYTICS_LIST_CALCULATED_METRICS`

Tool to list CalculatedMetrics on a property. Use when you need to retrieve all calculated metrics configured for a given property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Property identifier in format 'properties/{propertyId}'. Example: 'properties/1234' |
| `pageSize` | integer | No | Optional. Maximum number of results to return per request. Default: 50, Maximum: 200 |
| `pageToken` | string | No | Optional. Token from a previous response for pagination to retrieve the next page of results |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Channel Groups

**Slug:** `GOOGLE_ANALYTICS_LIST_CHANNEL_GROUPS`

Tool to list ChannelGroups on a property. Use when you need to retrieve channel groups that categorize traffic sources in Analytics reports.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The property for which to list ChannelGroups. Format: properties/{property_id} |
| `pageSize` | integer | No | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string | No | Optional. A page token received from a previous ListChannelGroups call. Provide this to retrieve the subsequent page |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Conversion Events

**Slug:** `GOOGLE_ANALYTICS_LIST_CONVERSION_EVENTS`

Tool to list conversion events on a property. Use when you need to retrieve conversion events configured for a given property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The resource name of the parent property. Format: 'properties/{propertyId}' |
| `pageSize` | integer | No | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string | No | Optional. A page token received from a previous ListConversionEvents call. Provide this to retrieve the subsequent page |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Custom Dimensions

**Slug:** `GOOGLE_ANALYTICS_LIST_CUSTOM_DIMENSIONS`

Tool to list CustomDimensions on a property. Use when you need to retrieve custom dimensions configured for a given property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The property for which to list CustomDimensions. Format: properties/{property_id} |
| `pageSize` | integer | No | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string | No | Optional. A page token received from a previous ListCustomDimensions call. Provide this to retrieve the subsequent page |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Custom Metrics

**Slug:** `GOOGLE_ANALYTICS_LIST_CUSTOM_METRICS`

Tool to list CustomMetrics on a property. Use when you need to retrieve all custom metrics configured for a given property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Property identifier in format 'properties/{propertyId}'. Example: 'properties/1234' |
| `pageSize` | integer | No | Optional. Maximum number of resources to return. If unspecified, at most 50 resources will be returned. Maximum value is 200 |
| `pageToken` | string | No | Optional. Token from a previous ListCustomMetrics call for pagination to retrieve the next page of results |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List DataStreams

**Slug:** `GOOGLE_ANALYTICS_LIST_DATA_STREAMS`

Tool to list DataStreams on a property. Use when you need to retrieve data stream configurations for a Google Analytics property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The Google Analytics property identifier. Must be in format 'properties/NUMERIC_ID' where NUMERIC_ID is your actual property ID (e.g., 'properties/489591273'). Do NOT use placeholder syntax like 'properties/{propertyId}' - replace the placeholder with a real numeric property ID. |
| `pageSize` | integer | No | Optional. Maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string | No | Optional. A page token received from a previous ListDataStreams call. Provide this to retrieve the subsequent page |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Display & Video 360 Advertiser Links

**Slug:** `GOOGLE_ANALYTICS_LIST_DV360_AD_LINKS`

Tool to list Display & Video 360 advertiser links on a property. Use when you need to retrieve DisplayVideo360AdvertiserLink resources associated with a Google Analytics property. Results support pagination for large datasets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The name of the property to list DisplayVideo360AdvertiserLinks under. Format: properties/{property_id} (e.g., properties/1234). |
| `pageSize` | integer | No | Optional. Maximum number of resources to return. The service may return fewer than this value. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken` | string | No | Optional. A page token received from a previous ListDisplayVideo360AdvertiserLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided must match the call that provided the page token. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List DisplayVideo360 Advertiser Link Proposals

**Slug:** `GOOGLE_ANALYTICS_LIST_DV360_LINK_PROPOSALS`

Tool to list DisplayVideo360AdvertiserLinkProposals on a property. Use when you need to retrieve Display & Video 360 advertiser link proposals associated with a Google Analytics property. Results support pagination for large datasets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The name of the property to list DisplayVideo360AdvertiserLinkProposals under. Format: properties/{property_id} (e.g., properties/489591273). |
| `pageSize` | integer | No | Optional. Maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken` | string | No | Optional. A page token received from a previous ListDisplayVideo360AdvertiserLinkProposals call. Provide this to retrieve the subsequent page. When paginating, all other parameters must match the call that provided the page token. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Event Create Rules

**Slug:** `GOOGLE_ANALYTICS_LIST_EVENT_CREATE_RULES`

Tool to list EventCreateRules configured on a web data stream. Use when you need to retrieve event create rules for a specific GA4 property data stream.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Resource name of the parent data stream. Format: properties/{propertyId}/dataStreams/{dataStreamId}. |
| `pageSize` | integer | No | Optional. Maximum number of event create rules to return. Default is 50, maximum allowed is 200. |
| `pageToken` | string | No | Optional. A page token received from a previous list call. Provide this to retrieve the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Expanded Data Sets

**Slug:** `GOOGLE_ANALYTICS_LIST_EXPANDED_DATA_SETS`

Tool to list ExpandedDataSets on a property. Use when you need to retrieve expanded data set configurations for a Google Analytics 360 property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The name of the property to list ExpandedDataSets for. Format: properties/{property_id} |
| `pageSize` | integer | No | Optional. The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 |
| `pageToken` | string | No | Optional. A page token received from a previous ListExpandedDataSets call. Provide this to retrieve the subsequent page |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Firebase Links

**Slug:** `GOOGLE_ANALYTICS_LIST_FIREBASE_LINKS`

Tool to list FirebaseLinks on a property. Use when you need to retrieve Firebase connections associated with a Google Analytics property. Each property can have at most one FirebaseLink.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The property for which to list FirebaseLinks. Format: properties/{property_id} (e.g., properties/1234). |
| `pageSize` | integer | No | Optional. The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken` | string | No | Optional. A page token received from a previous ListFirebaseLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListFirebaseLinks must match the call that provided the page token. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Google Ads Links

**Slug:** `GOOGLE_ANALYTICS_LIST_GOOGLE_ADS_LINKS`

Tool to list GoogleAdsLinks on a property. Use when you need to retrieve Google Ads account links configured for a Google Analytics property. Supports pagination for large result sets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The property resource name. Format: properties/{propertyId} (e.g., properties/1234). |
| `pageSize` | integer | No | Optional. Maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; higher values will be coerced to the maximum. |
| `pageToken` | string | No | Optional. A page token received from a previous ListGoogleAdsLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters must match the call that provided the page token. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Key Events

**Slug:** `GOOGLE_ANALYTICS_LIST_KEY_EVENTS`

Tool to list Key Events. Use when you need to retrieve all key event definitions for a given property. Key events are read-only via API; creation, updates, and deletion require the Google Analytics UI. An empty results list means no key events are configured, not a failure. Do not infer key-event status from report data (e.g., eventCount); use this tool to confirm.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Resource name of the parent property. Format: properties/{property_id}. |
| `pageSize` | integer | No | Optional. Maximum number of results to return. Must be between 1 and 200. If not specified or 0, the API uses its default page size. |
| `pageToken` | string | No | Optional. Token for retrieving the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Measurement Protocol Secrets

**Slug:** `GOOGLE_ANALYTICS_LIST_MEASUREMENT_PROTOCOL_SECRETS`

Tool to list MeasurementProtocolSecrets under a data stream. Use when you need to retrieve measurement protocol secrets for server-side event tracking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The resource name of the parent data stream. Format: properties/{property}/dataStreams/{dataStream} |
| `pageSize` | integer | No | Optional. Maximum number of resources to return. If unspecified, at most 10 resources will be returned. The maximum value is 10 |
| `pageToken` | string | No | Optional. A page token received from a previous ListMeasurementProtocolSecrets call. Provide this to retrieve the subsequent page |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Properties (Deprecated)

**Slug:** `GOOGLE_ANALYTICS_LIST_PROPERTIES`

DEPRECATED: Use ListPropertiesV1Beta instead. Tool to list GA4 properties under a specific account. Use after obtaining an account ID; supports pagination and including soft-deleted properties. Results may include legacy Universal Analytics properties; verify property type before use.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account` | string | Yes | Required. Google Analytics account resource name in format accounts/{account_id} where account_id is a Google Analytics account ID (typically 6-10 digits). Use GOOGLE_ANALYTICS_LIST_ACCOUNTS to get valid account IDs. Note: Do not use Google Account IDs (long numeric IDs from OAuth user info) - only Google Analytics account IDs are valid. |
| `pageSize` | integer | No | Optional. Maximum number of properties to return; must be between 1 and 200. |
| `pageToken` | string | No | Optional. Token returned from a previous call to retrieve the next page of results. |
| `showDeleted` | boolean | No | Optional. Whether to include soft-deleted (trashed) properties. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Property

**Slug:** `GOOGLE_ANALYTICS_LIST_PROPERTIES_FILTERED`

Tool to list GA4 properties based on filter criteria. Use when you need to find properties under a specific parent account or with specific firebase projects. Supports pagination and including soft-deleted properties.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | Yes | Required. Expression for filtering the results. Fields eligible for filtering: `parent:` (resource name of parent account/property), `ancestor:` (resource name of parent account), or `firebase_project:` (id or number of linked firebase project). Examples: 'parent:accounts/123' (account with id 123), 'parent:properties/123' (property with id 123), 'ancestor:accounts/123' (account with id 123), 'firebase_project:project-id' (firebase project with id project-id), 'firebase_project:123' (firebase project with number 123). |
| `pageSize` | integer | No | Optional. Maximum number of properties to return (1-200). Default is 50. |
| `pageToken` | string | No | Optional. Token from previous ListProperties call to retrieve the next page. |
| `showDeleted` | boolean | No | Optional. Whether to include soft-deleted (trashed) properties. Default is false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Recurring Audience Lists

**Slug:** `GOOGLE_ANALYTICS_LIST_RECURRING_AUDIENCE_LISTS`

Tool to list all recurring audience lists for a GA4 property. Use when you need to find and reuse existing recurring audience lists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Resource name of the parent property. Format: properties/{property_id} |
| `pageSize` | integer | No | Optional. Maximum number of recurring audience lists to return. Defaults to 200; maximum is 1000. |
| `pageToken` | string | No | Optional. Token for retrieving the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Reporting Data Annotations

**Slug:** `GOOGLE_ANALYTICS_LIST_REPORTING_DATA_ANNOTATIONS`

Tool to list all Reporting Data Annotations for a specific property. Use when you need to retrieve annotations that document important events or periods in GA4 reporting data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | Optional. Expression to refine results. Supported fields: name, title, description, annotationDate, annotationDateRange, color. Helper functions: annotation_duration(), is_annotation_in_range(). Operators: =, !=, <, >, <=, >=, :, =~, !~, NOT, AND, OR. |
| `parent` | string | Yes | Required. Resource name of the property. Format: properties/{property_id}. Example: properties/123456789 |
| `pageSize` | integer | No | Optional. Maximum number of resources per response. Default: 50, Max: 200. |
| `pageToken` | string | No | Optional. Pagination token from previous response to retrieve next page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Report Tasks

**Slug:** `GOOGLE_ANALYTICS_LIST_REPORT_TASKS`

Tool to list all report tasks for a Google Analytics property. Use when you need to retrieve report task definitions and their execution status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Property identifier in format 'properties/{propertyId}'. The Google Analytics property whose report tasks should be listed. |
| `pageSize` | integer | No | Optional. Maximum number of report tasks to return per page. If unspecified, server determines page size. |
| `pageToken` | string | No | Optional. Pagination token from previous list response for retrieving next page of results. Omit for first page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Search Ads 360 Links

**Slug:** `GOOGLE_ANALYTICS_LIST_SEARCH_ADS360_LINKS`

Tool to list all SearchAds360Links on a property. Use when you need to retrieve all Search Ads 360 links for a given Google Analytics property. Supports pagination for large result sets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The property resource name. Format: properties/{propertyId} (e.g., properties/1234). |
| `pageSize` | integer | No | Optional. Maximum number of resources to return. Default is 50, maximum is 200. Values exceeding 200 are capped at maximum. |
| `pageToken` | string | No | Optional. A page token received from a previous list call. Use this to retrieve the next page. All other parameters must match the original request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List SKAdNetwork Conversion Value Schemas

**Slug:** `GOOGLE_ANALYTICS_LIST_SK_AD_NETWORK_CONVERSION_VALUE_SCHEMAS`

Tool to list SKAdNetworkConversionValueSchema configurations for an iOS data stream. Use when you need to retrieve conversion value schemas for iOS app tracking. Maximum one schema per property is supported.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. The DataStream resource to list schemas for. Format: properties/{property_id}/dataStreams/{dataStream}. Example: 'properties/123456789/dataStreams/1234567890' |
| `pageSize` | integer | No | Optional. Maximum number of resources per response. Default: 50, Maximum: 200. |
| `pageToken` | string | No | Optional. Token from previous call for pagination to retrieve next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Subproperty Event Filters

**Slug:** `GOOGLE_ANALYTICS_LIST_SUBPROPERTY_EVENT_FILTERS`

Tool to list all subproperty event filters on a property. Use when you need to retrieve event filters that route events to subproperties.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Resource name of the ordinary property. Format: properties/{property_id} |
| `pageSize` | integer | No | Optional. Maximum number of resources to return; at most 50 by default, maximum 200. |
| `pageToken` | string | No | Optional. Page token received from a previous call to retrieve the next page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Subproperty Sync Configs

**Slug:** `GOOGLE_ANALYTICS_LIST_SUBPROPERTY_SYNC_CONFIGS`

Tool to list SubpropertySyncConfig resources for managing subproperty synchronization configurations. Use when you need to fetch subproperty sync configs for a GA4 property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `parent` | string | Yes | Required. Resource name of the property. Format: properties/{property_id}. Example: properties/123 |
| `pageSize` | integer | No | Optional. The maximum number of resources to return. May return fewer. If unspecified, at most 50 resources will be returned. Maximum value is 200. |
| `pageToken` | string | No | Optional. A page token received from a previous ListSubpropertySyncConfig call. Provide this to retrieve the subsequent page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Provision Account Ticket

**Slug:** `GOOGLE_ANALYTICS_PROVISION_ACCOUNT_TICKET`

Tool to request a ticket for creating a Google Analytics account. Use when you need to initiate the account creation flow that requires user acceptance of Terms of Service.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account` | object | Yes | Required. Account details including display name and region code. |
| `redirectUri` | string | Yes | Required. Redirect URI where the user will be sent after accepting Terms of Service. Must be configured in Cloud Console as a Redirect URI. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Query Audience Export

**Slug:** `GOOGLE_ANALYTICS_QUERY_AUDIENCE_EXPORT`

Tool to query a completed audience export. Use when you need to fetch user rows with pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. Resource name of the audience export. Format: properties/{property}/audienceExports/{audienceExport}, where {property} and {audienceExport} must be integers. |
| `limit` | integer | No | Optional. Number of rows to return. Must be between 1 and 250000. Defaults to 10000. |
| `offset` | integer | No | Optional. Zero-based start row index for pagination. Defaults to 0. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Query Audience List

**Slug:** `GOOGLE_ANALYTICS_QUERY_AUDIENCE_LIST`

Tool to query an audience list. Use when you need to retrieve user rows from a GA4 audience list with pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. Audience list resource to query. Format: properties/{property}/audienceLists/{audienceList}. |
| `limit` | integer | No | Optional. Number of rows to return; default 10,000; maximum 250,000. |
| `offset` | integer | No | Optional. Zero-based row offset for pagination. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Query Report Task

**Slug:** `GOOGLE_ANALYTICS_QUERY_REPORT_TASK`

Tool to retrieve a report task's content. Use this after creating a report task with CreateReportTask and confirming it is in ACTIVE state. This method returns an error if the report task's state is not ACTIVE.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. Report task name in format 'properties/{propertyId}/reportTasks/{reportTaskId}'. The report task must be in ACTIVE state. |
| `limit` | integer | No | Optional. Number of rows to return (max 250,000). If unspecified, 10,000 rows are returned. Must be positive. Limited by the ReportTask's own limit. |
| `offset` | integer | No | Optional. Row offset for pagination (0-indexed). First request omits offset or sets to 0. For subsequent pages, set to the previous limit value. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Run Funnel Report

**Slug:** `GOOGLE_ANALYTICS_RUN_FUNNEL_REPORT`

Tool to run a GA4 funnel report. Use when you need a customized funnel analysis report for a given property. Funnel step sequence is determined by step attributes in the response, not row order.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Number of rows to return. Default 10000; max 250000. |
| `funnel` | object | Yes | Funnel configuration object. Must include a 'steps' key with at least one step. Each step requires a 'name' and optionally a 'filterExpression'. Use 'funnelEventFilter' for event filters and 'funnelFieldFilter' for field filters. Filter expressions with 'fieldName' + 'stringFilter' are auto-wrapped in 'funnelFieldFilter'. Example: {"steps": [{"name": "First visit", "filterExpression": {"funnelEventFilter": {"eventName": "first_visit"}}}]} |
| `property` | string | Yes | GA4 property resource name, format: properties/{property_id}. |
| `segments` | array | No | Up to 4 segments; each yields its own row in the report. |
| `dateRanges` | array | No | List of date ranges to read; overlapping ranges duplicate days across ranges. |
| `dimensionFilter` | object | No | Dimension-only filter expression. |
| `funnelBreakdown` | object | No | Breakdown dimension configuration for the funnel table sub-report. |
| `funnelNextAction` | object | No | Next-action dimension configuration for the funnel visualization sub-report. |
| `returnPropertyQuota` | boolean | No | If true, includes the property's current quota state. |
| `funnelVisualizationType` | string ("STANDARD_FUNNEL" | "TRENDED_FUNNEL") | No | Visualization type: STANDARD_FUNNEL (default) or TRENDED_FUNNEL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Run Pivot Report

**Slug:** `GOOGLE_ANALYTICS_RUN_PIVOT_REPORT`

Tool to run a customized pivot report of Google Analytics event data. Use when you need a pivot table view with advanced segmentation and multi-dimensional analysis of GA4 data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `pivots` | array | No | Optional. Visual format configuration for dimensions. Each pivot has 'fieldNames' (required string array), 'limit' (required), optional 'orderBys', 'offset', and 'metricAggregations'. |
| `metrics` | array | Yes | Required. At least one metric is required. Each metric has a 'name' field, optional 'expression', and optional 'invisible' boolean. |
| `property` | string | Yes | Required. The GA4 property resource name. Format: properties/{property_id} |
| `cohortSpec` | object | No | Optional. Cohort configuration with 'cohorts' (required), optional 'cohortsRange' and 'cohortReportSettings'. |
| `dateRanges` | array | No | Optional. Date ranges for event data retrieval. Each range has 'startDate' and 'endDate' (YYYY-MM-DD format or relative like 'NdaysAgo', 'yesterday', 'today'), and optional 'name'. |
| `dimensions` | array | No | Optional. Dimensions to request. Each dimension has a 'name' field and optional 'dimensionExpression'. Dimensions must be used in pivots, filters, or orderBys. |
| `comparisons` | array | No | Optional. Comparison configurations. Each comparison has optional 'name' and required 'dimensionFilter' or 'comparison'. |
| `currencyCode` | string | No | Optional. ISO4217 currency code (e.g., 'USD', 'EUR'). |
| `metricFilter` | object | No | Optional. Post-aggregation filter (SQL HAVING clause equivalent). |
| `keepEmptyRows` | boolean | No | Optional. If true, includes rows where all metrics equal 0. |
| `dimensionFilter` | object | No | Optional. Filter clause for dimensions only. Can use andGroup, orGroup, notExpression, or filter. |
| `returnPropertyQuota` | boolean | No | Optional. If true, returns current quota state in PropertyQuota. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Run Realtime Report

**Slug:** `GOOGLE_ANALYTICS_RUN_REALTIME_REPORT`

Tool to run a customized realtime report of Google Analytics event data. Use when you need realtime data (last 30-60 minutes) with dimensions and metrics for a GA4 property.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Max rows to return (default 10000, max 250000). |
| `metrics` | array | No | Metrics to measure (max 10). At least one dimension or metric is required. Valid names: activeUsers, eventCount, keyEvents, screenPageViews. |
| `orderBys` | array | No | Sorting specification. Example: [{'metric': {'metricName': 'activeUsers'}, 'desc': true}] or [{'dimension': {'dimensionName': 'country'}}]. |
| `property` | string | Yes | Required. The GA4 property resource name. Format: properties/{property_id}. Get property IDs from GOOGLE_ANALYTICS_LIST_PROPERTIES. |
| `dimensions` | array | No | Dimensions to group by (max 9). At least one dimension or metric is required. Valid names: appVersion, audienceId, audienceName, city, cityId, country, countryId, deviceCategory, eventName, minutesAgo, platform, streamId, streamName, unifiedScreenName. Custom: 'customUser:param_name'. |
| `metricFilter` | object | No | Post-aggregation filter on metric values. Applied after row aggregation. |
| `minuteRanges` | array | No | Time ranges to report on. Default is last 30 minutes. Each range has startMinutesAgo (default 29) and endMinutesAgo (default 0). |
| `dimensionFilter` | object | No | Filter to restrict data by dimension values. Structure: {'filter': {'fieldName': 'country', 'stringFilter': {'value': 'United States'}}} or use andGroup/orGroup/notExpression for complex filters. |
| `metricAggregations` | array | No | Request aggregated metric values. Values: 'TOTAL', 'MINIMUM', 'MAXIMUM', 'COUNT'. |
| `returnPropertyQuota` | boolean | No | If true, includes API quota usage info in the response. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Run Report

**Slug:** `GOOGLE_ANALYTICS_RUN_REPORT`

Tool to run a customized GA4 data report. Use when you need event data after specifying dimensions, metrics, and date ranges. IMPORTANT - DIMENSION/METRIC COMPATIBILITY: The Google Analytics Data API has strict compatibility rules between dimensions and metrics. Not all combinations are valid. If you receive a 400 error with a message about incompatible dimensions/metrics, use the GOOGLE_ANALYTICS_CHECK_COMPATIBILITY action first to validate your dimension/metric combinations before running reports. Common incompatibilities include: - Demographic dimensions (userAgeBracket, userGender) with session-scoped dimensions/filters (sessionCampaignName, sessionSource) - Certain user-scoped dimensions with event-scoped metrics For complex queries, consider starting with simpler dimension/metric combinations or use CHECK_COMPATIBILITY to pre-validate your request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Optional. Number of rows to return. Must be between 1 and 250000. |
| `offset` | integer | No | Optional. 0-based start row for pagination. Must be >= 0. |
| `metrics` | array | No | Optional. The metrics to request and display. Maximum 10 metrics per request. Each metric MUST be an object with a required non-empty 'name' field. Common valid metric names include: activeUsers, totalUsers, newUsers, sessions, engagedSessions, screenPageViews, eventCount, eventValue, conversions, userEngagementDuration, engagementRate, bounceRate, sessionConversionRate, averageSessionDuration, sessionsPerUser, screenPageViewsPerSession, eventsPerSession, active1DayUsers, active7DayUsers, active28DayUsers, dauPerMau, dauPerWau, wauPerMau, purchaseRevenue, totalRevenue, transactions, ecommercePurchases, addToCarts, checkouts, itemRevenue, itemsViewed, itemsAddedToCart, itemsPurchased. Custom metrics use format 'customEvent:parameter_name'. Note: 'exits' is NOT a valid metric in GA4 - use 'sessions' or 'screenPageViews' instead. IMPORTANT - COMPATIBILITY WARNING: Not all metrics can be combined with all dimensions or filters. The GA4 API has strict compatibility rules between dimensions and metrics. If you receive a compatibility error, use the GOOGLE_ANALYTICS_CHECK_COMPATIBILITY action first to validate your dimension/metric combinations, or consult Google's compatibility documentation at https://developers.google.com/analytics/devguides/reporting/data/v1/compatibility |
| `orderBys` | array | No | Optional. Specify how rows are ordered. Each OrderBy object must have 'desc' (boolean) at the top level and exactly one of: 'metric' (with 'metricName' string), 'dimension' (with 'dimensionName' string and optional 'orderType': 'ALPHANUMERIC', 'CASE_INSENSITIVE_ALPHANUMERIC', or 'NUMERIC'), or 'pivot'. Example for metric ordering: {'desc': true, 'metric': {'metricName': 'activeUsers'}}. Example for dimension ordering: {'desc': false, 'dimension': {'dimensionName': 'country', 'orderType': 'ALPHANUMERIC'}}. |
| `property` | string | Yes | Required. The property resource on which to run the report. Format: properties/{property_id} where property_id must be a numeric ID (e.g., 'properties/123456789'). |
| `cohortSpec` | object | No | Optional. Cohort specification. Requires requesting the cohort dimension. |
| `dateRanges` | array | No | Optional. The date ranges to read. Each range MUST be an object with required 'startDate' and 'endDate' fields (both must be non-empty). Dates can be in YYYY-MM-DD format or special values like 'today', 'yesterday', '7daysAgo', '30daysAgo'. |
| `dimensions` | array | No | Optional. The dimensions to request and display. Maximum 9 dimensions per request. Each dimension MUST be an object with a required non-empty 'name' field. Common valid dimension names include: date, dateHour, dateHourMinute, year, month, week, day, dayOfWeek, hour, city, cityId, country, countryId, continent, continentId, region, subContinent, deviceCategory, browser, operatingSystem, platform, platformDeviceCategory, screenResolution, sessionSource, sessionMedium, sessionSourceMedium, sessionCampaignName, sessionDefaultChannelGroup, firstUserSource, firstUserMedium, firstUserCampaignName, firstUserDefaultChannelGroup, pagePath, pagePathPlusQueryString, pageTitle, landingPage, hostname, eventName, streamName, userAgeBracket, userGender, language, newVsReturning. Custom dimensions use format 'customEvent:parameter_name' or 'customUser:parameter_name'. CRITICAL WARNING - INVALID DIMENSION NAMES: 'dateRange' is NOT a valid dimension and cannot be included here. Despite its name, 'dateRange' is a special field that can only be used in Pivot or OrderBy contexts. For date-based grouping, use actual date dimensions: 'date', 'dateHour', 'dateHourMinute', 'year', 'month', 'week', 'day'. Also note: 'exits' is NOT a valid dimension in GA4. IMPORTANT - COMPATIBILITY WARNING: Not all dimensions can be combined with all other dimensions, metrics, or filters. The GA4 API has strict compatibility rules. For example, demographic dimensions (userAgeBracket, userGender) are often incompatible with session-scoped dimensions/filters (sessionCampaignName, sessionSource, etc.). If you receive a compatibility error, use the GOOGLE_ANALYTICS_CHECK_COMPATIBILITY action first to validate your dimension/metric combinations, or consult Google's compatibility documentation at https://developers.google.com/analytics/devguides/reporting/data/v1/compatibility |
| `comparisons` | array | No | Optional. The comparison configuration. Adds a comparison column to the response. |
| `currencyCode` | string | No | Optional. The currency code to apply, in ISO 4217 format. Defaults to property currency. |
| `metricFilter` | object | No | Optional. Filter expression to restrict rows by metric values. Applied after aggregation. IMPORTANT: Only use metric field names here (e.g., 'activeUsers', 'sessions', 'ecommercePurchases', 'purchaseRevenue'). Do NOT use dimension names in metricFilter - if you need to filter by a dimension (e.g., 'country', 'city', 'pagePath'), use dimensionFilter instead. The action validates that only metric names are used in metricFilter and will reject dimension names with a clear error. Structure: {'filter': {'fieldName': '<metric_name>', 'numericFilter': {'operation': 'GREATER_THAN', 'value': {'int64Value': '0'}}}} or use 'andGroup'/'orGroup' for multiple conditions. |
| `keepEmptyRows` | boolean | No | Optional. If true, rows with all zero metrics will be returned; otherwise omitted. |
| `dimensionFilter` | object | No | Optional. Filter expression to restrict rows by dimension values. IMPORTANT: Only use dimension field names here (e.g., 'country', 'city', 'date', 'deviceCategory', 'pagePath'). Do NOT use metric names in dimensionFilter - if you need to filter by a metric (e.g., 'activeUsers', 'sessions', 'ecommercePurchases'), use metricFilter instead. The action validates that only dimension names are used in dimensionFilter and will reject metric names with a clear error. Structure: {'filter': {'fieldName': '<dimension_name>', 'stringFilter': {...}}} or use 'andGroup'/'orGroup' for multiple conditions. COMPATIBILITY WARNING: Dimension filters must be compatible with the dimensions in your request. For example, filtering on 'sessionCampaignName' while using demographic dimensions (userAgeBracket, userGender) will fail. The filter field creates an implicit dimension that must be compatible with all other dimensions and metrics. Use GOOGLE_ANALYTICS_CHECK_COMPATIBILITY to verify your filter dimensions work with your requested dimensions/metrics. |
| `metricAggregations` | array | No | Optional. Aggregation types to include over metrics, e.g., 'TOTAL', 'MINIMUM', 'MAXIMUM'. |
| `returnPropertyQuota` | boolean | No | Optional. If true, include the property's current quota state in the response. |
| `removed_dimensions_internal` | array | No | Internal field to store filtered dimension names for execution message. Not sent to API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send Events

**Slug:** `GOOGLE_ANALYTICS_SEND_EVENTS`

Tool to send event data to Google Analytics 4 using the Measurement Protocol. Use when you need to track server-side events that supplement client-side gtag.js or Firebase tracking. The Measurement Protocol allows sending event data directly to GA4 from servers, applications, or other devices. Events are processed asynchronously and typically appear in reports within 24-48 hours. For validation, use the validation server endpoint first (mp/collect/validate).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `events` | array | Yes | Required. Array of event objects to send. Maximum 25 events per request. Each event must have a 'name' and can optionally include 'params'. |
| `consent` | object | No | Consent settings for Google Analytics 4. |
| `user_id` | string | No | Optional. A unique identifier for a logged-in user. This should be a non-PII identifier that you use internally to identify a user. Maximum 256 characters. |
| `client_id` | string | Yes | Required. A unique identifier for a user/client. This should be a UUID or similar unique string that identifies a specific user across sessions. Maximum 256 characters. |
| `api_secret` | string | Yes | Required. The API secret generated in the Google Analytics UI under Admin > Data Streams > Measurement Protocol API secrets. Used to authenticate requests. |
| `measurement_id` | string | Yes | Required. The measurement ID for the web stream in the format G-XXXXXXX. This is found in the Google Analytics UI under Admin > Data Streams > Web Stream Details. |
| `user_properties` | object | No | Optional. User properties to set for this measurement. Each property must have a 'value' field. User properties persist across events. |
| `timestamp_micros` | integer | No | Optional. Unix timestamp in microseconds for when the event occurred. If not provided, the current time is used. Can be up to 72 hours in the past. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Property

**Slug:** `GOOGLE_ANALYTICS_UPDATE_PROPERTY`

Tool to update an existing GA4 Property. Use when you need to modify property settings such as display name, time zone, currency code, or industry category.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Required. The resource name of the Property to update. Must be in the exact format: properties/{property_id} where property_id is a numeric identifier. IMPORTANT: Must start with 'properties/' prefix, contain no forward slashes in the property_id, have no trailing slashes, and no additional path segments. Valid example: 'properties/489591273'. Invalid examples: '489591273' (missing prefix), 'properties/489591273/' (trailing slash), 'properties/489591273/extra' (extra segments) |
| `parent` | string | No | Immutable. Resource name of this property's logical parent. Format: accounts/{account}, properties/{property}. Example: 'accounts/100', 'properties/101' |
| `timeZone` | string | No | Required. Reporting Time Zone, used as the day boundary for reports. Format: IANA time zone. Example: 'America/Los_Angeles' |
| `updateMask` | string | Yes | Required. The list of fields to be updated. Field names must be in snake case (e.g., 'display_name', 'time_zone', 'currency_code'). Omitted fields will not be updated. To replace the entire entity, use one path with the string '*' to match all fields. Common fields: 'display_name', 'time_zone', 'currency_code', 'industry_category' |
| `displayName` | string | No | Human-readable display name for this property. The max allowed display name length is 100 UTF-16 code units. |
| `currencyCode` | string | No | The currency type used in reports involving monetary values. Format: ISO 4217. Examples: 'USD', 'EUR', 'JPY' |
| `propertyType` | string ("PROPERTY_TYPE_UNSPECIFIED" | "PROPERTY_TYPE_ORDINARY" | "PROPERTY_TYPE_SUBPROPERTY" | "PROPERTY_TYPE_ROLLUP") | No | Property type for a property. |
| `industryCategory` | string ("INDUSTRY_CATEGORY_UNSPECIFIED" | "AUTOMOTIVE" | "BUSINESS_AND_INDUSTRIAL_MARKETS" | "FINANCE" | "HEALTHCARE" | "TECHNOLOGY" | "TRAVEL" | "OTHER" | "ARTS_AND_ENTERTAINMENT" | "BEAUTY_AND_FITNESS" | "BOOKS_AND_LITERATURE" | "FOOD_AND_DRINK" | "GAMES" | "HOBBIES_AND_LEISURE" | "HOME_AND_GARDEN" | "INTERNET_AND_TELECOM" | "LAW_AND_GOVERNMENT" | "NEWS" | "ONLINE_COMMUNITIES" | "PEOPLE_AND_SOCIETY" | "PETS_AND_ANIMALS" | "REAL_ESTATE" | "REFERENCE" | "SCIENCE" | "SPORTS" | "JOBS_AND_EDUCATION" | "SHOPPING") | No | Industry category for a property. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Validate Events

**Slug:** `GOOGLE_ANALYTICS_VALIDATE_EVENTS`

Tool to validate Measurement Protocol events before sending them to production. Use when you need to verify event structure and parameters are correct before sending real data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `events` | array | Yes | Required. Array of events to validate. Each event must have a 'name' field and optional 'params' object. |
| `consent` | object | No | Optional. The consent state for the user. |
| `user_id` | string | No | Optional. A unique identifier for a user. |
| `client_id` | string | Yes | Required. Unique client identifier. This uniquely identifies a user instance of a web client. |
| `api_secret` | string | Yes | Required. The API secret from Google Analytics for the Measurement Protocol. |
| `measurement_id` | string | Yes | Required. The measurement ID for web streams. Format: G-XXXXXXXXXX where X is alphanumeric. |
| `user_properties` | object | No | Optional. The user properties for the measurement. |
| `timestamp_micros` | string | No | Optional. A Unix timestamp (in microseconds) for the time to associate with the event. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
