Plafonds

Un plafond correspond au nombre d’appels d’API qu’une application ou un·e utilisateur·ice peut effectuer sur une période donnée. Si ce plafond ou les limites en termes de CPU ou de temps total sont dépassés, l’application ou l’utilisateur·ice pourrait être régulé·e. Dans ce cas, les demandes d’API envoyées par cette application ou cet·te utilisateur·ice échoueront.

Toutes les demandes d’API font l’objet de plafonds. Les demandes de l’API Graph et de l’API Basic Display pour Instagram sont soumises aux Plafonds de plateforme, tandis que les demandes de l’API Marketing et de la plateforme Instagram sont soumises aux Plafonds Business Use Case (BUC).

Les demandes de l’API Pages sont soumises aux plafonds de plateforme ou BUC, selon le token utilisé dans la demande. Les demandes effectuées avec le token d’application ou le token d’accès utilisateur·ice sont soumises aux plafonds de plateforme, tandis que les demandes effectuées avec le token utilisateur·ice système ou les tokens d’accès de Page sont soumises aux plafonds Business Use Case.

Les statistiques d’utilisation des plafonds en temps réel sont décrites dans des en-têtes qui sont inclus avec la plupart des réponses d’API une fois que les appels effectués vers un point de terminaison sont en nombre suffisant. Les statistiques d’utilisation du plafond de plateforme sont également affichées dans l’Espace App. Une fois qu’un plafond est atteint, toute demande ultérieure faite par votre application échoue et l’API renvoie un code d’erreur jusqu’à ce qu’un délai suffisant se soit écoulé pour que le volume d’appels soit inférieur au plafond.

S’il est possible d’appliquer aussi bien les plafonds de plateforme que BUC à une demande, les plafonds BUC s’appliquent.

Plafonds de plateforme

Le suivi des plafonds de plateforme s’effectue au niveau de l’application ou de l’utilisateur·ice, selon le type de token utilisé dans la demande.

Applications

Les demandes de l’API Graph effectuées avec un token d’accès d’application sont comptabilisées dans le plafond de cette application. Le volume d’appels d’une application correspond au nombre d’appels qu’elle peut effectuer durant une période donnée (une heure), calculé comme suit :

Calls within one hour = 200 * Number of Users

Le nombre d’utilisateur·ices est basé sur le nombre de personnes uniques qui utilisent quotidiennement une application. En cas de périodes d’utilisation quotidienne particulièrement ténues, par exemple lorsque votre application a une activité forte le week-end mais faible dans la semaine, c’est le nombre d’utilisateur·ices actif·ives hebdomadaires, voire mensuels, qui servira à calculer le nombre d’utilisateur·ices pour votre application. Les applications à fort taux d’interactions quotidiennes disposeront de plafonds plus élevés que les applications à faible taux d’interactions quotidiennes, indépendamment du nombre réel d’installations d’application.

Notez qu’il ne s’agit pas d’un plafond par utilisateur·ice mais d’un plafond pour les appels effectués par votre application. N’importe quel·le utilisateur·ice peut passer plus de 200 appels par heure à l’aide de votre application, tant que le total d’appels à partir de celle-ci ne dépasse pas le maximum défini pour l’application. Par exemple, si votre application a 100 utilisateur·ices, cela signifie qu’elle peut passer 20 000 appels par heure. Cependant, vos dix utilisateur·ices qui interagissent le plus pourraient passer 19 000 de ces appels.

Utilisateur·ices

Les demandes de l’API Graph effectuées avec un token d’accès utilisateur·ice sont comptabilisées dans le volume des appels de cet·te utilisateur·ice. Le volume d’appels d’un·e utilisateur·ice correspond au nombre d’appels qu’il ou elle peut effectuer durant une période d’une heure. Par souci de confidentialité, nous ne révélons pas les valeurs réelles de comptage des appels pour les utilisateur·ices.

