first commit
This commit is contained in:
40
scripts/reports/test_ga4_access.py
Normal file
40
scripts/reports/test_ga4_access.py
Normal file
@@ -0,0 +1,40 @@
|
||||
"""Quick test: check if OAuth credentials can access GA4 property."""
|
||||
import os
|
||||
from dotenv import load_dotenv
|
||||
from google.oauth2.credentials import Credentials
|
||||
from google.analytics.data_v1beta import BetaAnalyticsDataClient
|
||||
from google.analytics.data_v1beta.types import RunReportRequest, DateRange, Metric
|
||||
|
||||
load_dotenv()
|
||||
|
||||
PROPERTY_ID = os.getenv("GA4_PROPERTY_ID_studio-zoe.pl")
|
||||
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")
|
||||
|
||||
print(f"GA4 Property ID: {PROPERTY_ID}")
|
||||
|
||||
credentials = Credentials(
|
||||
token=None,
|
||||
refresh_token=REFRESH_TOKEN,
|
||||
client_id=CLIENT_ID,
|
||||
client_secret=CLIENT_SECRET,
|
||||
token_uri="https://oauth2.googleapis.com/token",
|
||||
)
|
||||
|
||||
client = BetaAnalyticsDataClient(credentials=credentials)
|
||||
|
||||
try:
|
||||
request = RunReportRequest(
|
||||
property=f"properties/{PROPERTY_ID}",
|
||||
date_ranges=[DateRange(start_date="2026-02-01", end_date="2026-02-28")],
|
||||
metrics=[Metric(name="sessions"), Metric(name="totalUsers")],
|
||||
)
|
||||
response = client.run_report(request)
|
||||
|
||||
for row in response.rows:
|
||||
print(f"Sessions: {row.metric_values[0].value}, Users: {row.metric_values[1].value}")
|
||||
|
||||
print("\nGA4 access works!")
|
||||
except Exception as e:
|
||||
print(f"\nGA4 access failed: {e}")
|
||||
Reference in New Issue
Block a user