مهاجرت محصولات

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 اکنون به یک پارامتر query dataSource نیاز دارند که مشخص می کند کدام منبع داده را تغییر می دهید. این به ویژه در صورتی مفید است که چندین منبع ارائه داده داشته باشید.

  • شناسه های منبع جدید : محصولات اکنون با 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 هستند.