限制和配额

限制和配额可保护 Google 的基础架构,防止被自动化流程以不当方式使用 Reports API。从某个 API 发出过多请求的原因可能是无害的拼写错误,也可能是由于系统设计效率低下、进行不必要的 API 调用造成的。无论是什么原因,在来自特定来源的流量达到特定水平时,都有必要将其屏蔽,以保证 Google Workspace 系统的整体运行状况。它可确保一个开发者的行为不会对更广泛的社区产生负面影响。

万一您的 API 请求失败,您会收到 HTTP 状态代码响应。状态代码 403 包含有关输入不正确的错误信息,而 HTTP 状态代码 503 则包含指示已超出哪些 API 配额的错误信息。通过这些响应,您的自定义应用将能够检测这些错误并采取适当的措施。

如果您的请求需要在固定的时间段内完成,请并行发送请求,或在 Java 或 C# 应用中使用多个线程。并行请求的一个示例是请求来自不同用户的小批量电子邮件,而不是同时添加或移除一个用户中的大量电子邮件。对于会话,请尝试先创建 10 个会话,每个用户电子邮件地址对应一个会话。请注意,线程建议需要权衡取舍,并且并非适用于所有 API 情况。如果请求数过高,将会发生配额错误。

对于所有基于时间的错误(每个线程最多持续 NN 秒),尤其是 503 状态代码错误,我们建议您的代码捕获异常,并使用指数退避算法算法等待一小段延迟,然后再重试失败的调用。一个线程的 Reports API 示例是等待 5 秒钟,然后重试失败的调用。如果请求成功,请对其他线程重复此模式。如果第二个请求未成功,您的应用应根据请求频率缩容,直到调用成功为止。例如,将初始的 5 秒延迟增加到 10 秒,然后再次重试失败的呼叫。此外,您需要决定重试次数上限。例如,在您的应用向用户返回错误之前,使用不同的延迟时间重试请求 5 到 7 次。

API 限制类别 限制
报告 QPS 和 QPD 比率 该 API 会限制 Google Cloud 项目的请求数。Google Cloud 控制台中设置的默认值为每个 Google Cloud 项目每位用户每分钟 2,400 次查询。 您可以在 Google Cloud 项目的 Admin SDK API 配额页面中提高此上限。

如果超出这些限制,服务器将返回 HTTP 503 状态代码。重试请求时请使用指数退避算法算法。

API 配额类别 配额
maxResults API 响应的每个页面中列出的记录数量为从 1 到 1000 个事件。默认值为 1,000 条记录。

其他类型的限制 限制和准则
数据格式,默认 默认的数据格式为 JSON。该 API 还支持 Atom 格式。
未经授权的请求 Google 不允许向 API 发出未经授权的请求。如果未提供授权令牌,请求会被视为未获得授权。如需了解详情,请参阅向请求授权
警告消息
  • 数据不可用:此应用程序及当天的数据不可用,且以后不可用。
  • 可显示部分数据:未来可能会提供此应用及相应日期的数据。
如需了解 Reports API 的警告语法,请参阅适用于客户用户的 API 参考文档。