Notez que le volume d’appels d’un·e utilisateur·ice peut être réparti sur plusieurs applications. Par exemple, un·e utilisateur·ice peut effectuer X appels à partir d’une App1 et Y appels à partir d’une App2. Si X+Y dépasse le volume d’appels de l’utilisateur·ice, ce dernier ou cette dernière est soumis·e au plafond. Cela ne signifie pas nécessairement qu’une application effectue une mauvaise action. Il se peut que l’utilisateur·ice utilise plusieurs applications ou qu’il ou elle fasse un mauvais usage de l’API.

En-têtes

Les points de terminaison qui reçoivent suffisamment de demandes de votre application incluent un en-tête HTTP X-App-Usage ou X-Ad-Account-Usage (pour les appels d’API Ads version 3.3 et antérieures) dans leurs réponses. L’en-tête contient alors une chaîne au format JSON qui décrit l’utilisation actuelle du plafond de l’application.

Contenus de l’en-tête


CléDescription de la valeur

call_count

Nombre entier exprimant le pourcentage d’appels effectués par votre application sur une période continue d’une heure.

total_cputime

Nombre entier exprimant le pourcentage de temps CPU alloué pour le traitement des requêtes.

total_time

Nombre entier exprimant le pourcentage de temps total alloué pour le traitement des requêtes.

Contenus de l’en-tête X-Ad-Account-Usage

CléDescription de la valeur

acc_id_util_pct

Pourcentage d’appels effectués pour ce compte publicitaire avant que le plafond ne soit atteint.

reset_time_duration

Durée (en secondes) nécessaire pour réinitialiser le plafond actuel à 0.

ads_api_access_tier

Les niveaux permettent à votre application d’accéder à l’API Marketing. Par défaut, les applications sont dans le niveau development_access. Standard_access octroie un plafond inférieur. Pour obtenir un plafond supérieur et accéder au niveau standard, demandez un « Advanced Access » à la fonctionnalité Accès standard à la gestion des publicités.

Temps CPU total

Durée du temps CPU pour le traitement de la demande. Lorsque total_cputime atteint 100, les appels peuvent être régulés.

Temps total

Durée de traitement de la demande. Lorsque total_time atteint 100, les appels peuvent être régulés.

Exemple de valeur d’en-tête X-App-Usage

x-app-usage: {
    "call_count": 28,         //Percentage of calls made 
    "total_time": 25,         //Percentage of total time
    "total_cputime": 25       //Percentage of total CPU time
}

Exemple de valeur d’en-tête X-Ad-Account-Usage

x-ad-account-usage: {
    "acc_id_util_pct": 9.67,   //Percentage of calls made for this ad account.
    "reset_time_duration": 100,   //Time duration (in seconds) it takes to reset the current rate limit score.
    "ads_api_access_tier": 'standard_access'   //Tiers allows your app to access the Marketing API. standard_access enables lower rate limiting.
}

Tableau de bord

L’Espace App affiche le nombre d’utilisateur·ices de l’application plafonnée, le pourcentage d’utilisation actuelle de cette dernière, ainsi que l’activité moyenne des 7 derniers jours. Dans la carte Plafond d’application, cliquez sur Voir les détails et survolez n’importe quel point du graphe pour afficher plus de détails sur l’utilisation à ce moment précis. Comme l’utilisation dépend du volume d’appels, ce graphe peut ne pas indiquer l’intégralité de la période de 7 jours. Les applications avec un volume d’appels plus important présenteront plus de jours.

Codes d’erreur

Lorsqu’une application ou un·e utilisateur·ice a atteint son plafond, les demandes effectuées par cette application ou cet·te utilisateur·ice sont honorées et l’API répond avec un code d’erreur.

Codes d’erreur de limitation de bande passante


Code d’erreurDescription

4

Indique que l’application dont le token est utilisé dans la demande a atteint son plafond.

17

Indique que l’utilisateur·ice dont le token est utilisé dans la demande a atteint son plafond.

17 with subcode 2446079

Indique que le token utilisé dans la demande d’API Ads 3.3 ou version antérieure a atteint son plafond.

32

Indique que l’utilisateur·ice ou l’application dont le token est utilisé dans la demande d’API Pages a atteint son plafond.

