Merchant API, ürün verilerinizi yönetmek için daha sağlam ve sezgisel bir yöntem sunar. Temel değişiklik, ürün verilerinin iki ayrı kaynağa ayrılmasıdır: ProductInput
verilerinizi göndermek için, Product
ise ürün durumu ve sorunlar dahil olmak üzere son, işlenmiş sürümü görüntülemek için kullanılır. Bu yeni yapı, daha öngörülebilir ve şeffaf bir deneyim sunar.
Bu kılavuz, entegrasyonunuzu Content API for Shopping'den taşımanıza yardımcı olmak için temel farklılıkları adım adım açıklar. Yeni özellikleri kullanmayla ilgili ayrıntılı kılavuz için Ürünlerinizi yönetme başlıklı makaleyi inceleyin.
Temel farklılıklar
Merchant API'de ürünleri yönetme şeklinizle ilgili, Content API for Shopping'e kıyasla en önemli değişiklikler şunlardır:
Giriş ve işlenmiş veriler için özel kaynaklar: Merchant API, ürün yönetimini iki kaynağa ayırır. Ürün verilerinizi eklemek, güncellemek ve silmek için
ProductInput
kaynağını kullanabilirsiniz. Google, girişlerinizi işledikten, kuralları uyguladıktan ve ek kaynaklardaki verileri birleştirdikten sonra nihai ürünü görüntülemek için salt okunurProduct
kaynağını kullanabilirsiniz.Entegre ürün durumu:
productstatuses
hizmeti kaldırılır. Ürün doğrulama sorunları ve hedef durumları artık doğrudanproductStatus
alanındakiProduct
kaynağına dahil ediliyor. Bu sayede veri alma işlemi basitleştiriliyor.Öngörülebilir ürün güncellemeleri: Yeni
productInputs.patch
yöntemi, belirli bir ürün girişini doğrudan değiştirir. Bu, güncellemelerin diğer feed yüklemeleriyle beklenmedik şekilde üzerine yazılabildiği Content API for Shopping'e kıyasla önemli bir gelişmedir. Merchant API'de, belirli bir ürün girişi tekrar güncellenene veya silinene kadar güncelleme devam eder. Ürün güncellemeleri, işlenenProduct
kaynağı yerineProductInput
kaynağına uygulanır.Daha temiz veri yönetimi için veri kaynağınızı seçin: Tüm
productInputs
yazma işlemleri artıkdataSource
sorgu parametresi gerektiriyor. Bu sayede, hangi veri kaynağını değiştirdiğiniz açıkça belirtiliyor. Bu özellik, özellikle veri sağlayan birden fazla kaynağınız varsa yararlıdır.Yeni kaynak tanımlayıcıları: Ürünler artık
id
alanı yerine RESTful bir kaynaklaname
tanımlanıyor. Biçim şöyledir:accounts/{account}/products/{product}
.Özel toplu işlemler yok:
custombatch
yöntemi artık kullanılamıyor. Tek bir HTTP çağrısında birden fazla istek göndermek için eşzamansız istekleri veya HTTP toplu işleme özelliğini kullanabilirsiniz.Herhangi bir feed etiketi ve dil için veri kaynakları: Merchant API, feed etiketi ve dil belirtmeden veri kaynağı oluşturmayı mümkün kılar. Bu nedenle, herhangi bir feed etiketi ve dilde ürün eklemeye olanak tanır.
İstekler
Bu bölümde, Content API for Shopping ve Merchant API'nin istek biçimleri karşılaştırılmaktadır.
İstek açıklaması | Content API for Shopping | Merchant API |
---|---|---|
Ürün edinme | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} |
GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products/{product} |
Ürünleri listeleme | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products |
GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products |
Ürün ekle | POST https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products |
POST https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs:insert |
Ürünü güncelleme | PATCH https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} |
PATCH https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs/{productinput} |
Ürün silme | DELETE https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} |
DELETE https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs/{productinput} |
Ürün durumunu alma | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/productstatuses/{productId} |
GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products/{product} |
Ürün durumlarını listeleme | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/productstatuses |
GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products |
Birden fazla isteği toplu olarak işleme | POST https://shoppingcontent.googleapis.com/content/v2.1/products/custombatch |
Asenkron istekler, HTTP toplu istekleri |
Tanımlayıcılar
Merchant API'de ürün tanımlayıcıların biçimi standart bir REST kaynak adı olarak değiştirildi.
Tanımlayıcı açıklaması | Content API for Shopping | Merchant API |
---|---|---|
Ürün kimliği | İki nokta üst üste işaretiyle (: ) ayrılmış segmentlerden oluşan bir dize.Biçim: channel:contentLanguage:targetCountry:offerId veya channel:contentLanguage:feedLabel:offerId .Örnek: online:en:US:sku123 |
Bir REST kaynağı name dizesi.Biçim: accounts/{account}/products/{product} . Burada {product} , contentLanguage~feedLabel~offerId 'dir.Örnek: accounts/12345/products/en~US~sku123 |
Yöntemler
Bu tabloda, Content API for Shopping yöntemleri ve bunların Merchant API'deki karşılıkları gösterilmektedir.
Content API for Shopping yöntemi | Merchant API yöntemi | Kullanılabilirlik ve notlar |
---|---|---|
products.get |
products.get |
İşlenmiş son ürünü alır. |
products.list |
products.list |
Son, işlenmiş ürünleri listeler. |
products.insert |
productInputs.insert |
Ürün girişi ekler. dataSource gerektirir. |
products.update |
productInputs.update |
Davranış önemli ölçüde farklıdır. Belirli bir ürün girişini günceller ve kalıcıdır. |
products.delete |
productInputs.delete |
Belirli bir ürün girişini siler. dataSource gerektirir. |
products.custombatch |
Kullanılamıyor | Eş zamansız istekler veya HTTP toplu işleme kullanın. |
productstatuses.get |
products.get |
productstatuses hizmeti kaldırılır. Durum bilgileri artık Product kaynağının bir parçasıdır. |
productstatuses.list |
products.list |
productstatuses hizmeti kaldırılır. Durum bilgileri artık Product kaynağının bir parçasıdır. |
productstatuses.custombatch |
Kullanılamıyor | [asynchronous |
istekleri](/merchant/api/samples/insert-product-input-async) veya HTTP toplu işleme. |
Ayrıntılı alan değişiklikleri
Bu tabloda, Merchant API'de değiştirilen, eklenen veya kaldırılan önemli alanlar vurgulanmaktadır.
Content API for Shopping | Merchant API | Açıklama |
---|---|---|
id |
name |
Bir ürünün birincil tanımlayıcısı artık REST kaynağı name 'dır. |
Üst düzey ürün verileri spesifikasyonu özellikleri (ör. title , price , link ) |
productAttributes nesnesi |
title , price ve link gibi ürün özellikleri artık üst düzey alanlar değildir. Bu öğeler artık hem Product hem de ProductInput kaynaklarındaki productAttributes nesnesi içinde gruplandırılıyor. Bu, daha temiz ve düzenli bir kaynak yapısı sağlar. |
targetCountry |
feedLabel |
Kaynak adı, Merchant Center işlevleriyle uyumlu olması için artık targetCountry yerine feedLabel kullanıyor. |
feedId |
dataSource (sorgu parametresi) |
dataSource adı artık tüm productInputs yazma yöntemleri (insert , update , delete ) için zorunlu bir sorgu parametresidir. |
channel |
Yok. Yalnızca yerel ürünler için legacy_local simgesini kullanın. |
channel alanı artık Merchant API'de mevcut değil. Content API for Shopping'de LOCAL kanalı olan ürünler bunun yerine legacy_local alanını doğru olarak ayarlamalıdır. |
Kullanılamıyor | versionNumber |
ProductInput üzerinde, birincil veri kaynaklarına sırasız eklemeleri önlemek için kullanılabilecek yeni bir isteğe bağlı alan. |
string türü alanlar (tanımlanmış değer kümesiyle) |
enum türü alanlar (tanımlanmış değer kümesiyle) |
Belirli bir değer kümesi tanımlanmış ürün özelliklerindeki alanlar (ör. excluded_destinations , availability ) artık enum türündedir. |