États des produits

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Vous pouvez utiliser la ressource productstatuses pour afficher des informations sur l'état de vos produits Shopping. La méthode list renvoie tous les produits, qu'ils soient valides ou non. Nous vous recommandons d'appeler régulièrement la ressource productstatuses pour identifier les problèmes liés à vos produits.

Pour en savoir plus sur les problèmes courants, consultez cette documentation de référence.

Les marchands sont tenus de respecter les règles concernant les annonces Shopping et les fiches gratuites. Google Shopping se réserve le droit de faire appliquer ces règles et de prendre les mesures appropriées si nous détectons un contenu ou un comportement qui n'y est pas conforme.

Vous ne recevrez pas d'état pour votre produit si votre compte n'est inscrit à aucune destination.

Vous n'en recevrez pas non plus si vous ne fournissez pas de code pays valide de l'une des façons suivantes :

  • Dans le champ feedLabel
  • Dans le champ shipping
  • Au niveau du flux
  • Dans les paramètres de livraison de votre compte

productstatuses.get

La méthode productstatuses.get permet de récupérer l'état de la qualité des données d'un produit.

GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantID}/productstatuses/{productId}?destinations=Shopping&fields=productId%2Ctitle

Les paramètres d'URL facultatifs pour la méthode productstatuses.get sont les suivants :

{merchantID}
ID du marchand.
{productID}
Identifiant produit. Pour voir un exemple d'identifiant produit, reportez-vous à l'attribut "Identifiant REST" dans le guide Identifiant produit.
destinations
Liste des destinations séparées par une virgule. La valeur par défaut est Shopping, ce qui correspond au programme des annonces Shopping.

Voici un exemple de réponse JSON à un appel de la méthode productstatuses.get :

{
"kind": "content#productStatus",
"productId": "online:en:US:63",
"title": "Third Product",
"link": "http://examplemenc.com/",
"destinationStatuses": [
 {
   "destination": "Shopping",
   "status": "disapproved",
   "disapprovedCountries": [
            "US", "UK"
   ]
 },
 {
   "destination": "ShoppingActions",
   "status": "disapproved",
   "disapprovedCountries": [
            "US"
   ]
 },
 {
   "destination": "SurfacesAcrossGoogle",
   "status": "disapproved",
   "disapprovedCountries": [
            "US"
   ]
 }
],
"itemLevelIssues": [
 {
  "code": "strong_id_inaccurate",
  "servability": "disapproved",
  "resolution": "merchant_action",
  "attributeName": "mpn",
  "destination": "Shopping",
  "description": "Incorrect product identifier [mpn]",
  "detail": "Use the manufacturer's product identifiers (GTIN, brand, MPN)",
  "documentation": "https://support.google.com/merchants/answer/160161",
  "applicableCountries": [
            "US", "UK"
  ]
 },
 {
  "code": "image_link_internal_error",
  "servability": "disapproved",
  "resolution": "merchant_action",
  "attributeName": "image link",
  "destination": "Shopping",
  "description": "Processing failed [image link]",
  "detail": "Wait for the product image to be crawled again (up to 3 days)",
  "documentation": "https://support.google.com/merchants/answer/6240184",
  "applicableCountries": [
            "US, UK"
  ]
 },
 {
  "code": "landing_page_error",
  "servability": "disapproved",
  "resolution": "merchant_action",
  "attributeName": "link",
  "destination": "Shopping",
  "description": "Unavailable desktop landing page",
  "detail": "Update your website or landing page URL to enable access from desktop devices",
  "documentation": "https://support.google.com/merchants/answer/6098155",
  "applicableCountries": [
            "US", "UK"
  ]
 },
 {
  "code": "missing_condition_microdata",
  "servability": "unaffected",
  "resolution": "merchant_action",
  "destination": "Shopping",
  "description": "Missing or invalid data [condition]",
  "detail": "Add valid structured data markup to your landing page",
  "documentation": "https://support.google.com/merchants/answer/6183460",
  "applicableCountries": [
            "US", "UK"
  ]
 },
 {
  "code": "mobile_landing_page_error",
  "servability": "disapproved",
  "resolution": "merchant_action",
  "attributeName": "link",
  "destination": "Shopping",
  "description": "Unavailable mobile landing page",
  "detail": "Update your website or landing page URL to enable access from mobile devices",
  "documentation": "https://support.google.com/merchants/answer/6098296",
  "applicableCountries": [
            "US", "UK"
  ]
 }
],
"creationDate": "2019-02-15T20:30:15Z",
"lastUpdateDate": "2019-02-26T16:40:11Z",
"googleExpirationDate": "2019-03-28T16:40:11Z"
}

Ressources

Le corps JSON renvoyé après un appel de la méthode get comporte plusieurs sections. Les informations de base et les états des destinations sont renvoyés pour tous les produits, mais la section présentant les problèmes au niveau des articles n'est renvoyée que pour les produits rencontrant des problèmes. Les informations de base consistent en une série d'attributs individuels, mais les autres sections comportent des blocs d'attributs, car un produit peut présenter plusieurs problèmes.

Informations de base

kind
La valeur de l'attribut kind est toujours content#productStatus pour indiquer le corps de la réponse à un appel productstatuses.
creationDate
Date de création du produit.
lastUpdateDate
Date de la dernière mise à jour du produit.
googleExpirationDate
Date d'expiration du produit.
productId
Identifiant REST du produit.
title
Titre du produit.
link
Lien URL du produit.

États des destinations

destination
Les destinations peuvent être les suivantes :
  • Shopping Ads [Annonces Shopping]
  • Shopping Actions [Shopping Actions]
  • Surfaces Across Google [Diffusion sur différentes plates-formes Google]
  • shopping
