Bu kılavuzda, entegrasyonunuzu Content API for Shopping'in datafeeds ve datafeedstatuses hizmetlerinden Merchant API'deki Veri Kaynakları alt API'sine nasıl taşıyacağınız açıklanmaktadır. Yeni Data Sources alt API'si, Data Pipelines'ınız üzerinde daha doğrudan kontrol sağlar ve veri kaynakları yönetimini basitleştirir.
Yeni özellikler hakkında daha fazla bilgi için Veri kaynaklarınızı yönetme kılavuzunu inceleyin.
Temel farklar
Merchant API, Content API for Shopping'e kıyasla çeşitli avantajlar sunar:
Açık veri kaynağı oluşturma. API artık ilk ürün eklemenizde otomatik olarak "Content API" veri kaynağı oluşturmaz. Merchant API'de, ürünleri yükleyebilmek için veri kaynaklarını açıkça oluşturmanız gerekir. Bu sayede, sürecin başından itibaren, ürün verileri Data Pipelines'ınızın düzenlenmesi ve yönetilmesi üzerinde daha fazla kontrol sahibi olursunuz.
Birden fazla API veri kaynağı desteği Content API for Shopping'de, otomatik olarak oluşturulan tek bir "Content API" veri kaynağıyla sınırlıydınız. Merchant API ile
APIgiriş türünde birden fazla veri kaynağı oluşturup yönetebilirsiniz.Etiketi ve dili olmayan veri kaynakları. Merchant API,
feedLabelvecontentLanguagebelirtmeden birincil veri kaynağı oluşturmanıza olanak tanır. Bu tür veri kaynakları,feedLabelvecontentLanguagedillerinin herhangi bir kombinasyonundaki ürünleri kabul eder. Bu sayede, farklı bölgeler için ayrı veri kaynakları gerektirmeyen entegrasyonlarda ürün yükleme işlemi basitleşir.Basitleştirilmiş veri hedefleri. Her veri kaynağı artık benzersiz bir
feedLabelvecontentLanguagekombinasyonuyla tanımlanan tek bir hedefe karşılık gelir. Çok verili hedef feed'ler, Merchant API'de kullanımdan kaldırıldı.Özel dosya yükleme durumu. Merchant API, dosya tabanlı veri kaynaklarının durumunu ayrı ve salt okunur bir
fileUploadskaynağı kullanarak gösterir. Dosya yükleme durumunu almak içinlatesttakma adıylafileUploads.getyöntemini kullanın.Yeni veri kaynağı türleri.
DataSourcekaynağı; promosyonlar, yerel envanter ve bölgesel envanter dahil olmak üzere daha fazla sektörü destekleyerek tüm Data Pipelines'ınızı yönetmek için birleşik bir yöntem sunar.Otomatik veri kaynakları. Merchant API ile artık Accounts alt API'sindeki
autofeedSettings.updateAutofeedSettingsyöntemini kullanarak hesabınız için Otomatik veri kaynakları özelliğini etkinleştirebilir veya devre dışı bırakabilirsiniz. Daha fazla bilgi için Otomatik feed ayarlarını yapılandırma başlıklı makaleyi inceleyin.
Veri kaynağı stratejinizi seçme
Veri kaynaklarınızı yönetmek için üç seçeneğiniz vardır:
Herhangi bir feed etiketi ve dil için tek bir Merchant API veri kaynağı oluşturun. Herhangi bir
feedLabelvecontentLanguageiçeren ürünleri kabul eden tek bir veri kaynağı kullanarak yönetiminizi basitleştirmek için bu seçeneği kullanın. Eski Content API kurulumunda, belirli etiketler ve diller için kuralları ayrı veri kaynakları aracılığıyla tanımlar ve ürünleri, ilgili hedeflenen kurallara sahip veri kaynağına eklersiniz. Bu seçeneği tercih ederseniz tüm ürünlerinizi yeni veri kaynağına taşımanızı ve tüm ürünleriniz taşındıktan sonra Content API veri kaynaklarınızı kaldırmanızı öneririz.Her etiket ve dil için yeni Merchant API veri kaynakları oluşturun. Yeni
feedLabelvecontentLanguagekombinasyonlarını desteklemeniz gerekiyorsa (ve aralarında kesin bir ayrım olmasını tercih ediyorsanız) ya da belirlifeedLabelvecontentLanguage'ye dayalı veri kaynağı kuralları kurulumunu kullanıyorsanız bu seçeneği kullanın. Kullandığınız herfeedLabelvecontentLanguageçifti için ayrı bir veri kaynağı oluşturmanız gerekir. Merchant API veri kaynaklarını, Content API for Shopping ile oluşturulan veri kaynaklarıyla birleştirebilirsiniz.
- Mevcut Content API veri kaynaklarını koruyun. Content API for Shopping ile oluşturulan veri kaynakları Merchant API ile uyumlu olduğundan bunları kullanmaya devam edebilirsiniz. Kaynak adlarını
dataSources.listkullanarak veya Merchant Center kullanıcı arayüzünde bulabilirsiniz. Content API birincil veri kaynakları, yalnızca oluşturuldukları belirlifeedLabelvecontentLanguagedeğerlerini destekler. Ürünler Merchant API kullanılarak eklenmiş olsa bile Content API veri kaynakları, Merchant Center'da "Content API" kaynağıyla gösterilir. Bunları, belirlifeedLabelvecontentLanguageçiftlerini hedefleyen yeni Merchant API veri kaynaklarıyla birleştirebilirsiniz.
Tekrarlanan dataSources.list çağrılarından kaçınmak için her bir ürününüz için tüm birincil veri kaynaklarının adlarını bir kez depolayarak yerel ürün veritabanınızı doldurmanızı öneririz.
İstekler
Aşağıdaki tabloda, Content API for Shopping ve Merchant API'nin istek URL'si biçimleri karşılaştırılmaktadır.
| İstek açıklaması | Content API for Shopping | Merchant API |
|---|---|---|
| Veri kaynağı oluşturma | POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds |
POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources |
| Veri kaynağı alma | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} |
GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} |
| Veri kaynaklarını listeleme | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds |
GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources |
| Veri kaynağını güncelleme | PUT https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} |
PATCH https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} |
| Veri kaynağını silme | DELETE https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} |
DELETE https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} |
| Veri kaynağı getirme | POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID}/fetchNow |
POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}:fetch |
| Veri kaynağı durumunu alma | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses/{DATAFEED_ID} |
GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}/fileUploads/latest |
| Veri kaynağı durumlarını listeleme | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses |
Yok. Dosya tabanlı her veri kaynağı için dataSources.list ve fileUploads.get kullanın. |
Tanımlayıcılar
Merchant API, tanımlayıcı olarak dize tabanlı bir kaynak adı kullanır.
| Tanımlayıcı açıklaması | Content API for Shopping | Merchant API |
|---|---|---|
| Veri kaynağı tanımlayıcısı | datafeedId (sayısal) |
name (string, biçim: accounts/{account}/dataSources/{datasource}) |
Yöntemler
Bu tabloda, Content API for Shopping datafeeds ve datafeedstatuses hizmetlerindeki yöntemler, Merchant API'deki eşdeğerleriyle karşılaştırılmaktadır.
| Content API for Shopping yöntemi | Merchant API yöntemi | Kullanılabilirlik ve notlar |
|---|---|---|
datafeeds.custombatch |
Kullanılamıyor | Bunun yerine ayrı API çağrıları kullanın. |
datafeeds.delete |
dataSources.delete |
Mevcut. |
datafeeds.fetchnow |
dataSources.fetch |
Mevcut. Bu yöntem artık yalnızca dosya girişi olan veri kaynaklarında çalışır. |
datafeeds.get |
dataSources.get |
Mevcut. |
datafeeds.insert |
dataSources.create |
Mevcut. |
datafeeds.list |
dataSources.list |
Mevcut. |
datafeeds.update |
dataSources.update |
Mevcut. PUT yerine PATCH semantiğini kullanır. |
datafeedstatuses.custombatch |
Kullanılamıyor | Bunun yerine ayrı API çağrıları kullanın. Daha fazla bilgi için Aynı anda birden fazla istek gönderme başlıklı makaleyi inceleyin. |
datafeedstatuses.get |
fileUploads.get |
Dosya tabanlı veri kaynakları için kullanılabilir. En son yüklemenin durumunu öğrenmek için latest takma adını kullanın. Diğer veri kaynağı türleri için durum bilgileri DataSource kaynağının bir parçasıdır. |
datafeedstatuses.list |
Kullanılamıyor | Birden fazla veri kaynağının durumunu öğrenmek için önce dataSources.list ile tüm veri kaynaklarını listeleyin. Ardından, her dosya tabanlı veri kaynağı için latest takma adıyla fileUploads.get işlevini çağırın. |
Ayrıntılı alan değişiklikleri
Bu tabloda, Content API for Shopping'deki Datafeed ve DatafeedStatus kaynakları ile Merchant API'deki DataSource ve FileUpload kaynakları arasındaki alan düzeyindeki değişiklikler gösterilmektedir.
| Content API for Shopping | Merchant API | Açıklama |
|---|---|---|
Datafeed |
DataSource |
Veri kaynağı yapılandırması için ana kaynak. |
id |
name |
Kaynak tanımlayıcısı. Sayısal kimlikten dize kaynak adına değiştirildi. |
name |
displayName |
Veri kaynağının kullanıcılara yönelik adı. |
attributeLanguage |
primaryProductDataSource.contentLanguage |
Veri kaynağındaki öğelerin iki harfli ISO 639-1 dil kodu. |
fileName |
fileInput.fileName |
Yüklenen dosyanın adı. Bu alan artık fileInput altına yerleştirilmiştir. |
fetchSchedule |
fileInput.fetchSettings |
Dosya tabanlı bir veri kaynağını getirme planı. Bu öğe artık fileInput altında yer alıyor. |
fetchSchedule.paused |
fileInput.fetchSettings.enabled |
Mantık tersine çevrilir. paused: true, enabled: false değerine eşdeğerdir. |
format |
Kullanılamıyor | fileEncoding, columnDelimiter ve quotingMode alanları kaldırılır. Bunlar artık otomatik olarak algılanıyor. |
targets |
primaryProductDataSource.feedLabel, primaryProductDataSource.contentLanguage ve primaryProductDataSource.countries |
Yinelenen targets alanı kaldırıldı. Artık her veri kaynağının bu alanlar tarafından tanımlanan tek bir hedefi vardır. Bu, çoklu veri hedefi feed'lerinin kullanımdan kaldırıldığını gösterir. |
DatafeedStatus |
FileUpload |
Dosya yükleme durumu artık ayrı ve salt okunur bir kaynaktır. |
datafeedId |
name |
Üst veri kaynağına referans veren, dosya yükleme tanımlayıcısı. |
processingStatus |
processingState |
Yüklemenin işleme durumu. Dize değerleri (success, failure, in progress) bir enum (SUCCEEDED, FAILED, IN_PROGRESS) ile değiştirilir. |
errors, warnings |
issues |
Hatalar ve uyarılar tek bir issues listesinde birleştirilir. Her sorunun bir severity alanı (ERROR veya WARNING) vardır. |
lastUploadDate |
uploadTime |
Son yüklemenin zaman damgası. Biçim, dizeden Timestamp nesnesine değiştirildi. |
country, language ve feedLabel |
Geçerli değil | Bu alanlar artık durum kaynağında yer almıyor. DataSource kaynağının bir parçasıdır. |
targets[].included_destinations, targets[].excluded_destinations |
primaryProductDataSource.destinations |
Dahil edilen ve hariç tutulan hedefler için iki ayrı liste yerine tek bir destinations listesi kullanılır. Yeni listedeki her öğe, hedefi ve durumunu (ENABLED veya DISABLED) belirten bir nesnedir ve daha net bir yapılandırma sağlar. |