Content API ile ek feed'ler kullanma

products.insert, products.delete, products.custombatch.insert, ve products.custombatch.delete yöntemlerine çağrı yaparken feedId değerini sorgu parametresi olarak ekleyerek ürün verilerinde kısmi güncellemeler yapmak için ek feed'leri kullanabilirsiniz.

Ö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övdesinde gönderdiğiniz ürün alanlarını ekler ve bu alanlar varsa üzerine yazar. Ek feed kullanıldığında, bu yöntem, alanlar aynı feed için önceki bir isteğe dahil edilmediği sürece diğer tüm ürün alanlarını değiştirmez. Diğer feed'ler aracılığıyla eklenen veriler etkilenmezken her istek, aynı feed'e yönelik önceki isteklerin üzerine yazar. Bu nedenle, ek feed isteği aracılığıyla bir alan ekler veya güncellerseniz ve ardından alanı sonraki bir isteğe dahil etmezseniz atlanan alanın verileri feed'den kaldırılır. Bu davranış, ek feed olmadan products.insert çağrısı yapmaktan farklıdır. Ek feed olmadan products.insert çağrısı yapıldığında, 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 stok durumunu "stokta var"dan "stokta yok"a değiştirmek için ek feed'ler Product.insert yöntem çağrısı yapmak üzere aşağıdaki istek gövdesini kullanabilirsiniz:

{
 "offerId": "1111111111",
 "contentLanguage": "en",
 "feedLabel": "US",
 "channel": "online",
 "availability": "out of stock",
}

products.delete

products.delete yöntemi, belirtilen ek feed kullanılarak products.insert çağrılarıyla daha önce eklenen tüm ek verileri kaldırır. Bu yöntemin bir ek feed için çağrılması, ek feed Product.insert çağrıları yapılmadan önce eklenen orijinal ürün verilerini etkilemez. Bu işlemi, belirli bir feed'in veri katmanını kaldırmaya benzetebilirsiniz. Diğer feed'ler aracılığıyla eklenen veriler etkilenmez ve ürün, ek feed katmanı eklenmeden önceki durumuna geri döner. Bu, ek feed olmadan products.delete çağrısı yapmaktan farklıdır. Ek feed olmadan products.delete çağrısı yapıldığında ürünün tamamı ve tüm verileri silinir.

Ek feed products.delete hizmetine istekte bulunmak için aşağıdaki URL'yi kullanın. Burada productId, ürünün REST kimliğidir ve channel:contentLanguage:feedLabel:offerId olarak gösterilir:

DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId?feedId=feedId

Ek feed'ler için products.delete yöntem çağrıları için istek gövdesi gerekmez.

products.custombatch

custombatch yöntemleri, yapılan API çağrılarının sayısını en aza indirmek için tek bir API çağrısı kullanarak birden fazla ürün için ek feed verilerini insert veya delete yapmanıza olanak tanır.

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 eklemeniz gerekir.

products.custombatch:insert

products.custombatch:insert yöntemine ek feed çağrıları yaparken zorunlu batchId, merchantID ve method parametrelerine ek olarak istek gövdesine offerId, feedLabel, channel ve contentLanguage parametrelerini de 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 products.custombatch:insert yöntem çağrısı yapmak üzere aşağıdaki isteği kullanabilirsiniz:.

{
  "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 için products.custombatch:delete yöntem çağrısı yapmak üzere aşağıdaki isteği kullanabilirsiniz:

{
  "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"
    }
  ]
}