613

Indique que le plafond personnalisé a été atteint. Pour vous aider à résoudre ce problème, consultez la section dédiée aux plafonds personnalisés qui peuvent être appliqués dans la documentation de l’API que vous appelez.

613 with subcode 1996

Indique que nous avons remarqué un comportement incohérent dans le volume de demandes d’API de votre application. Vous pouvez rencontrer cette erreur si vous avez effectué des modifications récentes affectant le nombre de demandes d’API.

Exemple de réponse

{
  "error": {
    "message": "(#32) Page request limit reached",
    "type": "OAuthException",
    "code": 32,
    "fbtrace_id": "Fz54k3GZrio"
  }
}

Codes de limitation de bande passante pour la stabilité de Facebook


Code d’erreurDescription

throttled

Indique si la requête est régulée ou non. Valeurs : True, False

backend_qps

Premier facteur de limitation de bande passante backend_qps. Valeurs acceptées :

  • actual_score : backend_qps actuel de cette application. Valeur : 8
  • limit : limite backend_qps de cette application. Valeur : 5
  • more_info : les requêtes ont besoin de gérer un grand nombre de demandes backend. Nous vous conseillons d’envoyer moins de requêtes ou de les simplifier en réduisant les périodes, le nombre d’ID d’objets, etc.

complexity_score

Deuxième facteur de limitation de bande passante complexity_score. Valeurs acceptées :

  • actual_score : complexity_score actuel de cette application. Valeur : 0.1
  • limit : limite complexity_score de cette application. Valeur : 0.01
  • more_info : une valeur élevée pour complexity_score indique que vos requêtes sont très complexes et nécessitent de grandes quantités de données. Nous vous suggérons de simplifier vos requêtes en réduisant les périodes, le nombre d’ID d’objets, d’indicateurs ou de répartitions, etc. Divisez les requêtes longues et complexes en plusieurs requêtes, plus courtes et espacées.

Recommandations

  • Lorsque le plafond est atteint, cessez d’effectuer des appels d’API. Sinon, votre volume d’appels continuera d’augmenter, ce qui repoussera le moment où les appels aboutiront de nouveau.
  • Répartissez les requêtes de façon homogène pour éviter les pics de trafic.
  • Utilisez des filtres pour limiter la taille des données de réponse et éviter les appels demandant que les données se chevauchent.
  • Vérifiez l’en-tête HTTP X-App-Usage pour savoir si votre application est proche de son plafond et, lorsque le plafond est atteint, savoir quand vous pourrez reprendre vos appels.
  • Si vos utilisateur·ices sont régulé·es, assurez-vous que votre application n’en est pas la cause. Réduisez les appels de l’utilisateur·ice ou répartissez ses appels plus uniformément dans le temps.

Plafonds Business Use Case

Toutes les demandes de l’API Marketing et de l’API Pages effectuées avec un token d’accès système ou de Page sont soumises à des plafonds BUC (Business Use Case) et dépendent des points de terminaison que vous interrogez.

Pour l’API Marketing, le plafond est appliqué au compte publicitaire au sein du même BUC. Par exemple, tous les points de terminaison ayant le BUC de gestion des publicités partagent le quota total du compte publicitaire associé. Si un point de terminaison effectue un grand nombre de demandes d’API et provoque une limitation de bande passante, les autres points de terminaison qui partagent le même BUC recevront eux aussi des erreurs liées à la limitation de bande passante. Le quota dépend du niveau d’accès de l’application à l’API Marketing. Le niveau d’accès standard à l’API Marketing dispose d’un quota plus élevé que le niveau d’accès de développement. Par défaut, les nouvelles applications doivent être au niveau de développement. Si vous souhaitez disposer d’un plafond plus élevé, passez de l’accès standard à la gestion des publicités à l’accès Avancé dans le Contrôle app.

Insights publicitaires

Les requêtes que votre application envoie à l’API Ads Insights sont comptabilisées dans les indicateurs de plafond de l’application, par exemple le nombre d’appels, le temps CPU total et le temps total. Le nombre d’appels d’une application est le nombre d’appels que celle-ci peut effectuer pendant une fenêtre continue d’une heure, et il est calculé comme suit :

