Getting Started with Google Analytics Admin API
The Google Analytics Admin API provides programmatic access to Google Analytics
account and property configuration. It lets you automate account management,
manage data streams, configure custom dimensions, and handle product
integrations.
Enabling the API via Cloud CLI
Before making API calls, ensure the Google Analytics Admin API is enabled in
your Google Cloud project.
If
is not found, prompt the user to install the Google Cloud CLI before
running these commands.
-
Enable the API: Use the Cloud CLI (
) to enable
analyticsadmin.googleapis.com
.
bash
gcloud services enable analyticsadmin.googleapis.com --quiet
Why: Enabling the API ensures your Cloud project has the necessary quota
and permissions allocated for managing Google Analytics configurations.
-
Verify API Enablement:
bash
gcloud services list --enabled --filter="analyticsadmin.googleapis.com"
Authentication
To authenticate your API requests, you must generate Application Default
Credentials (ADC) and give your account the necessary scopes. Run the following
command in your terminal:
bash
gcloud auth application-default login --scopes="https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/analytics.readonly"
Why: This configures ADC in your local environment with the required Cloud
Platform and Google Analytics read-only scopes, allowing the client library to
automatically authenticate your requests.
[!NOTE]
Configuration Changes: Methods changing the Google Analytics
account/property configuration will need the
https://www.googleapis.com/auth/analytics.edit
scope.
Admin API Use Cases
You can use the Google Analytics Admin API to:
- Run Data Access reports (see
https://developers.google.com/analytics/devguides/config/admin/v1/access-api.md.txt
for more info)
- Create Account summaries
- Manage accounts
- Provision new accounts
- Search account change history events
- Manage and create properties
- Manage property data retention settings
- Manage conversion events
- Manage custom dimensions and metrics
- Manage data streams and configure measurement protocol secrets
- Manage Firebase links
- Manage Google Ads links
- Manage key events
v1alpha-Only Use Cases
The following capabilities are currently available only in the
version
of the Admin API:
- Manage account and property access bindings
- Create and manage rollup properties
- Create and manage subproperties
- Acknowledge user data collection
- Change property attribution, data retention, Google signals, reporting
identity, and User Provided Data settings
- Manage AdSense links
- Manage BigQuery links
- Manage audiences
- Manage channel groups
- Manage calculated metrics
- Manage DisplayVideo360Advertiser links
- Manage expanded data sets
- Manage reporting data annotations
- Manage SearchAds360 links
- Manage event create rules for a data stream
- Manage SKAdNetwork conversion value schema of an iOS stream
- Submit a request for user deletion for a Google Analytics property.
Calling the Admin API
To interact with the Admin API, use the official Google Analytics Admin client
library. Note that
is the most stable version of the Admin API. For the
latest features, consider using
.
[!IMPORTANT]
Mandatory Agent Directive: When the user selects or requires
a specific programming language, read the corresponding client library setup
reference guide in
listed below.
Supported Client Libraries
Python
If you need to install or set up the Google Analytics Admin API client library
for Python, read the setup guide:
- Python Installation Reference (Package:
)
Java
If you need to install or set up the Google Analytics Admin API client library
for Java, read the setup guide:
- Java Installation Reference (Artifact:
com.google.cloud:google-cloud-analytics-admin
)
PHP
If you need to install or set up the Google Analytics Admin API client library
for PHP, read the setup guide:
- PHP Installation Reference (Package:
)
Node.js
If you need to install or set up the Google Analytics Admin API client library
for Node.js, read the setup guide:
- Node.js Installation Reference (Package:
)
Go
If you need to install or set up the Google Analytics Admin API client library
for Go, read the setup guide:
- Go Installation Reference (Package:
cloud.google.com/go/analytics/admin/apiv1beta
)
.NET
If you need to install or set up the Google Analytics Admin API client library
for .NET / C#, read the setup guide:
- .NET Installation Reference (Package:
Google.Analytics.Admin.V1Beta
)
Ruby
If you need to install or set up the Google Analytics Admin API client library
for Ruby, read the setup guide:
- Ruby Installation Reference (Gem:
google-analytics-admin-v1alpha
)
[!NOTE]
Additional Resources: For further examples of calling the Admin
API with Java, PHP, Node.js, .NET, Python, and REST, as well as hints on
authentication with a service account, refer to the official
Admin API Quickstart.
For complete API reference documentation for both
and
, see
the
Admin API Reference.
Python Quick Start
-
Install the Client Library:
bash
pip install google-analytics-admin
If
is not available, prompt the user to install
before
installing the client library.
-
List Accounts and Properties: Below is a complete example demonstrating
how to call the Admin API to list all available accounts and their child
properties for the current user using
.
python
from google.analytics.admin import AnalyticsAdminServiceClient
def sample_list_account_summaries():
# Initialize the client.
# Assumes Application Default Credentials (ADC) are configured in your environment.
client = AnalyticsAdminServiceClient()
# list_account_summaries returns a summary of all accounts accessible to the
# user and their child properties.
account_summaries = client.list_account_summaries()
print("Available Google Analytics Accounts and Properties:")
for summary in account_summaries:
print(f"Account: {summary.display_name} ({summary.account})")
for property_summary in summary.property_summaries:
print(f" Property: {property_summary.display_name} ({property_summary.property})")
if __name__ == "__main__":
sample_list_account_summaries()