approvedCountries
Liste des pays dans lesquels l'offre est approuvée par destination.
pendingCountries
Liste des pays dans lesquels l'offre est en attente par destination.
disapprovedCountries
Liste des pays dans lesquels l'offre est refusée par destination.

Problèmes au niveau des articles

code
Code d'erreur utilisé pour définir le problème.
servability
Indique si le produit apparaît comme :
  • disapproved [refusé], ce qui indique que le problème empêche la diffusion du produit.
  • unaffected [non affecté], ce qui indique que le problème de qualité des données n'empêche pas la diffusion du produit dans le magasin.
resolution
Indique si le marchand peut résoudre le problème.
attributeName
Nom de l'attribut affecté.
destination
Destination affectée.
description
Description du produit.
detail
Informations supplémentaires sur le problème.
documentation
Indique où trouver de la documentation sur le problème.
applicableCountries
Indique les pays dans lesquels le problème affecte le produit.

productstatuses.list

La méthode productstatuses.list permet de récupérer la liste de tous les produits, qu'ils soient valides ou non.

GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantID}/productstatuses?destinations=Shopping&maxResults=3&pageToken=5108b52782905aa9

La méthode productstatuses.list peut comporter les paramètres facultatifs suivants :

destinations

Il s'agit de la destination, Shopping dans cet exemple. L'URL de base est la suivante :

https://shoppingcontent.googleapis.com/content/v2.1
{merchantID}

Vous devez indiquer ici votre ID de marchand.

pageToken

Utilisé pour obtenir la deuxième page et toutes les pages suivantes. Chaque page possède un paramètre nextPageToken que vous utilisez pour obtenir la page suivante dans la séquence.

destinations

Liste des destinations séparées par une virgule. La valeur par défaut est Shopping.

maxResults

Nombre de résultats à renvoyer par page.

Voici un exemple de réponse JSON à un appel productstatuses.list (notez que la ressource renvoyée pour la méthode productstatuses.list est dans un format semblable à celui de l'appel d'API productstatuses.get) :

{
"kind": "content#productstatusesListResponse",
"nextPageToken": "632fd090c95712c6",
"resources": [
 {
   "kind": "content#productStatus",
   "productId": "online:en:US:online-en-US-GGL614",
   "title": "Green Headphones",
   "link": "https://example.com/green-headphones/",
   "destinationStatuses": [
     {
       "destination": "Shopping",
       "status": "disapproved",
       "disapprovedCountries": [
            "US", "UK"
       ]
     },
     {
       "destination": "ShoppingActions",
       "status": "disapproved",
       "disapprovedCountries": [
            "US"
       ]
     },
     {
       "destination": "SurfacesAcrossGoogle",
       "status": "disapproved",
       "disapprovedCountries": [
            "US"
       ]
     }
   ],
   "itemLevelIssues": [
     {
       "code": "mobile_landing_page_crawling_not_allowed",
       "servability": "disapproved",
       "resolution": "merchant_action",
       "attributeName": "link",
       "destination": "Shopping",
       "description": "Mobile page not crawlable due to robots.txt",
       "detail": "Update your robots.txt file to allow user-agents \"Googlebot\" and \"Googlebot-Image\" to crawl your site",
       "documentation": "https://support.google.com/merchants/answer/6098296",
       "applicableCountries": [
            "US"
       ]
     },
     {
       "code": "pending_initial_policy_review",
       "servability": "disapproved",
       "resolution": "pending_processing",
       "destination": "Shopping",
       "description": "Pending initial review",
       "documentation": "https://support.google.com/merchants/answer/2948694",
       "applicableCountries": [
            "US, UK"
       ]
     },
     {
       "code": "ambiguous_gtin",
       "servability": "unaffected",
       "resolution": "merchant_action",
       "attributeName": "gtin",
       "destination": "Shopping",
       "description": "Ambiguous value [gtin]",
       "detail": "Use the full GTIN. Include leading zeroes, and use the full UPC, EAN, JAN, ISBN-13, or ITF-14.",
       "documentation": "https://support.google.com/merchants/answer/7000891",
       "applicableCountries": [
            "US", "UK"
       ]
     }
   ],
   "creationDate": "2020-01-09T15:36:39Z",
   "lastUpdateDate": "2020-01-14T19:17:02Z",
   "googleExpirationDate": "2020-02-13T19:17:02Z"
 },
 {
  "kind": "content#productStatus",
  "productId": "online:en:US:43",
  "title": "Green shirt",
  "link": "https://example.com/shirt-green/",
  "destinationStatuses": [
   {
    "destination": "ShoppingActions",
    "status": "approved",
    "approvedCountries": [
            "US"
    ]
   },
   {
    "destination": "SurfacesAcrossGoogle",
    "status": "approved",
    "approvedCountries": [
            "US"
    ]
   }
  ],
  "creationDate": "2019-01-29T21:14:36Z",
  "lastUpdateDate": "2019-02-21T18:47:44Z",
  "googleExpirationDate": "2019-03-23T18:47:44Z"
 },
 {
  "kind": "content#productStatus",
  "productId": "online:en:US:40",
  "title": "Black hat",
  "link": "https://example.com/hat-black/",
  "destinationStatuses": [
   {
    "destination": "SurfacesAcrossGoogle",
    "status": "approved",
    "approvedCountries": [
            "US"
    ]
   }
  ],
  "creationDate": "2019-01-29T21:14:36Z",
  "lastUpdateDate": "2019-02-21T18:47:44Z",
  "googleExpirationDate": "2019-03-23T18:47:44Z"
 }
]
}

Tester la méthode productstatuses.list

L'appel productstatuses.list peut être testé sans risque en production, car il génère des rapports en lecture seule sur l'état des produits et ne modifie donc aucune donnée.