products.insert
, products.delete
, products.custombatch.insert
ve products.custombatch.delete
yöntemlerine çağrı yaparken sorgu parametresi olarak feedId
ekleyerek ürün verilerinde kısmi güncellemeler yapmak için ek feed'lerden yararlanabilirsiniz.
Örneğin, aşağıdaki URL'ye products.insert
ek feed yöntemi çağrısı yapabilirsiniz:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
products.insert
Ek feed products.insert
yöntemi, istek gövdesine gönderdiğiniz ürün alanlarını ekleyerek bu alanların (varsa) üzerine yazılır. Ek feed kullanılırken bu yöntem, aynı feed'e yönelik önceki bir isteğe dahil edilmemiş alanlar olmadığı sürece diğer tüm ürün alanlarını değiştirmeden bırakır. Diğer feed'ler aracılığıyla eklenen veriler etkilenmez ancak her istek, aynı feed için önceki isteklerin üzerine yazar. Yani ek feed isteği aracılığıyla bir alan ekler veya güncellerseniz ve daha sonra bu alanı sonraki bir isteğe dahil etmezseniz çıkarılan alana ait veriler feed'den kaldırılır. Bu davranış, ek feed olmadan products.insert
çağrılmasından farklıdır. Ek feed olmadan, mevcut tüm ürün verileri silinir ve istek gövdesinde gönderdiğiniz alanlarla değiştirilir.
Ek feed Product.insert
hizmetine istek göndermek için aşağıdaki URL'yi kullanın:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
İstek gövdesine offerId
, feedLabel
, channel
ve contentLanguage
alanlarını eklemeniz gerekir. Diğer tüm alanlar isteğe bağlıdır.
Örnek
Bir ürünün "stokta" olan stok durumunu "stokta yok" olarak değiştirmek için aşağıdaki istek gövdesini kullanarak ek feed Product.insert
yöntem çağrısı yapabilirsiniz:
{
"offerId": "1111111111",
"contentLanguage": "en",
"feedLabel": "US",
"channel": "online",
"availability": "out of stock",
}
products.delete
products.delete
yöntemi, belirtilen ek feed kullanılarak daha önce products.insert
çağrıları tarafından eklenen tüm ek verileri kaldırır. Bu yöntemi ek feed için çağırmak, ek feed Product.insert
çağrısı yapılmadan önce eklenen orijinal ürün verilerini etkilemez. Bu işlemi, belirli bir feed'in veri katmanını kaldırmak gibi düşünebilirsiniz. Diğer feed'ler aracılığıyla eklenen veriler bundan etkilenmez ve ürün, ek feed katmanı eklenmeden önceki durumuna etkili şekilde geri döner. Bu, ek feed olmadan products.delete
işlevinin çağrılmasından farklıdır. Ek feed, ürünün tamamını ve tüm verilerini siler.
products.delete
ek feed hizmeti için istekte bulunmak üzere aşağıdaki URL'yi kullanın. Burada productId
, ürünün REST kimliğidir ve channel:contentLanguage:feedLabel:offerId
şeklinde gösterilir:
DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId?feedId=feedId
Ek feed'lerin products.delete
yöntem çağrıları için istek gövdesine gerek yoktur.
products.custombatch
custombatch
yöntemleriyle, tek bir API çağrısı kullanarak birden fazla ürün için insert
veya delete
ek feed verileri oluşturarak yapılan API çağrısı sayısını en aza indirebilirsiniz.
Bir custombatch
çağrısı yapmak için aşağıdaki istek URL'sini kullanın:
https://shoppingcontent.googleapis.com/content/v2.1/products/batch
Tüm ek feed custombatch
çağrıları için istek gövdesine batchId
, merchantID
, method
ve feedId
parametrelerini dahil etmeniz gerekir.
products.custombatch:insert
products.custombatch:insert
yöntemine ek feed çağrıları yaparken, gerekli batchId
, merchantID
ve method
parametrelerine ek olarak istek gövdesine offerId
, feedLabel
, channel
ve contentLanguage
parametrelerini eklemeniz gerekir. Diğer tüm ürün alanları isteğe bağlıdır.
Örnek
Mevcut iki ürünün price
değerini güncellemek için aşağıdaki isteği kullanarak products.custombatch:insert
yöntem çağrısı yapabilirsiniz:
{
"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
Belirli bir ek feed aracılığıyla iki üründe yapılan tüm güncellemeleri kaldırmak isterseniz aşağıdaki isteği kullanarak products.custombatch:delete
yöntem çağrısı yapabilirsiniz:
{
"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"
}
]
}