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

GA4 API:服务账号获全权限仍报权限拒绝,求排查解决

问题解决:GA4 API调用权限范围不足异常

核心错误原因

你代码中使用的认证范围是云存储服务的权限(StorageScopes.DEVSTORAGE_FULL_CONTROL),和GA4 Analytics Data API的权限需求不匹配,这是导致PERMISSION_DENIED异常的直接原因。

修正步骤

  1. 替换正确的API权限范围
    GA4 Beta Analytics Data API要求的权限范围是https://www.googleapis.com/auth/analytics.readonly,将代码中的scope部分替换为该值。

  2. 修正后的完整代码

String propertyId = "123123123";

GoogleCredentials gc = ServiceAccountCredentials.fromStream(this.getClass().getResourceAsStream("/client_secrets.json"))
                .createScoped(Collections.singletonList("https://www.googleapis.com/auth/analytics.readonly"));

BetaAnalyticsDataSettings betaAnalyticsDataSettings = BetaAnalyticsDataSettings.newBuilder().setCredentialsProvider(FixedCredentialsProvider.create(gc)).build();

BetaAnalyticsDataClient betaAnalyticsDataClient = BetaAnalyticsDataClient.create(betaAnalyticsDataSettings);

RunReportRequest request = RunReportRequest.newBuilder().setProperty("properties/" + propertyId).
                addMetrics(Metric.newBuilder().setName("active7DayUsers")).
                addDateRanges(DateRange.newBuilder().
                        setStartDate("2023-07-31").setEndDate("today")).build();

RunReportResponse response = betaAnalyticsDataClient.runReport(request);

补充说明

  • 你已确认的GUI配置(服务账号关联GA4资源、授予全管理员权限)都是正确的,无需调整;
  • 替换权限范围后重新运行代码,即可正常调用GA4 API获取数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 23:53:19