back
loading skill details...
Manages Google Analytics account and property settings, enables the Analytics Admin API via the Cloud CLI, lists accounts and properties, and manages data…
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 gcloud is not found, prompt the user to install the Google Cloud CLI before
running these commands.
Enable the API: Use the Cloud CLI (gcloud) 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.*
2. 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:
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 v1alpha 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 v1beta is the most stable version of the Admin API. For the
latest features, consider using v1alpha.
[!IMPORTANT] Mandatory Agent Directive: When the user selects or requires
a specific programming language, read the corresponding client library setup
reference guide in references/ 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:
google-analytics-admin)
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:
google/analytics-admin)
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:
@google-analytics/admin)
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 v1alpha and v1beta, see
the
Admin API Reference.
Python Quick Start
Install the Client Library:
pip install google-analytics-admin
If pip is not available, prompt the user to install pip 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 list_account_summaries().
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()don't have the plugin yet? install it then click "run inline in claude" again.