Pour les applications disposant de l’accès standard à la fonctionnalité d’accès standard à la gestion des publicités :

Calls within one hour = 600 + 400 * Number of Active ads - 0.001 * User Errors

Pour les applications disposant de l’accès Avancé à la fonctionnalité d’accès standard à la gestion des publicités :

Calls within one hour = 190000 + 400 * Number of Active ads - 0.001 * User Errors

Le nombre de publicités actives correspond au nombre de publicités associées à chaque compte publicitaire. Les erreurs utilisateur·ice correspondent au nombre d’erreurs reçues lors de l’appel de l’API. Pour obtenir un plafond supérieur, vous pouvez demander la fonctionnalité Accès standard à la gestion des publicités.

Le plafond peut également être soumis au temps CPU total et au temps d’exécution total pendant une fenêtre continue d’une heure. Pour plus d’informations, consultez les propriétés total_cputime et total_time de l’en-tête HTTP X-Business-Use-Case.

Si vous recevez des erreurs relatives au plafond, vous pouvez également consulter la propriété estimated_time_to_regain_access de l’en-tête X-Business-Use-Case pour connaître le temps de blocage estimé.

Gestion des publicités

Les requêtes que votre application envoie à l’API Ads Management sont comptabilisées dans les indicateurs de plafond de l’application, par exemple le nombre d’appels, le temps CPU total et le temps total. Le nombre d’appels d’une application est le nombre d’appels que celle-ci peut effectuer pendant une fenêtre continue d’une heure, et il est calculé comme suit :

Pour les applications disposant d’un accès standard à la fonctionnalité d’accès standard à la gestion des publicités :

Calls within one hour = 300 + 40 * Number of Active ads

Pour les applications disposant de l’accès Avancé à la fonctionnalité d’accès standard à la gestion des publicités :

Calls within one hour = 100000 + 40 * Number of Active ads

Le nombre de publicités actives correspond au nombre de publicités associées à chaque compte publicitaire.

Le plafond peut également être soumis au temps CPU total et au temps d’exécution total pendant une fenêtre continue d’une heure. Pour plus d’informations, consultez les propriétés total_cputime et total_time de l’en-tête HTTP X-Business-Use-Case.

Si vous recevez des erreurs relatives au plafond, vous pouvez également consulter la propriété estimated_time_to_regain_access de l’en-tête X-Business-Use-Case pour connaître le temps de blocage estimé.

Catalogue

Lot de catalogues

Les requêtes que votre application envoie sont comptabilisées dans les indicateurs de plafond, par exemple le nombre d’appels, le temps CPU total et le temps total dont votre application dispose au cours d’une période continue d’une heure pour chaque ID de catalogue, qui est calculé comme suit :

Calls within one hour = 200 + 200 * log2(unique users)

Les utilisateur·ices uniques correspondent au nombre d’utilisateur·ices uniques de l’entreprise (sur tous les catalogues) ayant eu une intention d’achat au cours des 28 derniers jours. Plus le nombre d’utilisateur·ices consultant les produits de votre catalogue est important, plus le quota d’appels alloué est élevé.

Type d’appel Point de terminaison

POST

/{catalog_id}/items_batch

POST

/{catalog_id}/localized_items_batch

POST

/{catalog_id}/batch

Gestion des catalogues

Les demandes émanant de votre application sont décomptées du nombre d’appels qu’elle peut effectuer sur une période d’une heure par ID de catalogue. Le calcul s’effectue de la manière suivante :

Calls within one hour = 20,000 + 20,000 * log2(unique users)

Les utilisateur·ices uniques correspondent au nombre d’utilisateur·ices uniques de l’entreprise (sur tous les catalogues) ayant eu une intention d’achat au cours des 28 derniers jours. Plus le nombre d’utilisateur·ices consultant les produits de votre catalogue est important, plus le quota d’appels alloué est élevé.

Cette formule est appliquée à plusieurs points de terminaison du catalogue.

