如何通过API判断Google Analytics账户/媒体资源是否属于GA360账户?
区分UA媒体资源所属标准/GA360账户的可行方案
Google Analytics Management API没有提供直接标记账户类型的字段,但可以通过以下几个可靠的逻辑推导来判断:
1. 账户级别核心判断:premiumFeatures字段
通过你已经调用的Analytics.Management.Accounts.list()接口,返回的每个Account对象里的premiumFeatures数组是最准确的判断依据:
- 若数组包含
"GOOGLE_ANALYTICS_360"(部分早期360账户可能显示为"ANALYTICS_360"),则该账户下所有UA媒体资源都属于GA360。 - 标准账户的
premiumFeatures数组为空,或不包含上述标识值。
在AppScript中可以这样实现判断:
function classifyAccounts() { const accounts = Analytics.Management.Accounts.list(); if (!accounts.items) return; accounts.items.forEach(account => { const isGA360 = account.premiumFeatures?.includes("GOOGLE_ANALYTICS_360") || account.premiumFeatures?.includes("ANALYTICS_360"); console.log(`账户ID: ${account.id}, 名称: ${account.name}, 类型: ${isGA360 ? "GA360账户" : "标准账户"}`); }); }
2. 媒体资源级别辅助验证(可选)
如果需要进一步确认,可以结合UA媒体资源的属性做补充判断(注意:这些可能因用户配置改变而失效,仅作辅助):
- 数据保留期:GA360账户的UA媒体资源默认数据保留期为无限(
dataRetentionTtl值为"INDEFINITELY"),标准账户默认是26个月("26_MONTHS")。需调用Analytics.Management.Webproperties.list()获取该字段。 - 视图数量上限:GA360账户每个媒体资源最多支持200个视图,标准账户仅支持25个。可通过
Analytics.Management.Profiles.list()统计对应媒体资源的视图数量来验证,但效率较低,不推荐大规模使用。
关键提示
- UA媒体资源的类型完全由所属账户决定,无需逐个判断媒体资源,直接关联对应账户的类型即可。
- 确保你的API授权拥有账户的编辑或管理员权限,否则可能无法获取
premiumFeatures字段。
内容的提问来源于stack exchange,提问作者BackCountry55
相关产品推荐
相关产品推荐

