33 lines
1.0 KiB
Python
33 lines
1.0 KiB
Python
"""List all GA4 properties accessible by this token."""
|
|
import os
|
|
from dotenv import load_dotenv
|
|
from google.oauth2.credentials import Credentials
|
|
from google.analytics.admin_v1beta import AnalyticsAdminServiceClient
|
|
|
|
load_dotenv()
|
|
|
|
CLIENT_ID = os.getenv("GOOGLE_ADS_OAUTH2_CLIENT_ID")
|
|
CLIENT_SECRET = os.getenv("GOOGLE_ADS_OAUTH2_CLIENT_SECRET")
|
|
REFRESH_TOKEN = os.getenv("GA4_REFRESH_TOKEN")
|
|
|
|
credentials = Credentials(
|
|
token=None,
|
|
refresh_token=REFRESH_TOKEN,
|
|
client_id=CLIENT_ID,
|
|
client_secret=CLIENT_SECRET,
|
|
token_uri="https://oauth2.googleapis.com/token",
|
|
)
|
|
|
|
client = AnalyticsAdminServiceClient(credentials=credentials)
|
|
|
|
print("Accounts:")
|
|
print("-" * 60)
|
|
for account in client.list_accounts():
|
|
print(f" Account: {account.name} | {account.display_name}")
|
|
|
|
print(" Properties:")
|
|
request = {"filter": f"parent:{account.name}"}
|
|
for prop in client.list_properties(request=request):
|
|
print(f" Property ID: {prop.name.replace('properties/', '')} | {prop.display_name}")
|
|
print()
|