Skip to main content

Google Analytics - GA4 Connector

Google Analytics - GA4 Google Analytics is Google's platform of analytics tooling. This component allows you to manage Analytics GA4 data.

Connections

OAuth 2.0

OAuth 2.0 connection for Google Analytics GA4

The Google Analytics component authenticates requests through Google's OAuth 2.0 service.

To create a Google Analytics developer account and authenticate, follow their Configure OAuth Consent guide

Now, you will have to configure OAuth 2.0 settings. Create a new Google Analytics connection of type OAuth 2.0.

  • For Client ID and Client Secret enter the values that you got from the Google Cloud Platform auth settings.
  • For Scopes choose from the list found on Google's service scopes documentation

App Verification

Google requires OAuth apps that request access to user data to pass a verification review before being deployed at scale. This process ensures the app complies with Google's API Services User Data Policy, accurately represents its functionality, and handles user data responsibly.

Google OAuth apps pass through three stages before they are ready for production use.

Testing (unpublished): The app is only accessible to users manually added as test users in the OAuth consent screen. Up to 100 test users are allowed — all other users receive an error. This is the expected state during initial development.

Published, unverified: After publishing the app, all Google users can authenticate. However, for sensitive scopes, users see a "This app isn't verified" warning. Users can proceed by clicking AdvancedGo to [app name] (unsafe), but this warning reduces trust and may be blocked by organizations with strict Google Workspace policies.

Verified: Google has reviewed and approved the app. No warning is shown. Verification is required before deploying to production users.

Publishing the App

Publishing is required before any users outside the test list can authenticate:

  1. In the Google Cloud Console, navigate to APIs & ServicesOAuth consent screen
  2. Click PUBLISH APP and confirm

Requesting Verification

The scopes used by this component are classified as sensitive by Google. Submitting for verification removes the "This app isn't verified" warning:

  1. On the OAuth consent screen, click Prepare for verification
  2. Provide a privacy policy URL, authorized domain, and app logo
  3. Submit for review — Google typically responds within several weeks

Refer to Google's OAuth consent screen documentation for the full verification requirements.

This connection uses OAuth 2.0, a common authentication mechanism for integrations. Read about how OAuth 2.0 works here.

InputCommentsDefault
ScopesA space-delimited set of one or more scopes to get the user's permission to access.https://www.googleapis.com/auth/analytics https://www.googleapis.com/auth/analytics.manage.users https://www.googleapis.com/auth/analytics.edit https://www.googleapis.com/auth/analytics.readonly
Client IDProvide a string value for the client Id of your OAuth 2.0 application.
Client SecretProvide a string value for the client secret of your OAuth 2.0 application.

Triggers

New and Updated Records

Checks for new and updated records in Google Analytics GA4 on a configured schedule.

InputCommentsDefault
ConnectionThe Google Analytics GA4 connection to use.
Resource TypeThe Google Analytics GA4 resource type to poll for new or updated records.
Account IDThe unique identifier for the Google Analytics account. Required when the Resource Type is 'Properties'.
Show New RecordsWhen true, newly created records are included in the trigger output.true
Show Updated RecordsWhen true, records that were modified after the last poll are included in the trigger output.true

Actions

Get Property

Get property by ID

InputCommentsDefault
Account IDThe Google Analytics Account ID.
Property IDThe Google Analytics GA4 Property ID.
Connection

List Accounts

Return a list of accounts accessible by the caller

InputCommentsDefault
Fetch AllWhen true, retrieves all pages of results.false
Page SizeThe maximum number of resources contained in the underlying API response. The API may return fewer values in a page, even if there are additional values to return. If unspecified, the default is 50; the maximum is 200.
Page TokenIf a previous response was truncated, the response includes a nextPageToken. To retrieve the next page of results, set this parameter to the value of nextPageToken from the previous response.
Connection

List Properties

List Google Analytics GA4 properties for an account

InputCommentsDefault
Fetch AllWhen true, retrieves all pages of results.false
Page SizeThe maximum number of resources contained in the underlying API response. The API may return fewer values in a page, even if there are additional values to return. If unspecified, the default is 50; the maximum is 200.
Page TokenIf a previous response was truncated, the response includes a nextPageToken. To retrieve the next page of results, set this parameter to the value of nextPageToken from the previous response.
Account IDThe Google Analytics Account ID.
Connection

Raw Request

Send raw HTTP request to Google Analytics GA4

InputCommentsDefault
Connection
Base URL
URLInput the path only (/accounts), the base URL comes from the Base URL input. For example, to connect to <INPUT_BASE_URL>/accounts, only /accounts is entered in this field.
MethodThe HTTP method to use.
DataThe HTTP body payload to send to the URL.
Form DataThe Form Data to be sent as a multipart form upload.
File DataFile Data to be sent as a multipart form upload.
File Data File NamesFile names to apply to the file data inputs. Keys must match the file data keys above.
Query ParameterA list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.
HeaderA list of headers to send with the request.
Response TypeThe type of data you expect in the response. You can request json, text, or binary data.json
TimeoutThe maximum time that a client will await a response to its request
Retry Delay (ms)The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled.0
Retry On All ErrorsIf true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.false
Max Retry CountThe maximum number of retries to attempt. Specify 0 for no retries.0
Use Exponential BackoffSpecifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored.false

Run Report

Run a customized report on your Google Analytics event data

InputCommentsDefault
Connection
Account IDThe Google Analytics Account ID.
Property IDThe Google Analytics GA4 Property ID.
Request BodySee Google Analytics API documentation for details on what dimensions, metrics, etc., you can specify.
{
"dimensions": [
{
"name": "pageTitle"
}
],
"metrics": [
{
"name": "sessions"
}
],
"dateRanges": [
{
"startDate": "7daysAgo",
"endDate": "yesterday"
}
],
"dimensionFilter": {
"notExpression": {
"filter": {
"fieldName": "pageTitle",
"stringFilter": {
"value": "My Homepage"
}
}
}
}
}

Send Measurement Protocol Events

Sends Measurement Protocol Events to your Google Analytics G4 Account

InputCommentsDefault
Firebase App IDThe Firebase App ID, found in the Firebase console under Project Settings > General > Your Apps > App ID
App Instance IDYour App's instance ID.
API SecretThe API secret for your Google Analytics G4. Generated in the Google Analytics UI
Events To SendThe events to send to Google Analytics