您可以使用補充動態饋給,對產品資料進行局部更新,方法是在呼叫 products.insert
、products.delete
、products.custombatch.insert
和 products.custombatch.delete
方法時,將 feedId
新增為查詢參數。
舉例來說,您可以對下列網址發出 products.insert
補充動態饋給方法呼叫:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
products.insert
補充動態饋給 products.insert
方法會新增您在要求主體中傳送的產品欄位,並覆寫現有的欄位 (如有)。使用補充動態饋給時,這個方法會維持所有其他產品欄位,除非已在先前相同動態饋給的要求中加入這些欄位。透過其他動態饋給新增的資料不會受到影響,但每項要求都會覆寫先前針對相同動態饋給提出的要求。也就是說,如果您透過補充動態饋給要求新增或更新欄位,且後續要求中並未納入該欄位,系統會從動態饋給中移除省略欄位的資料。這個行為與在不使用補充動態饋給的情況下呼叫 products.insert
不同。後者會刪除所有現有產品資料,並替換成您在要求主體中傳送的欄位。
請使用以下網址向補充動態饋給 Product.insert
服務提出要求:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
您必須在要求主體中加入 offerId
、feedLabel
、channel
和 contentLanguage
欄位。所有其他欄位皆為選填。
範例
如要將產品的供應情形從「有現貨」變更為「缺貨中」,您可以使用下列要求主體建立補充動態饋給Product.insert
方法呼叫:
{
"offerId": "1111111111",
"contentLanguage": "en",
"feedLabel": "US",
"channel": "online",
"availability": "out of stock",
}
products.delete
products.delete
方法會使用指定的補充動態饋給,移除先前由 products.insert
呼叫新增的所有補充資料。針對補充動態饋給呼叫此方法,並不會影響在補充動態饋給 Product.insert
呼叫之前新增的原始產品資料。不妨想成像移除特定動態饋給的某一層資料;透過其他動態饋給新增的資料不會受到影響,而且在加入補充動態饋給層之前,產品會有效地還原至先前的狀態。這與在不使用補充動態饋給的情況下呼叫 products.delete
不同,後者會刪除整個產品及其所有資料。
使用下列網址來要求補充動態饋給 products.delete
服務,其中 productId
是產品的 REST ID,以 channel:contentLanguage:feedLabel:offerId
表示:
DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId?feedId=feedId
補充動態饋給 products.delete
方法呼叫不需要要求主體。
products.custombatch
custombatch
方法可讓您透過單一 API 呼叫,為多項產品 insert
或 delete
補充動態饋給資料,盡量減少 API 呼叫次數。
請使用下列要求網址進行 custombatch
呼叫:
https://shoppingcontent.googleapis.com/content/v2.1/products/batch
所有補充動態饋給 custombatch
呼叫都必須在要求主體中加入 batchId
、merchantID
、method
和 feedId
參數。
products.custombatch:insert
向 products.custombatch:insert
方法發出補充動態饋給呼叫時,除了必要的 batchId
、merchantID
和 method
參數外,您還必須在要求主體中加入 offerId
、feedLabel
、channel
和 contentLanguage
。所有其他產品欄位皆為選填。
範例
如要更新兩個現有產品的 price
值,您可以使用下列要求發出 products.custombatch:insert
方法呼叫:
{
"entries": [
{
"batchId": 1111,
"merchantId": 1234567,
"method": "insert",
"feedId": "7654321",
"product": {
"offerId": "1111111111",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"price": {
"value": "30.99",
"currency": "USD"
}
}
},
{
"batchId": 1112,
"merchantId": 1234567,
"method": "insert",
"feedId": "7654321",
"product": {
"offerId": "2222222222",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"price": {
"value": "33.99",
"currency": "USD"
},
},
}
}
products.custombatch:delete
如要移除透過指定的補充動態饋給對兩項產品進行的所有更新,您可以使用下列要求來發出 products.custombatch:delete
方法呼叫:
{
"entries": [
{
"batchId": 1115,
"merchantId": 1234567,
"method": "delete",
"feedId": "7654321",
"productId": "online:en:US:1111111111"
},
{
"batchId": 1116,
"merchantId": 1234567,
"method": "delete",
"feedId": "7654321",
"productId": "online:en:US:2222222222"
}
]
}