Utilisez ces règles et solutions pour tout problème de flux de données que vous pourriez rencontrer.
Pour répertorier toutes les règles associées à un flux de données, exécutez un appel HTTP GET
à :
https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_ID>/rules
Pour en savoir plus, consultez la page Règles du flux de produits, référence de l’API.
Vous pouvez obtenir des suggestions de règles de Meta pour corriger les erreurs dans votre flux de données. Pour voir les suggestions de règles pour votre session d’importation, suivez les étapes ci-dessous :
Étape 1 : récupérer les sessions d’importation
https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_ID>/uploads
Étape 2 : récupérer les erreurs des sessions d’importation
https://graph.facebook.com/<API_VERSION>/<UPLOAD_SESSION_ID>/errors
Étape 3 : récupérer les suggestions de règles pour les erreurs d’importation
curl -i -X GET "https://graph.facebook.com/<API_VERSION>/<UPLOAD_ERROR_ID>/suggested_rules?access_token={ACCESS_TOKEN}
Exemple de réponse
"data": [ "attribute": "description", "type": "letter_case_rule", "params": [ "key": "type", "value": "capitalize_first" ] ]
Pour en savoir plus, consultez la page Suggestions de règles, référence de l’API.
Pour appliquer des règles à un flux de données, vous devez associer les règles au flux de données.
Exécutez un appel HTTP POST
à :
https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_ID>/rules?attribute={ATTRIBUTE}&rule_type={RULE_TYPE}&params={PARAMS}
Exemple
curl -i -X POST -d "attribute=google_product_category" -d "rule_type=mapping_rule" -d "params=%7B'map_from'%3A%20'gcategory'%7D" -d "access_token={ACCESS_TOKEN}" "https://graph.facebook.com/<API_VERSION>/{PRODUCT_FEED_ID}/rules"
Exemple de réponse
"id": "{RULE_ID}"
Formatez params
comme suit :
Type de règle | Format | Exemple | Remarques |
---|---|---|---|
Règle de mappage | "map_from": <string> | "map_from": "gavailability" | |
Règle de mappage de valeurs | <string> : <string> | "InStock": "in stock" | Le nombre maximum de mappages est limité à 10 et la longueur des chaînes à 20. |
Règle de casse | "type": "capitalize_first", "capitalize_all", "to_upper" ou "to_lower", au choix | "type": "capitalize_first" |
Pour en savoir plus, consultez la page Règles du flux de produits, référence de l’API.
Corrigez et prévenez les erreurs d’importation des flux de données en cours avec des règles. Vous pouvez fournir des règles que Meta appliquera à chaque importation de flux de données. Pour chaque règle, vous devez spécifier l’attribut (colonne) auquel elle s’applique, le type de règle et les paramètres. Actuellement, vous ne pouvez pas utiliser les règles avec l’API Batch. Vous pouvez fournir les types de règles suivants :
Voici des exemples de problèmes que vous pouvez résoudre avec les règles de mappage et de mappage de valeurs :
gavailability
par availability
InStock
par in stock
45$
par 45.00 USD
Neu
par Condition: New
Vous pouvez utiliser la règle de casse pour résoudre ce genre de problèmes :
BRAND NEW WITH LEATHER DETAIL...
par Brand new with leather detail...
FACEBOOK T-SHIRT
en les remplaçant par Facebook T-shirt
Pour changer une règle associée à un flux de données, exécutez un appel HTTP POST
pour mettre à jour un paramètre et HTTP DELETE
pour en supprimer. Seuls les paramètres peuvent être mis à jour. Si vous voulez changer attribute
ou rule_type
, vous devez supprimer et recréer la règle.
https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_RULE_ID>?params={PARAMS}
Pour en savoir plus, consultez la page Règles du flux de produits, référence de l’API.
Si le Gestionnaire des ventes signale que certains articles de votre catalogue sont manquants ou introuvables, vous pouvez être amené·e à vérifier que votre pixel ou votre application Meta ont été correctement configurés. Vous pouvez rencontrer cette erreur dans les cas suivants :
content_id
inclus dans votre pixel ou votre évènement d’application ne correspond pas à l’ID dans le flux de données du catalogue.Pour en savoir plus, consultez cette page.
Accédez à Blueprint pour résoudre d’autres problèmes liés aux flux.
Vous pouvez utiliser l’API Data Feed Upload Error Report afin d’obtenir un rapport d’erreur complet pour toute session d’importation du flux. Lorsque nous recevons la demande, nous travaillons en arrière-plan pour collecter ces erreurs et les stocker dans un fichier CSV.
Pour demander un rapport d’erreur complet, utilisez POST /{upload_session_id}/error_report
.
Le rapport contient les informations suivantes :
FATAL
si l’erreur a entraîné le refus de l’article, WARNING
si l’article a été téléchargé, mais avec une erreur)'da'
dans cette colonnetrue
/false
) ; par exemple, si l’erreur empêche l’affichage de l’article sur cette plateformeRequête
curl -i -X POST \ -F 'access_token=ACCESS_TOKEN' \ https://graph.intern.facebook.com/<API_VERSION>/<upload session ID>/error_report
Réponse La réponse indique si la requête a été acceptée ou non :
{ "success": bool, }
Bien souvent, il suffit d’obtenir un aperçu des erreurs et avertissements pour résoudre la plupart des problèmes d’importation de flux de produits. Toutefois, la liste complète des erreurs peut être utile pour effectuer une analyse plus approfondie. Pour télécharger une liste complète des erreurs et avertissements, vous devez d’abord envoyer une requête pour la session d’importation la plus récente (consultez la section ci-dessus).
Vous pouvez demander que le rapport d’erreur complet soit généré pour un ID de session d’importation précis.
Requête
GET https://graph.facebook.com/vX.X/{upload-session-id}/?fields=error_report
Réponse
{ "error_report": { "report_status": "WRITE_FINISHED", "file_handle": "{link-to-the-file-location}" }, "id": "493476498092860" }
Elle devrait contenir une URL que vous pouvez télécharger (par exemple, avec wget, curl, etc.). Le fichier téléchargé contiendra le rapport d’erreur complet.
Si vous obtenez l’erreur « Cannot access an object not managed by the business owning this app » (Impossible d’accéder à un objet qui n’est pas géré par l’entreprise propriétaire de cette application), vérifiez que l’application que vous utilisez appartient à l’entreprise. Pour ce faire, accédez à Paramètres de l’entreprise > Compte > Applications.
Si le rapport n’est pas prêt, réitérez le dernier appel après quelques secondes d’attente. Vous pouvez ensuite télécharger le rapport.
Lorsque vous avez envoyé votre demande, utilisez GET /{upload_session_id}?fields=error_report
pour obtenir l’état du rapport d’erreur.
Exemple
curl -i -X GET \ https://graph.intern.facebook.com/<API_VERSION>/<upload session ID>?fields=error_report&access_token=ACCESS_TOKEN
Réponse
{ "error_report": { "report_status": string, "file_handle": string, // if available } "id": "332552650711532 (https://developers.intern.facebook.com/tools/explorer/690422434302374?method=GET&path=332552650711532%3Ffields%3Derror_report&version=v3.2#)" }
Valeur | Description |
---|---|
| Le rapport d’erreur pour cette importation du flux de données n’a pas été demandé. |
| La demande a été reçue et est en cours de traitement. |
| Le rapport a été créé et va bientôt être converti au format CSV. |
| Le fichier du rapport a été créé et est prêt à être téléchargé. |
| Aucune donnée n’a été trouvée pour cette session d’importation de flux de données. Il est probable qu’aucun article n’ait été traité pour cette importation de flux. |
| Le rapport d’erreur date de plus de 30 jours et n’est plus disponible. |
| Une erreur s’est produite de notre côté en essayant de préparer ce rapport d’erreur. Vous pouvez réessayer de demander un rapport d’erreur. |
Remarque : une URL CDN utilisant ce rapport d’erreur peut être téléchargée et sera renvoyée en tant que « file_handle » lorsque le statut du rapport d’erreur (error_report
) sera WRITE_FINISHED
.
Lisez la documentation sur les erreurs d’importation des flux de produits. Consultez également Traiter les erreurs d’importation des flux de produits, plateforme commerciale.
Pour obtenir les erreurs et avertissements concernant l’importation d’un flux de produits, vous devez d’abord envoyer une requête concernant les sessions d’importation récentes.
GET https://graph.facebook.com/vX.X/{product-feed-id}/uploads Token: PAGE_ACCESS_TOKEN
Ensuite, vous devez utiliser upload_session_id
pour récupérer les erreurs et les avertissements.
GET https://graph.facebook.com/vX.X/{upload-session-id}/errors Token: PAGE_ACCESS_TOKEN
Une gravité fatal
indique que Meta ne peut pas intégrer l’article, tandis qu’une gravité warning
signale que certains attributs recommandés sont manquants ou mal formulés.
{ "data": [ { "id": 1510567479166488, "summary": "A required field is missing: price.", "description": "Products need to have prices to run in ads. Include a price for each product in your data feed file and upload it again. Prices must include cost and an ISO currency code (for example: 10 USD instead of $10 for American dollars).", "severity": "fatal", "samples": { "data": [ { "row_number": 2, "retailer_id": "yj9bpbpub5t8t22kgbq6", "id": "1677559492523068" }, { "row_number": 5, "retailer_id": "ujn33tvbyv2vmdpo7ecb", "id": "1529743440653137" } ] } }, { "id": 275241589314958, "summary": "GTIN is incorrectly formatted", "description": "Check that the GTIN (Global Trade Identification Number) for each of your products is in the correct format. Accepted types include UPC, EAN, JAN, and ISBN.", "severity": "warning", "samples": { "data": [ { "row_number": 4, "retailer_id": "bxwb1pho9o43uxjxikcg", "id": "538700559625644" } ] } } ] }
Lisez la documentation sur les erreurs d’importation des flux de produits. Consultez également Comment gérer les erreurs d’importation des flux de produits, publicités de catalogue Advantage+.
Nous vous recommandons de vérifier les erreurs et les avertissements d’importation du catalogue après chaque session d’importation. Pour ce faire, accédez à la section Diagnostic de votre Gestionnaire des ventes, ou utilisez l’API Feed pour demander un aperçu des erreurs et avertissements. Commencez par envoyer une requête pour les sessions d’importation récentes.
Accédez à Blueprint pour en savoir plus sur la résolution des avertissements et des erreurs du diagnostic dans le Gestionnaire des ventes.
GET https://graph.facebook.com/vX.X/{product-feed-id}/uploads
{ "data": [ { "id": "493476498092860", "start_time": "2019-07-15T12:38:36+0000", "end_time": "2019-07-15T12:38:47+0000" } ] }
Ensuite, utilisez la valeur renvoyée dans le champ id
pour récupérer un aperçu des erreurs et avertissements.
GET https://graph.facebook.com/vX.X/{upload-session-id}/errors
Une gravité fatal
indique que Meta ne peut pas intégrer l’article, tandis qu’une gravité warning
signale que certains attributs recommandés sont manquants ou mal formulés.
{ "data": [ { "id": 1510567479166488, "summary": "A required field is missing: price.", "description": "Products need to have prices to run in ads. Include a price for each product in your data feed file and upload it again. Prices must include cost and an ISO currency code (for example: 10 USD instead of $10 for American dollars).", "severity": "fatal", "samples": { "data": [ { "row_number": 2, "retailer_id": "yj9bpbpub5t8t22kgbq6", "id": "1677559492523068" }, { "row_number": 5, "retailer_id": "ujn33tvbyv2vmdpo7ecb", "id": "1529743440653137" } ] } }, { "id": 275241589314958, "summary": "GTIN is incorrectly formatted", "description": "Check that the GTIN (Global Trade Identification Number) for each of your products is in the correct format. Accepted types include UPC, EAN, JAN, and ISBN.", "severity": "warning", "samples": { "data": [ { "row_number": 4, "retailer_id": "bxwb1pho9o43uxjxikcg", "id": "538700559625644" } ] } } ] }