Les méthodes d'API custombatch
permettent aux marchands d'insérer, de récupérer ou de supprimer (méthodes insert
, get
, ou delete
) plusieurs produits à la fois dans un seul appel d'API, et ainsi de réduire le nombre d'appels d'API effectués.
Saisissez l'URL de requête suivante pour appeler les API custombatch :
POST https://www.googleapis.com/content/v2.1/products/batch
Le corps de la requête contient des paramètres spécifiques : batchId
, merchantID
et method
.
Vous ne devez définir le paramètre productId
que pour exécuter les méthodes "get" ou "delete". Le paramètre productId
n'est pas requis pour un appel d'API custombatch
.
Custombatch:Insert
L'URL de requête suivante permet d'effectuer un appel products.custombatch method=insert
.
POST https://www.googleapis.com/content/v2.1/products/batch
Pour insérer les deux nouveaux produits, nous indiquons une valeur batchId
propre à chaque produit dans cet appel d'API, l'identifiant merchantId
du marchand autorisé à effectuer cet appel d'API, ainsi que la méthode insert
pour cette transaction.
Dans l'exemple ci-dessous, les valeurs batchId
sont 1111
et 1112
, respectivement. Elles identifient de manière unique chaque produit dans cet appel d'API. L'identifiant merchantId: 1234567
doit correspondre au marchand autorisé à effectuer l'appel d'API, et la méthode doit être get
, delete
, ou insert
.
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.
Dans le corps JSON suivant, nous insérons nos deux t-shirts dans la base de données Merchant Center à l'aide d'un seul appel d'API :
{
"entries": [
{
"batchId": 1111,
"merchantId": 1234567,
"method": "insert",
"product": {
"kind": "content#product",
"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"
}
]
}
},
{
"batchId": 1112,
"merchantId": 1234567,
"method": "insert",
"product": {
"kind": "content#product",
"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"
}
]
}
}
]
}
Les appels réussis renvoient un code HTTP 200
et une réponse au format JSON indiquant les produits insérés. La réponse JSON se présente comme suit :
{
"kind": "content#productsCustomBatchResponse",
"entries": [
{
"kind": "content#productsCustomBatchResponseEntry",
"batchId": 1111,
"product": {
"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"
}
]
}
},
{
"kind": "content#productsCustomBatchResponseEntry",
"batchId": 1112,
"product": {
"kind": "content#product",
"id": "online:en:US:2222222222",
"offerId": "2222222222",
"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"
}
]
}
}
]
}
Custombatch:Get
L'URL de requête suivante permet d'effectuer un appel products.custombatch
avec la méthode method=get
:
POST https://www.googleapis.com/content/v2.1/products/batch
Pour récupérer des produits, nous indiquons une valeur batchId
propre à chaque produit dans cet appel d'API, l'identifiant merchantId
du marchand autorisé à effectuer cet appel d'API, la méthode get
pour cette transaction, ainsi que l'identifiant productId
des produits à récupérer.
Voici un exemple de corps de requête JSON permettant de récupérer les deux produits que nous avons insérés à l'aide de l'appel custombatch:insert
, en spécifiant leur identifiant productId
.
La valeur batchId
est unique pour chaque article de la liste :
{
"entries": [
{
"batchId": 1113,
"merchantId": 1234567,
"method": "get",
"productId": "online:en:US:1111111111"
},
{
"batchId": 1114,
"merchantId": 1234567,
"method": "get",
"productId": "online:en:US:2222222222"
}
]
}
Les appels réussis renvoient un code HTTP 200
avec le corps de réponse suivant :
{
"kind": "content#productsCustomBatchResponse",
"entries": [
{
"kind": "content#productsCustomBatchResponseEntry",
"batchId": 1113,
"product": {
"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#productsCustomBatchResponseEntry",
"batchId": 1114,
"product": {
"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"
}
]
}
}
]
}
Custombatch:Delete
L'URL de requête suivante permet d'effectuer un appel products.custombatch
avec la méthode method=delete
:
POST https://www.googleapis.com/content/v2.1/products/batch
Pour supprimer des produits, nous indiquons une valeur batchId
propre à chaque produit dans cet appel d'API, l'identifiant merchantId
du marchand autorisé à effectuer cet appel d'API, la méthode delete
pour cette transaction, ainsi que l'identifiant productId
des produits à supprimer.
{
"entries": [
{
"batchId": 1115,
"merchantId": 1234567,
"method": "delete",
"productId": "online:en:US:1111111111"
},
{
"batchId": 1116,
"merchantId": 1234567,
"method": "delete",
"productId": "online:en:US:2222222222"
}
]
}
Si l'appel a réussi, un code HTTP 200
est renvoyé avec un corps de réponse indiquant les identifiants batchId
des articles supprimés de la base de données Merchant Center :
{
"kind": "content#productsCustomBatchResponse",
"entries": [
{
"kind": "content#productsCustomBatchResponseEntry",
"batchId": 1115
},
{
"kind": "content#productsCustomBatchResponseEntry",
"batchId": 1116
}
]
}