我正在尝试从谷歌分析 api 检索的数据中获取个人日期。 我正在尝试模仿谷歌分析应用程序的功能。
例如,谷歌分析应用程序有一个折线图,如果日期范围是 4 月 20 日至 25 日,用户总数为 4,则表明 22 日有 2 个用户,27 日有 2 个用户。等等……
但是当我使用 api 检索数据时
const url = `https://analyticsdata.googleapis.com/v1beta/properties/${propertyId}:runReport`;
const requestBody = {
metrics: [
{
name: 'activeUsers',
},
{
name: 'bounceRate',
},
{
name: 'averageSessionDuration',
},
{
name: 'engagedSessions',
},
{
name: 'eventCount',
},
{
name: 'eventsPerSession',
},
{
name: 'screenPageViewsPerSession',
},
{
name: 'sessions',
},
{
name: 'sessionsPerUser',
},
{ name: 'totalUsers' },
],
dateRanges: [
{
startDate: startDate,
endDate: endDate,
name: 'date_range',
},
],
};
const response = await axios.post(url, requestBody, requestOptions);
数据返回这个
{
"metricHeaders": [
{
"name": "activeUsers",
"type": "TYPE_INTEGER"
},
{
"name": "bounceRate",
"type": "TYPE_FLOAT"
},
{
"name": "averageSessionDuration",
"type": "TYPE_SECONDS"
},
{
"name": "engagedSessions",
"type": "TYPE_INTEGER"
},
{
"name": "eventCount",
"type": "TYPE_INTEGER"
},
{
"name": "eventsPerSession",
"type": "TYPE_FLOAT"
},
{
"name": "screenPageViewsPerSession",
"type": "TYPE_FLOAT"
},
{
"name": "sessions",
"type": "TYPE_INTEGER"
},
{
"name": "sessionsPerUser",
"type": "TYPE_FLOAT"
},
{
"name": "totalUsers",
"type": "TYPE_INTEGER"
}
],
"rows": [
{
"metricValues": [
{
"value": "4"
},
{
"value": "0.6"
},
{
"value": "29.2088052"
},
{
"value": "2"
},
{
"value": "45"
},
{
"value": "9"
},
{
"value": "4.2"
},
{
"value": "5"
},
{
"value": "1.25"
},
{
"value": "4"
}
]
}
],
"rowCount": 1,
"metadata": {
"currencyCode": "USD",
"timeZone": "Etc/GMT-3"
},
"kind": "analyticsData#runReport"
}
所以它只显示总计而没有明确显示用户何时活跃。
我是否缺少参数,或者根本不可能获得这些日期?
顺便说一下,我正在尝试获取新的 GA4 跟踪 ID。
谢谢你的时间
从您的requestBody我看到您只请求指标,因此您正在获取整个选定时期的汇总数据。
您还应该输入
date
维度以在所需范围内按日期细分值。
谢谢 Michele Pisani 回答问题。
我发现了一个非常有用的网站,它显示了哪些值可用
https://ga-dev-tools.google/ga4/query-explorer/
是的,我需要添加这个
dimensions: [
{
name: 'date',
},
],
致我的请求体。
谢谢!