Pour connaître le niveau actuel d’utilisation de votre quota, consultez la section En-têtes.

Le plafond peut également être soumis au temps CPU total et au temps d’exécution total pendant une fenêtre continue d’une heure. Pour plus d’informations, consultez les propriétés total_cputime et total_time de l’en-tête HTTP X-Business-Use-Case.

Si vous recevez des erreurs relatives au plafond, vous pouvez également consulter la propriété estimated_time_to_regain_access de l’en-tête X-Business-Use-Case pour connaître le temps de blocage estimé.

Audience personnalisée

Les demandes que votre application envoie à l’API Custom Audience sont comptabilisées dans les indicateurs de plafond de l’application, par exemple le nombre d’appels, le temps CPU total et le temps total. Le nombre d’appels d’une application correspond au volume d’appels qu’elle peut effectuer durant une période continue d’une heure, calculé comme suit, sans jamais dépasser les 700 000 :

Pour les applications disposant de l’accès standard à la fonctionnalité d’accès standard à la gestion des publicités :

Calls within one hour = 5000 + 40 * Number of Active Custom Audiences

Pour les applications disposant de l’accès Avancé à la fonctionnalité d’accès standard à la gestion des publicités :

Calls within one hour = 190000 + 40 * Number of Active Custom Audiences

Le nombre d’audiences personnalisées actives correspond au nombre d’audiences personnalisées actives associées à chaque compte publicitaire.

Le plafond peut également être soumis au temps CPU total et au temps d’exécution total pendant une fenêtre continue d’une heure. Pour plus d’informations, consultez les propriétés total_cputime et total_time de l’en-tête HTTP X-Business-Use-Case.

Si vous recevez des erreurs relatives au plafond, vous pouvez également consulter la propriété estimated_time_to_regain_access de l’en-tête X-Business-Use-Case pour connaître le temps de blocage estimé.

Plateforme Instagram

Calls to the Instagram Platform endpoints, excluding messaging, are counted against the calling app's call count. An app's call count is unique for each app and app user pair, and is the number of calls the app has made in a rolling 24 hour window. It is calculated as follows:

Calls within 24 hours = 4800 * Number of Impressions

The Number of Impressions is the number of times any content from the app user's Instagram professional account has entered a person's screen within the last 24 hours.

