補助フィードを使用すると、
feedIdをクエリ パラメータとして追加することで、商品データを部分的に更新できます。
products.insert、
products.delete、
products.custombatch.insert、
および
products.custombatch.delete
メソッドを呼び出すときに
たとえば、次の URL に対して products.insert 補助フィード メソッド呼び出しを行うことができます。
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
products.insert
補助フィードの products.insert メソッドは、リクエスト本文で送信した商品フィールドを追加します。これらのフィールドがすでに存在する場合は、上書きされます。補助フィードを使用する場合、このメソッドは、同じフィードに対する以前のリクエストにフィールドが含まれていない限り、他のすべての商品フィールドを変更しません。他のフィードから追加されたデータは影響を受けませんが、リクエストごとに同じフィードに対する以前のリクエストが上書きされます。つまり、補助フィードのリクエストでフィールドを追加または更新し、後続のリクエストにそのフィールドを含めなかった場合、省略されたフィールドのデータはフィードから削除されます。この動作は、補助フィードなしで products.insert を呼び出す場合とは異なります。補助フィードなしで呼び出すと、既存の商品データがすべて削除され、リクエスト本文で送信したフィールドに置き換えられます。
補助フィードの Product.insert サービスにリクエストを送信するには、次の URL を使用します。
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
サービスにリクエストを送信するには、次の URL を使用します。ここで、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 メソッドを使用すると、1 回の API 呼び出しで複数の商品の補助フィードデータを insert または delete
して、API 呼び出しの数を最小限に抑えることができます。
リクエスト URL を使用して 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 を含める必要があります。他の商品フィールドはすべて省略可能です。
例
既存の 2 つの商品の 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
指定した補助フィードを使用して 2 つの商品に加えられたすべての更新を削除するには、次のリクエストを使用して 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"
}
]
}