Data API 限制和配额

以下限制和配额适用于 Data API。

配额的应用方式

对 Google Analytics Data API v1 的所有请求都需要 Google Cloud 项目,并且受此页面上概述的配额限制。无论使用哪种方法来标识调用项目,配额都会被消耗,包括:

  • 使用 OAuth 2.0 凭据进行身份验证的请求。
  • 仅使用 API 密钥进行身份验证的请求。

API 密钥用于将请求与特定的 Google Cloud 云项目关联,以进行配额计算和结算。使用项目中的凭据或 API 密钥发出的所有 API 调用都会计入项目和 Google Analytics 媒体资源的相关配额。

配额类别

Data API 具有三个请求配额类别:核心、实时和漏斗。向核心方法发出的 API 请求会消耗核心配额。向实时方法发出的 API 请求会消耗实时配额。每个请求仅消耗一种配额。

配额类别 API 方法
核心 runReportrunPivotReportbatchRunReportsbatchRunPivotReportsrunAccessReportgetMetadatacheckCompatibilitycreateAudienceExports
实时 runRealtimeReport
漏斗图 runFunnelReport

Google Analytics 媒体资源配额

所有请求都会消耗媒体资源配额。

配额名称 标准版媒体资源数量上限 Analytics 360 版媒体资源数量上限
每项媒体资源每天的核心 token 数 200000 200 万
每项媒体资源每小时的核心 token 数 40000 400000
每个项目每项媒体资源每小时的核心令牌数 14,000 140,000
每项媒体资源的核心并发请求数 10 50
每个项目每项媒体资源每小时的核心服务器错误数 10 50
每项媒体资源每天的实时 token 数 200000 200 万
每项媒体资源每小时的实时 token 数 40000 400000
每个项目每项媒体资源每小时的实时令牌数 14,000 140,000
每项媒体资源的实时并发请求数 10 50
每个项目每项媒体资源每小时的实时服务器错误数 10 50
每个媒体资源每天的漏斗令牌数 200000 200 万
每个媒体资源每小时的漏斗 token 数 40000 400000
每个项目每项媒体资源每小时的漏斗令牌数 14,000 140,000
每项媒体资源的漏斗并发请求数 10 50
每个项目每项媒体资源每小时的漏斗服务器错误数 10 50
  • 并发请求数是指同时执行的请求数。如需降低请求并发性,请等待之前的请求完成,然后再发送其他请求。
  • 服务器错误是指 500 和 503 代码。只有当请求导致服务器错误时,才会扣减服务器错误配额。如果某个项目和媒体资源组合的服务器错误配额耗尽,则该项目向相应媒体资源发出的所有请求都会被阻止。
  • 每个请求都会消耗“每项媒体资源每小时的令牌数”和“每个项目每项媒体资源每小时的令牌数”的配额。这意味着,一项媒体资源必须被 3 个以上的项目访问,“每项媒体资源每小时的令牌数”配额才有可能在“每个项目每项媒体资源每小时的令牌数”配额之前耗尽。

媒体资源每小时最多可以发出 120 个可能受阈值限制的请求。维度 userAgeBracketuserGenderbrandingInterestaudienceIdaudienceName 可能会设置阈值。我们之所以应用阈值,是为了防止查看报告的人通过其中的数据推断出具体用户的受众特征或兴趣。

媒体资源令牌配额

每次向 Google Analytics Data API v1 发出请求时,都会消耗令牌。扣除的令牌数量取决于请求的复杂程度。虽然大多数请求会收取 10 个或更少的令牌,但更复杂的请求会消耗更多令牌。

影响令牌消耗的因素

请求的确切令牌费用是在执行时确定的,因此很难进行精确的预先计算。费用受多种因素的影响,这些因素与请求本身以及 Google Analytics 媒体资源中的基础数据有关。以下因素可能会导致费用增加:

  • 行数:请求的行数较多。
  • 维度和指标的数量:纳入更多维度和指标。
  • 过滤条件复杂性:采用复杂的过滤条件表达式。
  • 日期范围长度:查询较长的日期范围。
  • 数据基数:基数较高的维度(例如 pagePath、自定义维度)可能会显著增加令牌费用。
  • 媒体资源事件量:如果媒体资源的事件量较高,那么对该媒体资源执行查询可能会比对数据较少的媒体资源执行相同查询消耗更多令牌。

监控令牌使用情况

确定特定 API 调用的 token 费用的最有效方法是在请求正文中添加参数 "returnPropertyQuota": true。然后,API 响应将包含 PropertyQuota 对象,其中详细说明了相应特定请求消耗的令牌以及剩余的配额余额。