API аналитики отчетов GA возвращает 0 для многих показателей, но интерфейс показывает данные
Мы запрашиваем данные Google Analytics от имени нескольких пользователей, которые заходят на наш сайт. У нас есть несколько случаев, когда мы видим 0 для всех запрошенных метрик для пользователя, даже если пользователь может видеть данные в пользовательском интерфейсе GA.
Мы используем клиентские библиотеки Python для извлечения данных, используя следующий код:
def traffic_report(profile_id, oauth_cred, start_date=None, end_date=None):
return _report(profile_id,
oauth_cred,
start_date=start_date,
end_date=end_date,
metrics=[
'ga:users',
'ga:sessions',
'ga:newUsers',
'ga:sessionDuration',
'ga:avgSessionDuration',
'ga:percentNewSessions',
'ga:bounceRate',
'ga:pageviews',
'ga:pageviewsPerSession',
'ga:uniquePageviews',
])
def _report(profile_id, oauth_cred, start_date=None, end_date=None, metrics=None, dimensions=None):
import httplib2
http = httplib2.Http()
http = oauth_cred.authorize(http)
from apiclient.discovery import build
analytics = build(ANALYTICS_API_SERVICE_NAME,
ANALYTICS_REPORTING_API_VERSION,
http=http,
discoveryServiceUrl=ANALYTICS_DISCOVERY_URI)
metrics_request = [{'expression': metric} for metric in (metrics or [])]
dimensions_request = [{'name': dimension} for dimension in (dimensions or [])]
response = analytics.reports().batchGet(
body={
'reportRequests': [{
'viewId': profile_id,
'dateRanges': [{
'startDate': start_date.strftime('%Y-%m-%d'),
'endDate': end_date.strftime('%Y-%m-%d'),
}],
'metrics': metrics_request,
}]
}
).execute()
return response['reports'][0]
Кто-нибудь знает, что это может быть? Я спросил Google, но они не сильно помогли.
0 ответов
Я наткнулся на это и проверил параметр хранения данных в свойстве и подумал, что проблема может быть связана с настройкой хранения данных и что комбинация параметров является нестандартной агрегацией отчета GA.
https://support.google.com/analytics/answer/7667196?hl=en
Мне не хватало данных ровно 50 месяцев, оказывается, срок хранения данных о пользователях и событиях истекает через 50 месяцев.
Для дат до 50 месяцев и более сложной комбинации параметров, чем может обрабатывать обычный отчет GA, запрос API вернет 0 для всех показателей.