什么是Facebook的Graph API调用限制?

Meh*_*ngu 78 facebook facebook-fql facebook-like facebook-graph-api

我们对facebook的图表API进行的通话数量有限制吗?如果它在那里那么我们每天可以为每个应用程序拨打多少电话?

Zai*_*han 56

来自2010年Ash Rust的另一个论坛的最佳答案:

"经过与Facebook平台团队的一些测试和讨论后,我没有官方限制或者可以在文档中找到.但是,我发现600个电话每600秒,每个令牌和每个IP都在哪里他们阻止你.我也看到了一些基于应用程序的速率限制,但没有任何数字.

作为一般规则,每秒一次呼叫不应该限制速率.从表面上看,这似乎非常严格,但请记住,您可以批量调用某些调用并使用订阅API来获取更改."


以上信息现已截至2015年10月已过时.根据https://developers.facebook.com/docs/graph-api/advanced/rate-limiting,现在每个用户在任何给定的60分钟窗口内有200个API调用.

  • @mangobug每个令牌和每个IP意味着......究竟是什么?如果我在2个不同的IP中使用相同的令牌,这是否意味着我可以加倍调用?如果我有2个访问令牌,仍然来自同一个IP,我可以加倍拨打电话吗? (12认同)
  • "但请记住,你可以批量调用某些电话"Facebook澄清说这不会减少有效API调用次数达到你的限制:"批量调用不会减少api调用次数." https://developers.facebook.com/docs/marketing-api/api-rate-limiting#applimit (5认同)
  • 这不再有效,在任何给定的60分钟窗口中,请参阅用户的答案>每个用户200个API调用 (3认同)
  • 那么问题是什么? (2认同)
  • @mangobug:我认为Henley Chiu的最后评论/问题在这里非常重要:) (2认同)

Alf*_*feu 47

现在是官方的:

在任何给定的60分钟窗口中,每个应用程序为每个用户分配200个API调用.

从截至2015年10月7日的Facebook文档开始,以下是Graph API的速率限制:

  • 限速是在您的Facebook AppId上完成的.如果您的应用达到了费率限制,那么针对该应用所做的所有通话都将受到限制,而不仅仅是基于每个用户.
  • 速率限制是通过计算您的应用前一天的用户数量并添加今天的新登录来计算的.这会为您的应用提供基本数量的用户.

例如,如果您的应用程序昨天有10个用户,今天有5个新登录,那么这将为您提供15个用户的基础.这意味着您的应用可以在任何60分钟的窗口中进行((10 + 5)*200)= 3000个API调用.

更多信息请访问:https://developers.facebook.com/docs/graph-api/advanced/rate-limiting

- 20164月12日更新 -

Facebook现在有一个速率限制仪表板,如果您的应用程序的速率限制超出,则更容易看到.它看起来像这样:

在此输入图像描述

  • 如果他们在每次通话后返回“ estimatedCallsLeftForThisHour:1234”,那么会容易得多。 (2认同)

Vis*_*oru 19

根据Facebook开发政策"我的特点和功能",唯一的限制是:

(> 5M MAU)或(>每天100M API调用)或(每天> 50M印象).

(Mau表示每月用户)

它没有说明超过限制后他们会做什么......

今天我遇到了这个限制:

对mailbox_fql的调用已超过每600秒300次调用的速率.

总的来说,每个表都有不同的限制,在大多数情况下,fql不会为每个fql返回超过30个对象.在我看来,你可以超过一个表的限制,同时你可以访问不同的表,问题是api是否被阻止(超过限制后)所有用户或仅限于具有该用户的用户超出限制...无论如何,超过限制后你必须等待大约10分钟,而不是好的.

从技术上讲,在table mailbox_fql中,每10分钟最多可以获得300*30个对象.


小智 5

来自facebook文档

用户级别限制

对于除广告api之外的所有api呼叫,在用户级别应用此速率限制.

速率限制在滑动窗口上实时发生.每个电话都会分配一个分数.最高分为n.用户根据所做的调用累积随时间的分数.达到最大分数时,将引发限制错误.错误,代码:17,消息:达到用户请求限制

应用级别限制

此速率限制适用于应用级别的全局.广告API呼叫被排除在外.

速率限制在滑动窗口上实时发生过去一小时.收集统计数据,包括调用和查询的数量,花费的CPU时间,每个应用程序使用的内存.每个资源都有一个限制乘以给定应用的每月活跃用户.当应用程序使用超过其允许的资源时,将引发错误.错误,代码:4,消息:达到应用程序请求限制

查看此文档 https://developers.facebook.com/docs/reference/ads-api/api-rate-limiting/