我能够成功连接到Google Analytics(GA4),但我收到一个空的属性数组,即使我的Google Analytics帐户是两个属性的管理员,连同我用于验证的服务帐户。我得到的响应是"Google Analytics连接正在工作,您的帐户是:markusets可用属性:[]"。我正在使用v3版本的API,我正在寻找一个能够检索可用属性的解决方案。
当我运行这个NodeJs脚本时:
const { google } = require("googleapis");
const analytics = google.analytics("v3");
const credentials = require("./service-account-credentials.json");
const client = new google.auth.JWT(
credentials.client_email,
null,
credentials.private_key,
["https://www.googleapis.com/auth/analytics.readonly"]
);
client.authorize((err) => {
if (err) {
console.log(err);
return;
}
//call to get account name
analytics.management.accounts.list({ auth: client }, (err, result) => {
if (err) {
console.log(err);
} else {
console.log(
`Google analytics connection is working and your account is: ${result.data.items[0].name}`
);
//call to get properties
analytics.management.webproperties.list(
{
auth: client,
accountId: "12345678",
},
(err, result) => {
if (err) {
console.log(err);
} else {
console.log(
`Available properties: ${JSON.stringify(result.data.items)}`
);
}
}
);
}
});
});
我得到:
Google analytics connection is working and your account is: markusets
Available properties: []
到目前为止,我尝试使用服务帐户和Google Analytics API(v3)检索我的Google Analytics帐户的可用属性。我已经验证了我的帐户和服务帐户对这些属性具有管理员权限,并且凭据正确,因为我收到了消息"Google Analytics connection is working and your account is:markusets ",这表明我已成功通过身份验证。但是,当我尝试检索属性时,结果数组为空。我尝试了不同的方法来检索属性,但到目前为止没有一种方法起作用。我正在寻找解决方案或原因,说明尽管身份验证正确,但属性数组为空。
1条答案
按热度按时间enxuqcxy1#
Google Analytics Management API只允许您访问Universal Analytics属性。如果您想列出GA 4属性,您需要使用(仍处于Alpha/Beta版本)Google Analytics Admin API。