Merchant API روشی قویتر و شهودیتر برای مدیریت دادههای محصول شما معرفی میکند. تغییر اصلی، تفکیک دادههای محصول به دو منبع مجزا است: ProductInput
برای ارسال دادههای شما و Product
برای مشاهده نسخه نهایی و پردازش شده از جمله وضعیت محصول و مشکلات. این ساختار جدید تجربه قابل پیش بینی و شفاف تری را ارائه می دهد.
این راهنما شما را از طریق تفاوتهای کلیدی راهنمایی میکند تا به شما کمک کند ادغام خود را از Content API برای خرید منتقل کنید. برای راهنمای دقیق استفاده از ویژگیهای جدید، به مدیریت محصولات خود مراجعه کنید.
تفاوت های کلیدی
در اینجا مهمترین تغییرات در نحوه مدیریت محصولات در Merchant API در مقایسه با Content API برای خرید آمده است:
منابع اختصاصی برای داده های ورودی و پردازش شده : Merchant API مدیریت محصول را به دو منبع تقسیم می کند. می توانید از منبع
ProductInput
برای درج، به روز رسانی و حذف داده های محصول خود استفاده کنید. پس از پردازش ورودیهای شما، اعمال قوانین و ترکیب دادهها از منابع تکمیلی، میتوانید از منبعProduct
فقط خواندنی برای مشاهده محصول نهایی استفاده کنید.وضعیت محصول یکپارچه : سرویس وضعیت
productstatuses
حذف شده است. مسائل اعتبارسنجی محصول و وضعیت مقصد اکنون مستقیماً در منبعProduct
در قسمتproductStatus
گنجانده شده است و بازیابی داده ها را ساده می کند.به روز رسانی محصول قابل پیش بینی : روش
productInputs.patch
جدید یک ورودی محصول خاص را مستقیماً تغییر می دهد. این یک پیشرفت قابل توجه نسبت به Content API برای خرید است، جایی که بهروزرسانیها ممکن است بهطور غیرمنتظرهای توسط سایر آپلودهای فید بازنویسی شوند. در Merchant API، یک بهروزرسانی باقی میماند تا زمانی که ورودی محصول خاص دوباره بهروزرسانی یا حذف شود. بهروزرسانیهای محصول بر روی منبعProductInput
به جای منبعProduct
پردازش شده اعمال میشود.منبع داده خود را برای مدیریت داده های تمیزتر انتخاب کنید : همه عملیات نوشتن
productInputs
اکنون به یک پارامتر querydataSource
نیاز دارند که مشخص می کند کدام منبع داده را تغییر می دهید. این به ویژه در صورتی مفید است که چندین منبع ارائه داده داشته باشید.شناسه های منبع جدید : محصولات اکنون با
name
منبع RESTful به جای فیلدid
شناسایی می شوند. قالب آنaccounts/{account}/products/{product}
است.بدون دسته سفارشی : روش
custombatch
دیگر در دسترس نیست. میتوانید از درخواستهای ناهمزمان یا دستهبندی HTTP برای ارسال چندین درخواست در یک تماس HTTP استفاده کنید.منابع داده برای هر برچسب و زبان فید : Merchant API ایجاد منبع داده را بدون تعیین برچسب و زبان فید ممکن میسازد و بنابراین اجازه درج محصول با هر برچسب و زبان فید را میدهد.
درخواست ها
این بخش فرمتهای درخواست Content API for Shopping و Merchant API را مقایسه میکند.
درخواست توضیحات | Content API برای خرید | Merchant API |
---|---|---|
یک محصول دریافت کنید | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} | GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products/{product} |
لیست محصولات | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products | GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products |
درج یک محصول | POST https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products | POST https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs:insert |
یک محصول را به روز کنید | PATCH https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} | PATCH https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs/{productinput} |
حذف یک محصول | DELETE https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} | DELETE https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs/{productinput} |
وضعیت محصول را دریافت کنید | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/productstatuses/{productId} | GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products/{product} |
فهرست وضعیت های محصول | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/productstatuses | GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products |
درخواست های متعدد را دسته بندی کنید | POST https://shoppingcontent.googleapis.com/content/v2.1/products/custombatch | درخواست های ناهمزمان، دسته بندی HTTP |
شناسه ها
قالب شناسههای محصول در Merchant API به نام منبع استاندارد REST تغییر کرده است.
شرح شناسه | Content API برای خرید | Merchant API |
---|---|---|
شناسه محصول | رشتهای متشکل از بخشهایی که با دو نقطه ( : ) از هم جدا شدهاند.قالب: channel:contentLanguage:targetCountry:offerId یا channel:contentLanguage:feedLabel:offerId .مثال: online:en:US:sku123 | یک رشته name منبع REST.قالب: accounts/{account}/products/{product} که در آن {product} contentLanguage~feedLabel~offerId .مثال: accounts/12345/products/en~US~sku123 |
روش ها
این جدول Content API برای روشهای خرید و معادلهای آن در Merchant API را نشان میدهد.
Content API برای روش خرید | روش Merchant API | در دسترس بودن و یادداشت ها |
---|---|---|
products.get | products.get | محصول نهایی و فرآوری شده را بازیابی می کند. |
products.list | products.list | محصولات نهایی و فرآوری شده را فهرست می کند. |
products.insert | productInputs.insert | ورودی محصول را درج می کند. به یک dataSource نیاز دارد. |
products.update | productInputs.update | رفتار به طور قابل توجهی متفاوت است. این ورودی محصول خاص را به روز می کند و پایدار است. |
products.delete | productInputs.delete | یک ورودی محصول خاص را حذف می کند. به یک dataSource نیاز دارد. |
products.custombatch | در دسترس نیست | از درخواست های ناهمزمان یا دسته بندی HTTP استفاده کنید. |
productstatuses.get | products.get | سرویس productstatuses حذف شده است. اطلاعات وضعیت اکنون بخشی از منبع Product است. |
productstatuses.list | products.list | سرویس productstatuses حذف شده است. اطلاعات وضعیت اکنون بخشی از منبع Product است. |
productstatuses.custombatch | در دسترس نیست | استفاده از [ناهمزمان |
درخواستها](/merchant/api/samples/insert-product-input-async) یا دستهبندی HTTP . |
تغییرات میدان دقیق
این جدول فیلدهای مهمی را که در Merchant API تغییر، اضافه یا حذف شده اند برجسته می کند.
Content API برای خرید | Merchant API | توضیحات |
---|---|---|
id | name | شناسه اصلی یک محصول اکنون name منبع REST است. |
ویژگی های مشخصات داده های محصول سطح بالا (به عنوان مثال، title ، price ، link ) | شی productAttributes | ویژگیهای محصول مانند title ، price و link دیگر فیلدهای سطح بالا نیستند. آنها اکنون در شیء productAttributes در هر دو منبع Product و ProductInput گروه بندی می شوند. این یک ساختار منبع تمیزتر و سازماندهی شده را فراهم می کند. |
targetCountry | feedLabel | نام منبع اکنون از feedLabel به جای targetCountry برای تراز با عملکرد Merchant Center استفاده می کند. |
feedId | dataSource (پارامتر پرس و جو) | نام dataSource اکنون یک پارامتر پرس و جو برای همه روشهای نوشتن productInputs است ( insert ، update ، delete ). |
channel | در دسترس نیست. از legacy_local فقط برای محصولات محلی استفاده کنید. | فیلد channel دیگر در Merchant API وجود ندارد. محصولات دارای کانال LOCAL در Content API for Shopping باید فیلد legacy_local روی true تنظیم کنند. |
در دسترس نیست | versionNumber | یک فیلد اختیاری جدید در ProductInput که می تواند برای جلوگیری از درج نامرتب در منابع داده اولیه استفاده شود. |
رشته های نوع string با مجموعه ای از مقادیر تعریف شده | فیلدهای نوع enum با مجموعه ای از مقادیر تعریف شده | فیلدهای درون ویژگی های محصول با مجموعه مقادیر تعریف شده (به عنوان مثال excluded_destinations ، availability ) اکنون از نوع enum هستند. |