You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用用户凭据认证Google Analytics API遇权限与API启用异常

解决方案

1. 启用缺失的API

错误里提到的「项目956049252304」是OAuth客户端ID的前缀,核心问题是你的云项目未启用Google Analytics Data API。登录Google云控制台,找到你的目标云项目(ProjectA),搜索并启用「Google Analytics Data API」——这是读取GA4数据必需的API,你之前启用的几个是UA或管理类API,GA4数据查询需要单独开启这个。

2. 修正本地认证命令

你之前的命令格式有误,且未指定配额项目,导致系统误将OAuth客户端ID识别为项目ID。执行以下修正后的命令:

gcloud auth application-default login \
--scopes='https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/cloud-platform' \
--client-id-file=/Users/userA/.config/gcloud/ga4_api_oauth_credentials.json \
--quota-project=ProjectA

注意:

  • 把ProjectA替换为你实际的云项目ID(不是OAuth客户端ID)
  • 确保命令参数格式正确,换行符\用于拆分长命令,可根据终端环境调整

3. 调整代码认证逻辑

在代码中明确指定权限范围,并确保关联正确的云项目:

import google.auth
from google.auth.transport.requests import Request

# 手动声明需要的权限范围
SCOPES = ['https://www.googleapis.com/auth/analytics.readonly', 'https://www.googleapis.com/auth/cloud-platform']

# 获取凭据并强制应用指定范围
credentials, project = google.auth.default(scopes=SCOPES, quota_project_id="ProjectA")

# 刷新过期凭据
if not credentials.valid:
    credentials.refresh(Request())

额外检查项

  • 确认目标用户邮箱在对应GA4属性中拥有「查看者」及以上权限
  • 若本地存在旧认证缓存,可执行gcloud auth application-default revoke清理后重新登录

内容的提问来源于stack exchange,提问作者Fanylion

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 20:13:13