web-dev-qa-db-fra.com

Quelle est la limite d'appels Graph API de Facebook?

Existe-t-il une restriction du nombre d'appels que nous effectuons sur l'API graphique de Facebook? et si elle est là, combien d'appels pouvons-nous faire par application quotidiennement?

75
Mehul Hingu

La meilleure réponse à cette question d'un autre forum , de Ash Rust en 2010:

"Après quelques tests et discussions avec l'équipe de la plate-forme Facebook, il n'y a pas de limite officielle à ma connaissance ou que je peux trouver dans la documentation. Cependant, j'ai trouvé 600 appels par 600 secondes, par jeton et par IP pour vous empêcher de vous arrêter. J'ai également constaté une limitation du débit basée sur les applications, mais je n’ai aucun chiffre.

En règle générale, un appel par seconde ne devrait pas être limité en débit. En apparence, cela semble très restrictif, mais souvenez-vous que vous pouvez regrouper certains appels et utiliser l’API d’abonnement pour obtenir les modifications. "


Les informations ci-dessus sont désormais obsolètes en octobre 2015. Cela fait maintenant 200 appels d'API par utilisateur dans une fenêtre donnée de 60 minutes selon https: //developers.facebook.com/docs/graph-api/advanced/rate-limiting

56
Zain Khan

Maintenant c'est officiel :

Chaque application reçoit un allotissement de 200 appels d'API par utilisateur dans une fenêtre donnée de 60 minutes .

Dans la documentation de Facebook en date du du 7 octobre 2015 , voici comment la limitation de taux sur l'API Graph fonctionne:

  • La limitation de taux est effectuée sur votre AppId Facebook. Si votre application atteint une limite de débit, tous les appels effectués pour cette application seront limités, pas seulement par utilisateur.
  • La limitation de débit est calculée en prenant le nombre d'utilisateurs de votre application le jour précédent et en ajoutant les nouvelles connexions du jour. Cela donne un nombre de base d'utilisateurs que votre application a.

Par exemple, si votre application comptait 10 utilisateurs hier et 5 nouvelles connexions aujourd'hui, vous obtiendrez une base de 15 utilisateurs. Cela signifie que votre application peut effectuer ((10 + 5) * 200) = 3 000 appels d'API dans une fenêtre de 60 minutes.

Plus d'informations ici: https://developers.facebook.com/docs/graph-api/advanced/rate-limiting

- Mise à jour du 12 avril 2016 -

Facebook a maintenant un Tableau de bord de limite de taux , ce qui est beaucoup plus facile de voir si la limite de taux de votre application est dépassée. Cela ressemble à ceci:

enter image description here

43
Alfeu

Selon règles de développement de Facebook "I. Caractéristiques et fonctionnalité" , les seules limites sont les suivantes:

(> 5 M MAU) ou (> 100 M appels API par jour) ou (> 50 M impressions par jour).

(Mau signifie utilisateurs mensuels)

Il ne dit pas que feront-ils après avoir dépassé les limites ...

Aujourd'hui, j'ai couru à cette limitation:

Les appels vers mailbox_fql ont dépassé le taux de 300 appels par 600 secondes.

Globalement, chaque table a un ensemble de limites différent, dans la plupart des cas, fql ne renverra pas plus de 30 objets par fql. De plus, il me semble que vous pouvez dépasser les limites d'une table et en même temps accéder à des tables différentes. La question est de savoir si l'API est bloqué (après avoir dépassé la limite) pour tous les utilisateurs ou uniquement pour l'utilisateur dépassé les limites ... Quoi qu'il en soit, après avoir dépassé la limite, vous devez attendre environ 10 minutes, puis c'est bien.

Donc techniquement, vous pouvez obtenir au maximum 300 * 30 objets par 10 minutes dans la table mailbox_fql.

19
Visgean Skeloru

À partir de la documentation facebook

Limitation du débit au niveau utilisateur

Cette limitation de débit est appliquée au niveau de l'utilisateur pour tous les appels api, à l'exception des apis ads.

Les limitations de taux se produisent en temps réel sur une fenêtre glissante. Un score est attribué à chaque appel. Il y a un score maximum de n. L'utilisateur accumule un score au fil du temps en fonction des appels passés. Lorsque le score maximum est atteint, l'erreur de limitation est renvoyée. Erreur, Code: 17, Message: Le nombre maximum de demandes d'utilisateurs est atteint

Limitation du taux de niveau d'application

Cette limitation de taux est appliquée globalement au niveau de l'application. Les appels api d'annonces sont exclus.

La limitation du débit s’effectue en temps réel sur une fenêtre glissante pendant une heure. Les statistiques sont collectées pour le nombre d'appels et de requêtes effectués, le temps passé par le processeur, la mémoire utilisée pour chaque application. Il existe une limite pour chaque ressource multipliée par les utilisateurs actifs mensuels d'une application donnée. Lorsque l'application utilise plus que ses ressources autorisées, l'erreur est renvoyée. Erreur, Code: 4, Message: Limite de demande d'application atteinte

consultez cette documentation https://developers.facebook.com/docs/reference/ads-api/api-rate-limiting/

5
Ansen E Anand

Selon la documentation FB, chaque élément d'un lot compte comme un appel séparé.

Nous limitons actuellement le nombre de demandes pouvant être contenues dans un lot à 50, mais chaque appel du lot est compté séparément aux fins du calcul des limites d'appels API et des limites de ressources. Par exemple, un lot de 10 appels d'API comptera pour 10 appels et chaque appel du lot contribue aux limites de ressources de la CPU de la même manière.

Veuillez vérifier ceci: https://developers.facebook.com/docs/graph-api/making-multiple-requestshttps://developers.facebook.com/docs/marketing- api/api-limitant le taux

3
Mujibur