Ürün fiyatlandırması ve kullanılabilirliğini güncelleştirme
Not
Envanter API'sini yalnızca kapalı pilot katılımcılar kullanabilir. API ve belgeler değiştirilebilir.
Tek yapmanız gereken Bing Satıcı Merkezi (BMC) mağazanızdaki bir ürünün fiyatlandırmasını ve kullanılabilirliğini güncelleştirmekse Ürün kaynağı yerine Stok kaynağını kullanmanız gerekir. Ürün kaynağıyla, ürünün tüm ayrıntılarını sağlamanız gerekir, ancak Stok kaynağı yalnızca fiyat ve kullanılabilirlik belirtmenize olanak tanır.
Tek bir ürünü güncelleştirme
Tek bir ürünü güncelleştirmek için bir HTTP POST isteğinde şablonu kullanın /bmc/{bmcMerchantId}/inventory/{storeCode}/products/{productUniqueId}
. {bmcMerchantId} değerini mağaza kimliğinize, {storeCode} öğesini çevrimiçi olarak ve {productUniqueId} değerini de ürünün tam kimliğine ayarlayın.
İsteğin gövdesi yalnızca aşağıdaki alanları içeren bir Product nesnesidir:
- Fiyat
- Kullanılabilir -lik
- salePrice
- salePriceEffectiveDate
price
ve availability
alanları gereklidir; her iki alanı da belirtmezseniz çağrı başarısız olur.
salePrice
ve salePriceEffectiveDate
isteğe bağlıdır. Bunları belirtmezseniz ürünün geçerli satış fiyatı ve geçerlilik tarihi değerleri tekliften kaldırılır.
Aşağıda örnek bir POST isteği gösterilmektedir.
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
}
}
İstek başarılı olursa Konum üst bilgisinde 200 durum kodunu ve güncelleştirilmiş ürünün URI'sini döndürür.
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"
}
Yanıt başarısız olursa istek 400 durum kodunu döndürür; gövde, sorunu tanımlayan bir hata yanıtı nesnesi içerir.
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"
}
}
Tek bir ürünü güncelleştirmek için Stok kaynağının nasıl kullanılacağını gösteren kod için bkz . Tek bir ürünün fiyatlandırmasını ve kullanılabilirliğini güncelleştirme.
Birden çok ürünü güncelleştirme
Birden çok ürünü güncelleştirmek için bir HTTP POST isteğinde şablonu kullanın /bmc/{bmcMerchantId}/inventory/batch
. {bmcMerchantId} öğesini mağaza kimliğiniz olarak ayarlayın.
İsteğin gövdesi, güncelleştirilecek en fazla 400 ürün içerebilen bir Batch nesnesidir. Toplu işteki her giriş kullanıcı tanımlı bir toplu iş kimliği, çevrimiçi olarak ayarlanmış bir mağaza kodu, ürünün tam kimliği ve güncelleştirilecek ürünün fiyatlandırma ve kullanılabilirlik alanlarını sağlar. Product nesnesi yalnızca aşağıdaki alanları içerebilir:
- Fiyat
- Kullanılabilir -lik
- salePrice
- salePriceEffectiveDate
price
ve availability
alanları gereklidir; her iki alanı da belirtmezseniz çağrı başarısız olur.
salePrice
ve salePriceEffectiveDate
isteğe bağlıdır. Bunları belirtmezseniz ürünün geçerli satış fiyatı ve geçerlilik tarihi değerleri tekliften kaldırılır.
Aşağıda örnek bir POST isteği gösterilmektedir.
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
}
}
}
]
}
İstek toplu iş içindeki her ürünü güncelleştirmeye çalıştığından, durum kodu 200 döndürür. Güncelleştirmenin başarısız olup olmadığını belirlemek için toplu işteki tüm girdileri yinelemeniz gerekir. Girdi alanı içeriyorsa errors
güncelleştirme başarısız oldu; aksi takdirde başarılı oldu.
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"
}
]
}
}
]
}
Bir ürün grubunu güncelleştirmek için Stok kaynağının nasıl kullanılacağını gösteren kod için bkz . Bir ürün grubu için fiyatlandırma ve kullanılabilirliği güncelleştirme.