Notes

  • The Instagram Basic Display API uses Platform Rate Limits.
  • Business Discovery and Hashtag Search API are subject to Platform Rate Limits.
  • Messaging Rate Limits

    Calls to the Instagram messaging endpoints are counted against the number of calls your app can make per Instagram professional account and the API used.

    Conversations API

    • Your app can make 2 calls per second per Instagram professional account.

    Private Replies API

    • Your app can make 100 calls per second per Instagram professional account for private replies to Instagram Live comments
    • Your app can make 750 calls per hour per Instagram professional account for private replies to comments on Instagram posts and reels

    Send API

    • Your app can make 100 calls per second per Instagram professional account for messages that contain text, links, reactions, and stickers
    • Your app can make 10 calls per second per Instagram professional account for messages that contain audio or video content

    LeadGen

    Les demandes envoyées par votre application à l’API LeadGen sont comptabilisées dans son volume d’appels. Le volume d’appels d’une application correspond au nombre d’appels qu’elle peut effectuer durant une période donnée de 24 heures, calculé comme suit :

    Calls within 24 hours = 4800 * Leads Generated

    Le nombre de prospects générés est le nombre de prospects générés par Page pour ce compte publicitaire au cours des 90 derniers jours.

    Plateforme Messenger

    Les limites de débit de la plateforme Messenger dépendent de l'API utilisée et, dans certains cas, du contenu du message.

    API Messenger

    Les demandes émanant de votre application sont décomptées du nombre d’appels qu’elle peut effectuer sur une période de 24 heures consécutives. Le calcul s’effectue de la manière suivante :

    Calls within 24 hours = 200 * Number of Engaged Users

    Le nombre d’utilisateur·trices impliqué·es correspond au nombre de personnes auquel l’entreprise peut envoyer des messages via Messenger.

    API Messenger pour Instagram

    Les demandes émanant de votre application sont décomptées du nombre d’appels qu’elle peut effectuer par compte professionnel Instagram et API utilisée.

    API Conversations

    • Votre application peut passer deux appels par seconde et par compte professionnel Instagram.

    API Send

    • Votre application peut passer 100 appels par seconde et par compte professionnel Instagram pour les messages qui contiennent du texte, des liens, des réactions et des stickers.
    • Votre application peut passer 10 appels par seconde et par compte professionnel Instagram pour les messages qui contiennent des contenus audio ou vidéo.

    API Private Replies

    • Votre application peut passer 100 appels par seconde et par compte professionnel Instagram pour les réponses privées à des commentaires Instagram Live.
    • Votre application peut passer 750 appels par heure et par compte professionnel Instagram pour des réponses privées aux commentaires sur les publications et reels Instagram.

    Pages

    Les plafonds de Page peuvent utiliser la logique de plafond de plateforme ou BUC en fonction du type de token utilisé. Ces appels de l’API Pages qui sont effectués à l’aide d’un token d’accès de Page ou d’un token d’accès utilisateur·ice système utilisent le calcul de plafond ci-dessous. Les appels effectués à l’aide de tokens d’accès d’application ou tokens d’accès utilisateur·ice sont soumis aux plafonds d’application ou Utilisateur·ice.

    Les demandes envoyées par votre application à l’API Pages à l’aide d’un token d’accès de Page ou d’un token d’accès d’utilisateur·ice système sont comptabilisées dans le volume d’appels de l’application. Le volume d’appels d’une application correspond au nombre d’appels qu’elle peut effectuer durant une période donnée de 24 heures, calculé comme suit :

    Calls within 24 hours = 4800 * Number of Engaged Users

    Le nombre d’utilisateur·ices impliqué·es correspond au nombre d’utilisateur·ices ayant interagi avec la Page au cours d’une période de 24 heures.

    Les demandes effectuées par votre application à l’API Pages à l’aide d’un token d’accès utilisateur·ice ou d’un token d’accès Application suivent la logique de plafond de plateforme.

    Pour éviter que des problèmes de plafond ne se produisent lorsque vous utilisez la fonctionnalité Contenu d’accès public de Page, il est recommandé d’utiliser un token d’accès d’utilisateur·ice système.

    Gestion des effets Commerce Spark AR

    Les demandes envoyées par votre application aux points de terminaison Commerce sont comptabilisées dans son volume d’appels. Le volume d’appels d’une application correspond au nombre d’appels qu’elle peut effectuer durant une période donnée (une heure), calculé comme suit :

    Calls within one hour = 200 + 40 * Number of Catalogs

    Le nombre de catalogues correspond au nombre total de catalogues sur l’ensemble des comptes marchands gérés par votre application.

    Threads

    Calls to the Threads API are counted against the calling app's call count. An app's call count is unique for each app and app user pair and is the number of calls the app has made in a rolling 24-hour window. It is calculated as follows:
    Calls within 24 hours = 4800 * Number of Impressions
    The Number of Impressions is the number of times any content from the app user's Threads account has entered a person's screen within the last 24 hours. Rate limiting may also be subject to total CPU time per day:
    720000 * number_of_impressions for total_cputime
    2880000 * Number of Impressions for total_time
    Note: The minimum value for impressions is 10 (so if the impressions is less than 10 we default to 10).

    API WhatsApp Business Management

    Les requêtes envoyées par votre application à l’API WhatsApp Business Management sont comptabilisées dans son volume d’appels. Le volume d’appels d’une application correspond au nombre d’appels qu’elle peut effectuer durant une période d’une heure. Pour l’API WhatsApp Business Management suivante, votre application peut effectuer 200 appels par heure, par application, par compte WhatsApp Business par défaut. Pour les comptes WhatsApp Business actifs auxquels au moins un numéro de téléphone a été associé, votre application peut effectuer 5 000 appels par heure, par application, par compte WhatsApp Business actif.
    Type d’appel Point de terminaison

    GET

    /{whatsapp-business-account-id}

    GET, POST et DELETE

    /{whatsapp-business-account-id}/assigned_users

    GET

    /{whatsapp-business-account-id}/phone_numbers

    GET, POST et DELETE

    /{whatsapp-business-account-id}/message_templates

    GET, POST et DELETE

    /{whatsapp-business-account-id}/subscribed_apps

    GET

    /{whatsapp-business-account-to-number-current-status-id}

    Pour les API de ligne de crédit suivantes, votre application peut effectuer 5 000 appels par heure et par application.
    Type d’appel Point de terminaison

    GET

    /{business-id}/extendedcredits

    POST

    /{extended-credit-id}/whatsapp_credit_sharing_and_attach

    GET et DELETE

    /{allocation-config-id}

    GET

    /{extended-credit-id}/owning_credit_allocation_configs

    Pour éviter d’atteindre les plafonds, nous vous recommandons d’utiliser des webhooks pour connaître le statut des modèles de message, des numéros de téléphone et des comptes WhatsApp Business.

    Pour en savoir plus sur la consultation de votre plafond actuel, lisez la section En-têtes.

    En-têtes

    Toutes les réponses d’API produites par votre application qui sont plafonnées à l’aide de la logique BUC comprennent un en-tête HTTP X-Business-Use-Case-Usage (pour les appels de l’API Ads version 3.3 et antérieures) avec une chaîne au format JSON qui décrit l’utilisation actuelle du plafond de l’application. Cet en-tête peut retourner jusqu’à 32 objets par appel.

    Contenu de l’en-tête X-Business-Use-Case-Usage

    Code d’erreurDescription de la valeur

    business-id

    ID de l’entreprise associée au token effectuant les appels d’API.

    call_count

    Nombre entier exprimant le pourcentage d’appels autorisés effectués par votre application sur une période continue d’une heure.

    estimated_time_to_regain_access

    Durée maximale de régulation des appels exprimée en minutes.

    total_cputime

    Nombre entier exprimant le pourcentage de temps CPU alloué pour le traitement des requêtes.

    total_time

    Nombre entier exprimant le pourcentage de temps total alloué pour le traitement des requêtes.

    type

    Type de plafond appliqué. Valeurs acceptées : ads_insights, ads_management, custom_audience, instagram, leadgen, messenger ou pages.

    ads_api_access_tier

    Uniquement pour les types ads_insights et ads_management. Les niveaux permettent à votre application d’accéder à l’API Marketing. Par défaut, les applications sont dans le niveau development_access. Standard_access octroie un plafond inférieur. Pour obtenir un plafond supérieur et accéder au niveau standard, demandez un « Advanced Access » à la fonctionnalité Accès standard à la gestion des publicités.

    Temps CPU total

    Durée du temps CPU pour le traitement de la demande. Lorsque total_cputime atteint 100, les appels peuvent être régulés.

    Temps total

    Durée de traitement de la requête. Lorsque total_time atteint 100, les appels peuvent être régulés.

    Niveau d’accès aux API publicitaires

    Uniquement pour les types ads_insights et ads_management. Les niveaux permettent à votre application d’accéder à l’API Marketing. Par défaut, les applications sont dans le niveau development_access. Standard_access octroie un plafond inférieur. Pour obtenir un plafond supérieur et accéder au niveau standard, demandez un accès Avancé (« Advanced Access ») à la fonctionnalité Accès standard à la gestion des publicités.

    Valeur de l’en-tête X-Business-Use-Case-Usage

    x-business-use-case-usage: {
        "{business-object-id}": [
            {
                "type": "{rate-limit-type}",           //Type of BUC rate limit logic being applied.
                "call_count": 100,                     //Percentage of calls made. 
                "total_cputime": 25,                   //Percentage of the total CPU time that has been used.
                "total_time": 25,                      //Percentage of the total time that has been used.   
                "estimated_time_to_regain_access": 19,  //Time in minutes to regain access.
                "ads_api_access_tier": "standard_access"  //Tiers allows your app to access the Marketing API. standard_access enables lower rate limiting.
            }
        ],      
        "66782684": [
            {
                "type": "ads_management",
                "call_count": 95,
                "total_cputime": 20,
                "total_time": 20,
                "estimated_time_to_regain_access": 0,
                "ads_api_access_tier": "development_access" 
            }
        ],
        "10153848260347724": [
            {
                "type": "ads_insights",
                "call_count": 97,
                "total_cputime": 23,
                "total_time": 23,
                "estimated_time_to_regain_access": 0,
                "ads_api_access_tier": "development_access"
            }
        ],
        "10153848260347724": [
            {
                "type": "pages",
                "call_count": 97,
                "total_cputime": 23,
                "total_time": 23,
                "estimated_time_to_regain_access": 0
            }
        ],
    ...
    }

    Codes d’erreur

    Lorsque votre application atteint son plafond BUC, les demandes ultérieures qu’elle effectue échouent et l’API renvoie un code d’erreur.

    Code d’erreurType de plafond BUC

    error code 80000, error subcode 2446079

    Insights publicitaires

    error code 80004, error subcode 2446079

    Gestion des publicités

    error code 80003, error subcode 2446079

    Audience personnalisée

    error code 80002

    Instagram

    error code 80005

    LeadGen

    error code 80006

    Messenger

    error code 32

    Appels de Page effectués avec un token d’accès utilisateur·ice

    error code 80001

    Appels de Page effectués avec un token d’accès de Page ou utilisateur·ice système

    error code 17, error subcode 2446079

    Toutes les API publicitaires, sauf Ads Insights, jusqu’à la version 3.3

    error code 80008

    API WhatsApp Business Management

    error code 80014

    Lot de catalogues

    error code 80009

    Gestion des catalogues

    Exemple de message de code d’erreur

    {   
    "error": {      
        "message": "(#80001) There have been too many calls to this Page account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting.",      
        "type": "OAuthException",      
        "code": 80001,      
        "fbtrace_id": "AmFGcW_3hwDB7qFbl_QdebZ"   
        }
    }

    Recommandations

    • Lorsque le plafond est atteint, cessez d’effectuer des appels d’API. Continuer à passer des appels continuera d’augmenter votre volume d’appels, ce qui repoussera le moment où les appels aboutiront de nouveau.
    • Vérifiez l’en-tête HTTP X-Business-Use-Case-Usage pour savoir si votre compte publicitaire est proche de son plafond et quand vous pourrez reprendre vos appels.
    • Vérifiez le code d’erreur et le point de terminaison de l’API pour confirmer le type de limitation de bande passante.
    • Basculez sur les autres comptes publicitaires et revenez sur ce compte ultérieurement.
    • Il est préférable de créer une publicité plutôt que de modifier les publicités existantes.
    • Répartissez les requêtes uniformément entre deux intervalles de temps afin d’éviter d’envoyer le trafic par pics.
    • Utilisez des filtres pour limiter la taille des données de réponse et éviter les appels demandant des données qui se recoupent.

    Questions/réponses

    Que considérons-nous comme un appel d’API ?

    Tous les appels sont comptabilisés dans les plafonds, pas seulement les demandes d’API individuelles. Par exemple, vous pouvez passer un appel d’API unique en indiquant plusieurs ID mais chaque ID compte pour un appel d’API.

    Le tableau suivant illustre ce concept.

    Exemples de demande(s) Nombre d’appels d’API

    GET https://graph.facebook.com/photos?ids=4

    GET https://graph.facebook.com/photos?ids=5

    GET https://graph.facebook.com/photos?ids=6

    3

    GET https://graph.facebook.com/photos?ids=4,5,6

    3

    Nous vous recommandons vivement de spécifier plusieurs ID dans une demande d’API lorsque cela est possible, car cela améliore les performances de vos réponses d’API.

    Je crée un scraper. À quoi d’autre dois-je faire attention ?

    Si vous créez un service qui extrait des données, veuillez lire nos conditions générales d’extraction.