Products API

Products API offre une grande flexibilité et plus de contrôle sur plus de 60 attributs de produit. Ces attributs sont désignés ensemble comme la ressource "Products". Plusieurs champs sont obligatoires et doivent être définis pour que l'affichage du produit sur Google Shopping soit approuvé. Des champs facultatifs peuvent devenir obligatoires en fonction de divers facteurs, tels que l'emplacement du marchand, le type de produit, l'utilisation de variantes de produits et d'offres groupées, etc. Pour en savoir plus sur l'ensemble des paramètres facultatifs pouvant être configurés pour les produits, consultez les spécifications des données produit.

L'API Products nous permet d'insérer, d'obtenir et de supprimer un produit (à l'aide des méthodes insert, get et delete), ainsi que de répertorier (méthode list) tous les produits de la base de données Merchant Center.

L'API productstatuses permet de vérifier si un produit spécifique est approuvé ou refusé pour une destination. Consultez le guide consacré à Product Statuses API pour en savoir plus sur les produits susceptibles de présenter des problèmes de qualité des données et sur la nature de ces problèmes.

Dans nos exemples d'API, nous utiliserons trois produits, deux t-shirts Google et une casquette Google. Nous utilisons un minimum de données produit dans le tableau ci-dessous pour les appels de Products API permettant d'insérer, d'obtenir, de répertorier et de supprimer des produits individuels et des lots de produits.

Bonne pratique : Nous vous recommandons de configurer les informations sur la livraison et les taxes dans Merchant Center, plutôt qu'au niveau du produit.

