J'ai des difficultés à obtenir une demande d'insertion de produit avec l'API google shopping (https://developers.google.com/shopping-content/v2/reference/v2/products/insert). J'envoie une demande de poste authentifié https://www.googleapis.com/content/v2/shop_id/produits DryRun = true mais seulement le statut se: 400 avec le message d'erreur:Ajout de produit via google shopping json L'API 400 doit spécifier le produit
{
"error": {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "[product] INSERT request must specify product"
}
],
"code": 400,
"message": "[product] INSERT request must specify product"
}
}
Ma demande ressemble à ceci (raccourci par souci de concision et ssl crypté)
POST /content/v2/<removed>/products?dryRun=true HTTP/1.1
Host: www.googleapis.com
Content-Length: 2102
accept-encoding: gzip, deflate
authorization: Bearer <removed>
user-agent: Python-httplib2/0.9.1 (gzip)
{
"offerId": 4572,
"gtin": "4048669296057",
"googleProductCategory": "Apparel & Accessories > Clothing",
"targetCountry": "se",
"title": "Puma Sweat Pants",
"onlineOnly": true,
"price": {
"currency": "SEK",
"value": "1337"
},
"channel": "online",
"contentLanguage": "sv",
"brand": "Puma",
"link": "http://example.com/produkt/puma-sweat-pants"
}
Je sais que la requête est correctement authentifiée car je peux supprimer l'authentification et obtenir un message différent. Googles Erreurs courantes Page (https://developers.google.com/shopping-content/v2/how-tos/common-errors) suggère que c'est un traitement par lots, mais ce serait l'url https://www.googleapis.com/content/v2/products/batch