15

我们有一个在 Google Apps 域之间进行迁移的应用程序。对于日历迁移,我们使用 Import API ( https://developers.google.com/google-apps/calendar/v3/reference/events/import )。在过去的六个月里,我们做了很多日历迁移。但大约一周前,我们遇到了新的导入 API 错误:

    "error"=>
  {"errors"=>[
    {"domain"=>"usageLimits",
    "reason"=>"quotaExceeded",
    "message"=>"Calendar usage limits exceeded."}], 
  "code"=>403, 
  "message"=>"Calendar usage limits exceeded."

上周我们收到了很多“超出日历使用限制”。来自不同域的用户的错误。根据 Google API 控制台,我们没有达到每日配额限制。对于我们的应用程序,我们使用 2legged 授权。

请帮助我们了解“超出日历使用限制”是什么意思。意思是?我们如何防止这个错误?我们在哪里可以找到有关日历使用限制的信息?

4

7 回答 7

8

我找到了这个官方支持文档,下面是一些简短的信息,希望对您有所帮助: https ://support.google.com/a/answer/2905486?hl=en

超出日历使用限制。这是 API 调用的结果。(不要将其与“超出每日配额”的消息混为一谈,后者表示 API 配额不足。)

如果用户看到其中一条消息,可能是由于以下原因之一:

  • 创建太多事件

如果用户在短时间内在其日历中创建了超过 10,000 个事件,则该用户可能会失去日历编辑权限。

  • 创建太多日历

如果用户在短时间内创建超过 25 个新日历,则该用户的日历可能会进入只读模式。

  • 向外部客人发送过多邀请或电子邮件

为了防止垃圾邮件,Google 日历限制了用户可以发送给外部客人的邀请数量。此限制因行动而异,通常在 100-300 位客人之间。

Google Apps 用户可以从其主域或与其主域关联的辅助域向任意数量的来宾发送邀请。

  • 与太多用户共享日历

如果用户在短时间内与许多其他用户共享一个或多个日历,Google 日历可能会切换到该用户的只读模式。通过手动更新共享设置几乎不可能达到此限制,但某些基于 API 的工具或第三方应用程序可能会发生这种情况。

于 2014-10-28T08:59:32.903 回答
8

有同样的问题。

我正在使用版本 3 代码,TwoLeggedOAuthCredentials 并且该程序是授权注册客户端(IOW:日历是代表多个帐户创建的。)

上次成功的大型导入:2013-01-21、4929 个 Google 请求和 2013-01-22、1103 个 Google 请求(分布在多个用户中)

在我们配额的大约 4% 处(https://code.google.com/apis/console/b/0/#project:1077083635926:quotas)程序开始出现以下错误:https://www.googleapis.com /calendar/v3/calendars?alt=json 返回“超出日历使用限制。”>

如果程序在一段时间(15 分钟以上)后重新运行,它将在收到相同的错误之前再运行几个请求。如果在“冷静”期后重新运行,它之前出错的日历信息将成功。代码本身休眠的次数是它收到错误的次数乘以 20 秒并尝试十次(第一个错误后等待 20 秒,第二个错误后等待 40 秒),但它大大增加了运行程序的时间。

我昨天将每个用户的限制从 5 个请求/秒/用户增加到 10.0 个请求/秒/用户。到目前为止,这在行为上没有明显变化。缓慢地单步执行代码似乎也没有影响,这让我相信它与每秒的请求数无关。

如果这是一个未记录的每用户配额(而不是他们有据可查的请求/秒/用户配额),则它是新的。

于 2013-03-22T22:25:55.693 回答
6

分析日志后发现

用户的免费 G​​oogle Apps 帐户:最初:100 个外部访客域电子邮件限制 累积:1 个外部访客 40 分钟

例如:如果你有一个新的令牌,你可以发送任何一个 *. 50 场活动,有 100 位客人 - 每个活动有 2 位客人 *。25 场有 100 位宾客的活动 - 每个活动有 4 位宾客

每个限制

: 36 位客人

: 252 位客人

: ~1080 位客人

购买的 GSuite 日历 API 提供1000 次访客请求的初始限制

https://github.com/manjeshpv/gsuite-google-calendar-api-limits

您每天登录后将收到 1000 封(您域外的来宾电子邮件)+ 每 40 分钟收到 1 封来宾电子邮件邀请。当您超出此限制时,您会收到此错误

使用 Google 日历 ****Google 日历( https://calendar.google.com )

无法保存活动 您已达到可编辑活动数量的限制。请等待几个小时,以便审核您的帐户。感谢您的耐心等待。注意:这可能是您安装的与 Google 日历交互的第三方应用程序的结果,例如同步应用程序。

使用基于 API 的方法

错误:超出日历使用限制。代码:403,错误:[ { 域:'usageLimits',原因:'quotaExceeded',消息:'超出日历使用限制。' } ] }

于 2017-01-27T04:57:14.497 回答
1

除了应用程序配额之外,还有一些独立于应用程序的每用户限制。如果某人是日历的重度用户,或者如果您为一小部分用户执行大量活动,那么即使您的应用程序低于其总 API 配额,该应用程序也可能会受到限制。

于 2013-03-21T00:52:22.267 回答
0

我在向我的 Google Apps 域之外的受邀人员插入大量活动时遇到了这个问题。我从 Google Apps 支持收到以下回复:

“日历对您可以从一个日历中邀请的活动数量施加了限制。如果邀请发送给不在 Google Apps 中的用户,那么很快就会达到限制。”

希望能帮助到你。

于 2013-04-13T17:10:42.703 回答
0

我有同样的问题,发现您可以邀请多少外部客人(住在另一个域的客人)有配额。此配额记录在此处:

http://support.google.com/a/bin/answer.py?hl=en&answer=2905486

我目前不知道任何解决方案,但如果你找到一个,我会发现它也很有帮助。祝你好运。

于 2013-04-11T05:51:25.193 回答
0

外部参加者的限制似乎非常严格,并且积极积累。

要在 G Suite 上进行测试,最好只同步主域中的与会者。

于 2018-02-15T05:52:26.160 回答