id [identifiant] online:en:US:1111111111 online:en:US:2222222222 online:en:US:3333333333
offerId [identifiant de l'offre] 1111111111 2222222222 3333333333
title [titre] T-shirt Google noir T-shirt Google vert Casquette sergée Google
description T-shirt Google noir T-shirt Google 100 % coton Casquette Google classique
item group ID [identifiant de groupe d'articles] google_tee google_tee
link [lien] http://my.site.com/blacktee http://my.site.com/greentee http://my.site.com/blackhat
condition [état] Neuf Neuf Neuf
price [prix] 21,99 EUR 21,99 EUR 10,99 EUR
availability [disponibilité] En stock En stock En stock
imageLink [lien image] https://shop.example.com/store/20160512512/assets/items/images/GGOEGXXX1100.jpg https://shop.example.com/store/20160512512/assets/items/images/GGOEGXXX0906.jpg https://shop.example.com/store/20160512512/assets/items/images/GGOEGHPB071610.jpg
gtin [gtin] 9504000059422 9504000059446 9504000059452
mpn [référence_fabricant] 00638NIC 00638ANG 00638ABC
brand [marque] Google Google Google
Google product category [catégorie de produits Google] Apparel & Accessories > Clothing [Vêtements et accessoires > Vêtements] Apparel & Accessories > Clothing [Vêtements et accessoires > Vêtements] Apparel & Accessories > Clothing Accessories > Hats [Vêtements et accessoires > Accessoires vestimentaires > Chapeaux]
color [couleur] noir vert noir
size [taille] L M M
age_group [tranche_d'âge] adultes adultes adultes
gender [sexe] homme homme unisexe
included_destination [destination_incluse] Shopping Actions, annonces Shopping Shopping Actions, annonces Shopping Shopping Actions

Products.Insert

Pour insérer un produit, utilisez l'URL de requête suivante, en indiquant votre ID de marchand et un extrait de corps JSON. La méthode "insert" permet de créer un produit. Si des valeurs sont définies pour les attributs channel, contentLanguage, offerId et targetCountry pour un produit donné, cette méthode met à jour l'entrée concernée et remplace toutes les données des appels d'API précédents pour ce produit.

L'exemple ci-dessous insère un nouveau "T-shirt Google noir" à la liste des produits disponibles.

POST https://www.googleapis.com/content/v2.1/{merchantId}/products

Exemple de corps de requête pour products.insert :

{
 "kind": "content#product",
 "offerId": "1111111111",
 "title": "Google Tee Black",
 "description": "The Black Google Tee is available in unisex sizing and features a retail fit.",
 "link": "http://my.site.com/blacktee/",
 "imageLink": "https://shop.example.com/.../images/GGOEGXXX1100.jpg",
 "contentLanguage": "en",
 "targetCountry": "US",
 "channel": "online",
 "ageGroup": "adult",
 "availability": "in stock",
 "availabilityDate": "2019-01-25T13:00:00-08:00",
 "brand": "Google",
 "color": "black",
 "condition": "new",
 "gender": "male",
 "googleProductCategory": "1604",
 "gtin": "608802531656",
 "itemGroupId": "google_tee",
 "mpn": "608802531656",
 "price": {
  "value": "21.99",
  "currency": "USD"
 },
 "sizes": [
  "Large"
 ]
}

Des attributs personnalisés peuvent également être définis pour un produit dans le corps de la requête JSON. Par exemple, nous pouvons définir un attribut purchase_quantity_limit pour un seul produit afin de limiter le nombre d'articles qu'un client peut commander, comme suit :

"customAttributes": [
 {
   "name": "purchase_quantity_limit",
   "type": "int",
   "value": "4"
 }
]

Notez que l'attribut personnalisé purchase_quantity_limit permet de définir une limite d'achat par commande de client pour la définition de produit, et qu'il est également accepté dans les flux. Il est actuellement en version bêta jusqu'à ce qu'il soit entièrement compatible avec l'API. Les marchands peuvent ajouter des attributs personnalisés supplémentaires, mais ces derniers ne font l'objet d'aucun traitement spécifique par les API.

Les appels réussis renvoient un code HTTP 200 et un corps de réponse avec la ressource "Products" créée ci-dessous :

{
 "kind": "content#product",
 "id": "online:en:US:1111111111",
 "offerId": "1111111111",
 "title": "Google Tee Black",
 "description": "The Black Google Tee is available in unisex sizing and features a retail fit.",
 "link": "http://my.site.com/blacktee/",
 "imageLink": "https://shop.example.com/.../images/GGOEGXXX1100.jpg",
 "contentLanguage": "en",
 "targetCountry": "US",
 "channel": "online",
 "ageGroup": "adult",
 "availability": "in stock",
 "availabilityDate": "2019-01-25T13:00:00-08:00",
 "brand": "Google",
 "color": "black",
 "condition": "new",
 "gender": "male",
 "googleProductCategory": "1604",
 "gtin": "608802531656",
 "itemGroupId": "google_tee",
 "mpn": "608802531656",
 "price": {
  "value": "21.99",
  "currency": "USD"
 },
 "sizes": [
  "Large"
 ],
 "destinations": [
  {
   "destinationName": "Shopping",
   "intention": "required"
  }
 ]
}

Products.Get

Pour récupérer des informations sur un produit spécifique figurant dans la base de données Merchant Center, utilisez la méthode products.get. Il peut s'écouler quelques minutes avant qu'un produit nouvellement inséré soit disponible via l'appel d'API products.get.

Saisissez l'URL de requête HTTP et les paramètres ci-dessous, votre ID de marchand et l'identifiant (identifiant REST) du produit que vous souhaitez récupérer :

GET https://www.googleapis.com/content/v2.1/{merchantId}/products/{productId}

Les appels réussis renvoient un code HTTP 200 et la ressource "Products" dans le corps de la réponse. Par exemple, les informations suivantes ont bien été renvoyées par l'identifiant produit online:en:US:1111111111 :

{
 "kind": "content#product",
 "id": "online:en:US:1111111111",
 "offerId": "1111111111",
 "source": "api",
 "title": "Google Tee Black",
 "description": "The Black Google Tee is available in unisex sizing and features a retail fit.",
 "link": "http://my.site.com/blacktee/",
 "imageLink": "https://shop.example.com/.../images/GGOEGXXX1100.jpg",
 "contentLanguage": "en",
 "targetCountry": "US",
 "channel": "online",
 "ageGroup": "adult",
 "availability": "in stock",
 "availabilityDate": "2019-01-25T13:00:00-08:00",
 "brand": "Google",
 "color": "black",
 "condition": "new",
 "gender": "male",
 "googleProductCategory": "1604",
 "gtin": "608802531656",
 "itemGroupId": "google_tee",
 "mpn": "608802531656",
 "price": {
  "value": "21.99",
  "currency": "USD"
 },
 "sizes": [
  "Large"
 ],
 "destinations": [
  {
   "destinationName": "Shopping",
   "intention": "required"
  }
 ]
}

Products.Delete

Pour supprimer un produit, exécutez la méthode products.delete en indiquant l'exemple d'URL de requête HTTP, votre ID de marchand et l'identifiant produit (identifiant REST au format online:en:US:1111111111) :

DELETE https://www.googleapis.com/content/v2.1/{merchantId}/products/{productId}

Les appels réussis renvoient le code HTTP Status 204 avec un corps de réponse vide.

Products.List

La méthode products.list permet de répertorier tous les produits figurant dans la base de données Merchant Center d'un marchand. Pour ce faire, saisissez l'URL de requête suivante :

GET https://www.googleapis.com/content/v2.1/{merchantId}/products

Les appels réussis renvoient le code HTTP 200 avec un corps de réponse, où une ressource "Products" dans le corps JSON représente les données d'un seul produit.

Les trois exemples de produits suivants sont renvoyés :

{
 "kind": "content#productsListResponse",
 "resources": [
  {
   "kind": "content#product",
   "id": "online:en:US:1111111111",
   "offerId": "1111111111",
   "source": "api",
   "title": "Google Tee Black",
   "description": "The Black Google Tee is available in unisex sizing and features a retail fit.",
   "link": "http://my.site.com/blacktee/",
   "imageLink": "https://shop.example.com/.../images/GGOEGXXX1100.jpg",
   "contentLanguage": "en",
   "targetCountry": "US",
   "channel": "online",
   "ageGroup": "adult",
   "availability": "in stock",
   "availabilityDate": "2019-01-25T13:00:00-08:00",
   "brand": "Google",
   "color": "black",
   "condition": "new",
   "gender": "male",
   "googleProductCategory": "1604",
   "gtin": "608802531656",
   "itemGroupId": "google_tee",
   "mpn": "608802531656",
   "price": {
    "value": "21.99",
    "currency": "USD"
   },
   "sizes": [
    "Large"
   ],
   "destinations": [
    {
     "destinationName": "Shopping",
     "intention": "required"
    }
   ]
  },
  {
   "kind": "content#product",
   "id": "online:en:US:2222222222",
   "offerId": "2222222222",
   "source": "api",
   "title": "Google Tee Green",
   "description": "100% cotton jersey fabric sets this Google t-shirt above the crowd.
   Features the google logo across the chest. Unisex sizing.",
   "link": "http://my.site.com/greentee/",
   "imageLink": "https://shop.example.com/.../images/GGOEGXXX0906.jpg",
   "contentLanguage": "en",
   "targetCountry": "US",
   "channel": "online",
   "ageGroup": "adult",
   "availability": "in stock",
   "availabilityDate": "2019-01-25T13:00:00-08:00",
   "brand": "Google",
   "color": "green",
   "condition": "new",
   "gender": "male",
   "googleProductCategory": "1604",
   "gtin": "608802531649",
   "itemGroupId": "google_tee",
   "mpn": "608802531649",
   "price": {
    "value": "21.99",
    "currency": "USD"
   },
   "sizes": [
    "Medium"
   ],
   "destinations": [
    {
     "destinationName": "Shopping",
     "intention": "required"
    }
   ]
  },
  {
   "kind": "content#product",
   "id": "online:en:US:3333333333",
   "offerId": "3333333333",
   "source": "api",
   "title": "Google Twill Cap",
   "description": "Classic urban styling distinguishes this Google cap.
   Retains its shape, even when not being worn.",
   "link": "http://my.site.com/blackhat/",
   "imageLink": "https://shop.example.com/.../images/GGOEGHPB071610.jpg",
   "contentLanguage": "en",
   "targetCountry": "US",
   "channel": "online",
   "ageGroup": "adult",
   "availability": "in stock",
   "availabilityDate": "2019-01-07T13:00:00-08:00",
   "brand": "Google",
   "color": "black",
   "condition": "new",
   "gender": "male",
   "googleProductCategory": "173",
   "gtin": "689355417246",
   "mpn": "689355417246",
   "price": {
    "value": "10.99",
    "currency": "USD"
   },
   "sizes": [
    "Medium"
   ],
   "destinations": [
    {
     "destinationName": "Shopping",
     "intention": "required"
    }
   ]
  }
 ]
}