共用方式為


更新產品定價和可用性

注意事項

清查 API 僅適用于已關閉的試驗參與者。 API 和檔可能會變更。

如果您只需要更新 Bing 商家中心 (BMC) 存放區中產品的定價和可用性,您應該使用 庫存 資源,而不是 產品 資源。 使用產品資源時,您必須提供產品的完整詳細資料,但清查資源可讓您只指定價格和可用性。

更新單一產品

若要更新單一產品,請在 HTTP POST 要求中使用 /bmc/{bmcMerchantId}/inventory/{storeCode}/products/{productUniqueId} 範本。 將 {bmcMerchantId} 設定為您的商店識別碼、將 {storeCode} 設為 線上,並將 {productUniqueId} 設定為產品的完整識別碼。

要求的本文是 Product 物件,其中只包含下欄欄位:

  • 價格
  • 可用 性
  • salePrice
  • salePriceEffectiveDate

priceavailability 欄位是必要的;如果您未同時指定這兩個欄位,呼叫就會失敗。 和 salePricesalePriceEffectiveDate 是選擇性的。 如果您未指定,則產品目前的銷售價格和有效日期值會從供應專案中移除。

下列範例顯示 POST 要求。

POST https://content.api.bingads.microsoft.com/shopping/v9.1/bmc/1234/inventory/online/products/online:en:US:5678 HTTP/1.1
AuthenticationToken: EwAAA3hl...
DeveloperToken: 0417...
Content-Type: application/json
Host: content.api.bingads.microsoft.com
Content-Length: 73

{
    "availability":"out of stock",
    "price":{
        "currency":"USD",
        "value":1234.0
    }
}

如果要求成功,則會在 [位置] 標頭中傳回狀態碼 200 和已更新產品的 URI。

HTTP/1.1 200 OK
Content-Type: application/json
Location: https://content.api.bingads.microsoft.com/shopping.svc/v9.1/bmc/1234/products/online:en:US:5678
WebRequestActivityId: e2c53946-e18c-4302-a40a-6d174429574a
Date: Fri, 09 Nov 2018 20:34:35 GMT
Content-Length: 46

{
  "kind": "content#inventorySetResponse"
}

如果回應失敗,要求會傳回狀態碼 400;本文包含可識別問題 的錯誤回應 物件。

HTTP/1.1 400 Bad Request
Content-Type: application/json
Location: https://content.api.bingads.microsoft.com/shopping.svc/v9.1/bmc/1234/products/online:en:US:5678
WebRequestActivityId: d3d31a3f-8993-428e-858c-730032e32a46
Date: Sat, 10 Nov 2018 14:35:14 GMT
Content-Length: 305

{
  "error": {
    "errors": [
      {
        "reason": "invalid",
        "message": "Invalid value for: availability, stock is not a valid value",
        "domain": "global"
      }
    ],
    "code": "400",
    "message": "Invalid value for: availability, stock is not a valid value"
  }
}

如需示範如何使用清查資源來更新單一產品的範例程式碼,請參閱 更新單一產品的定價和可用性

更新多個產品

若要更新多個產品,請在 HTTP POST 要求中使用 /bmc/{bmcMerchantId}/inventory/batch 範本。 將 {bmcMerchantId} 設定為您的市集識別碼。

要求的本文是 Batch 物件,最多可包含 400 個要更新的產品。 批次中的每個專案都提供使用者定義的批次識別碼、設定為 線上的市集程式碼、產品的完整識別碼,以及要更新的產品定價和可用性欄位。 Product物件可能只包含下欄欄位:

  • 價格
  • 可用 性
  • salePrice
  • salePriceEffectiveDate

priceavailability 欄位是必要的;如果您未同時指定這兩個欄位,呼叫就會失敗。 和 salePricesalePriceEffectiveDate 是選擇性的。 如果您未指定,則產品目前的銷售價格和有效日期值會從供應專案中移除。

下列範例顯示 POST 要求。

POST https://content.api.bingads.microsoft.com/shopping/v9.1/bmc/1234/inventory/batch HTTP/1.1
AuthenticationToken: EwAAA3hl...
DeveloperToken: 0417...
Content-Type: application/json
Host: content.api.bingads.microsoft.com
Content-Length: 194

{
    "entries":[
        {
            "batchId":1,
            "storeCode":"online",
            "productId":"online:en:US:5678",
            "inventory":{
                "availability":"in stock",
                "price":{
                    "currency":"USD",
                    "value":4567.0
                }
            }
        },
        {
            "batchId":2,
            "storeCode":"online",
            "productId":"online:en:US:9012",
            "inventory":{
                "availability":"bad in stock",
                "price":{
                    "currency":"USD",
                    "value":678.0
                }
            }
        }
    ]
}

因為要求會嘗試更新批次中的每個產品,所以會傳回狀態碼 200。 若要判斷更新是否失敗,您必須逐一查看批次中的所有專案。 如果專案包含 欄位, errors 則更新會失敗,否則會成功。

HTTP/1.1 200 OK
Content-Type: application/json
WebRequestActivityId: bf019ef5-fa76-4703-9132-7954b0323c81
Date: Fri, 09 Nov 2018 20:48:15 GMT
Content-Length: 172

{
  "kind": "content#inventoryCustomBatchResponse",
  "entries": [
    {
      "kind": "content#inventoryCustomBatchEntryResponse",
      "batchId": "1"
    },
    {
      "kind": "content#inventoryCustomBatchEntryResponse",
      "batchId": "2",
      "errors": {
        "errors": [
          {
            "reason": "invalid",
            "message": "Invalid value for: availability, bad in stock is not a valid value",
            "domain": "global"
          }
        ]
      }
    }
  ]
}

如需示範如何使用清查資源來更新產品批次的範例程式碼,請參閱 更新產品批次的定價和可用性

另請參閱

管理產品供應專案