Drive API sharingRateLimitExceeded错误

时间:2017-10-20 07:27:10

标签: google-api google-drive-api quota

我们有一个应用程序,可使用Drive API管理Google云端硬盘文件和文件夹的共享权限。当我们的应用程序尝试更新某些文件或文件夹的共享设置时,我们会收到' 分享 RateLimitExceeded'错误:

Caused by: com.google.api.server.spi.response.UnauthorizedException: 403 FORBIDDEN {   "code" : 403,   "errors" : [ {
    "domain" : "global",
    "message" : "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: SupportMenuItem.class\"",
    "reason" : "sharingRateLimitExceeded"   } ],   "message" : "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: FILENAME\"" }

我们已将API调用配置为不发送电子邮件,我们的服务帐户在更改权限时模拟不同的用户以避免超出速率限制。

我们如何找出超出哪个共享限制?一旦我们知道超出了哪个共享限制,我们在哪里可以找到共享限制有多高?是每分钟共享限制还是每天共享限制?我们需要有关错误的更多信息,以便我们可以调整脚本,以便不再超出共享限制。 documentation中有关错误的信息仅限于对我们有任何价值。

1 个答案:

答案 0 :(得分:2)

{   "code" : 403,   "errors" : [ {
        "domain" : "global",
        "message" : "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: SupportMenuItem.class\"",
        "reason" : "sharingRateLimitExceeded"   } ],   "message" : "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: FILENAME\"" } 

您可以在一天内插入的权限数量有限制。那个24小时左右的时间大约是50,你似乎达到了这个配额。它应该在美国西部时间晚上重置。

据我所知,没有办法延长这个配额。

文档Handeling API errors

  

403:超出分享率限制

     

用户已达到共享限制。这通常与电子邮件限制相关联。

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "message": "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: filename",
    "reason": "sharingRateLimitExceeded",
   }
  ],
  "code": 403,
  "message": "Rate Limit Exceeded"
 }
}
  

建议采取的行动:

     

共享大量文件时不要发送电子邮件。   如果一个用户代表G Suite域的许多用户提出了大量请求,请考虑使用具有权限委派的Service Account来模拟要共享的每个文档的所有者(设置quotaUser parameter)。< / p>