انتقال منابع داده

این راهنما توضیح می‌دهد که چگونه می‌توانید یکپارچه‌سازی خود را از سرویس‌های datafeeds و datafeedstatuses مربوط به Content API برای خرید به زیر API منابع داده در Merchant API منتقل کنید. API فرعی منابع داده جدید کنترل مستقیم بیشتری بر خطوط لوله داده شما ارائه می دهد و مدیریت منابع داده را ساده می کند.

برای اطلاعات بیشتر در مورد ویژگی های جدید، به راهنمای مدیریت منابع داده خود مراجعه کنید.

تفاوت های کلیدی

در مقایسه با Content API برای خرید، Merchant API چندین مزیت را ارائه می دهد.

  • ایجاد منبع داده صریح API دیگر به طور خودکار منبع داده «Content API» را در اولین درج محصول شما ایجاد نمی کند. در Merchant API، قبل از اینکه بتوانید محصولات را در آنها آپلود کنید، به صراحت منابع داده ایجاد می کنید. این به شما از همان ابتدا کنترل بیشتری بر سازماندهی و مدیریت خطوط لوله داده محصولتان می دهد.

  • پشتیبانی از چندین منبع داده API در Content API برای خرید، شما محدود به یک منبع داده «Content API» هستید که به‌طور خودکار ایجاد می‌شود. با Merchant API می توانید چندین منبع داده از نوع ورودی API ایجاد و مدیریت کنید.

  • منابع داده بدون برچسب و زبان. Merchant API به شما امکان می دهد یک منبع داده اولیه بدون تعیین feedLabel و contentLanguage ایجاد کنید. این نوع منبع داده محصولات را در هر ترکیبی از feedLabel و contentLanguage می‌پذیرد، که آپلود محصول را برای ادغام‌هایی که نیازی به منابع داده جداگانه برای مناطق مختلف ندارند، ساده می‌کند.

  • اهداف داده ساده شده هر منبع داده اکنون به یک هدف منطبق است که توسط ترکیبی منحصر به فرد از feedLabel و contentLanguage تعریف شده است. فیدهای هدف چندداده در Merchant API منسوخ شده‌اند.

  • وضعیت آپلود فایل اختصاصی. Merchant API وضعیت منابع داده مبتنی بر فایل را با استفاده از یک منبع fileUploads جداگانه و فقط خواندنی نشان می دهد. برای بازیابی وضعیت آپلود فایل، از روش fileUploads.get با latest نام مستعار استفاده کنید.

  • انواع منبع داده جدید منبع DataSource از عمودی های بیشتری پشتیبانی می کند، از جمله تبلیغات، موجودی محلی، و موجودی منطقه ای، و یک راه واحد برای مدیریت تمام خطوط لوله داده شما ارائه می دهد.

  • منابع داده خودکار با Merchant API، اکنون می‌توانید با استفاده از روش autofeedSettings.updateAutofeedSettings در API فرعی حساب‌ها، ویژگی منابع داده خودکار را برای حساب خود فعال یا غیرفعال کنید. برای اطلاعات بیشتر، به پیکربندی تنظیمات تغذیه خودکار مراجعه کنید.

درخواست ها

جدول زیر فرمت‌های URL درخواست را بین Content API برای خرید و Merchant API مقایسه می‌کند.

درخواست توضیحات Content API برای خرید Merchant API
یک منبع داده ایجاد کنید POST https://shoppingcontent.googleapis.com/content/v2.1/ {MERCHANT_ID} /datafeeds POST https://merchantapi.googleapis.com/v1/accounts/ {ACCOUNT_ID} /dataSources
یک منبع داده دریافت کنید 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}
فهرست منابع داده GET https://shoppingcontent.googleapis.com/content/v2.1/ {MERCHANT_ID} /datafeeds GET https://merchantapi.googleapis.com/v1/accounts/ {ACCOUNT_ID} /dataSources
یک منبع داده را به روز کنید 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}
یک منبع داده را حذف کنید 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}
یک منبع داده واکشی کنید 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
وضعیت منبع داده را دریافت کنید 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
فهرست وضعیت های منبع داده GET https://shoppingcontent.googleapis.com/content/v2.1/ {MERCHANT_ID} /datafeedstatuses در دسترس نیست. برای هر منبع داده مبتنی بر فایل از dataSources.list و fileUploads.get استفاده کنید.

شناسه ها

Merchant API از یک نام منبع مبتنی بر رشته به عنوان شناسه استفاده می کند.

شرح شناسه Content API برای خرید Merchant API
شناسه منبع داده datafeedId (عددی) name (رشته، قالب: accounts/{account}/dataSources/{datasource} )

روش ها

این جدول روش‌های Content API برای سرویس‌های datafeeds خرید و datafeedstatuses با معادل‌های آنها در Merchant API مقایسه می‌کند.

Content API برای روش خرید روش Merchant API در دسترس بودن و یادداشت ها
datafeeds.custombatch در دسترس نیست به جای آن از تماس های API فردی استفاده کنید.
datafeeds.delete dataSources.delete موجود است.
datafeeds.fetchnow dataSources.fetch موجود است. این روش اکنون فقط برای منابع داده با ورودی فایل کار می کند.
datafeeds.get dataSources.get موجود است.
datafeeds.insert dataSources.create موجود است.
datafeeds.list dataSources.list موجود است.
datafeeds.update dataSources.update موجود است. به جای PUT از معنای PATCH استفاده می کند.
datafeedstatuses.custombatch در دسترس نیست به جای آن از تماس های API فردی استفاده کنید. برای جزئیات بیشتر به ارسال چندین درخواست به صورت همزمان مراجعه کنید.
datafeedstatuses.get fileUploads.get برای منابع داده مبتنی بر فایل موجود است. latest نام مستعار برای دریافت وضعیت آخرین آپلود استفاده کنید. برای سایر انواع منبع داده، اطلاعات وضعیت بخشی از منبع DataSource است.
datafeedstatuses.list در دسترس نیست برای دریافت وضعیت چندین منبع داده، ابتدا همه منابع داده را با dataSources.list فهرست کنید. سپس fileUploads.get با latest نام مستعار برای هر منبع داده مبتنی بر فایل تماس بگیرید.

تغییرات میدان دقیق

این جدول تغییرات سطح فیلد بین منابع Datafeed و DatafeedStatus در Content API برای خرید و منابع DataSource و FileUpload در Merchant API را نشان می دهد.

Content API برای خرید Merchant API توضیحات
Datafeed DataSource منبع اصلی برای پیکربندی منبع داده.
id name شناسه منبع از شناسه عددی به نام منبع رشته ای تغییر کرد.
name displayName نام کاربر منبع داده.
attributeLanguage primaryProductDataSource.contentLanguage کد زبان دو حرفی ISO 639-1 موارد موجود در منبع داده.
fileName fileInput.fileName نام فایل آپلود شده این فیلد اکنون در زیر fileInput قرار دارد.
fetchSchedule fileInput.fetchSettings برنامه زمانی برای واکشی منبع داده مبتنی بر فایل. این اکنون در زیر fileInput تودرتو است.
fetchSchedule.paused fileInput.fetchSettings.enabled منطق معکوس است. paused: true معادل enabled: false .
format در دسترس نیست فیلدهای fileEncoding ، columnDelimiter ، و quotingMode حذف می شوند. اینها اکنون به صورت خودکار شناسایی می شوند.
targets primaryProductDataSource.feedLabel , primaryProductDataSource.contentLanguage , primaryProductDataSource.countries فیلد targets تکراری حذف می شود. هر منبع داده در حال حاضر دارای یک هدف واحد است که توسط این فیلدها تعریف شده است، که منعکس کننده از بین رفتن فیدهای چند داده هدف است.
DatafeedStatus FileUpload وضعیت آپلود فایل اکنون یک منبع جداگانه و فقط خواندنی است.
datafeedId name شناسه برای آپلود فایل، با ارجاع به منبع داده والد آن.
processingStatus processingState وضعیت پردازش آپلود. مقادیر رشته ( success ، failure ، in progress ) با یک عدد ( SUCCEEDED ، FAILED ، IN_PROGRESS ) جایگزین می شوند.
errors ، warnings issues خطاها و هشدارها در یک لیست issues واحد ادغام می شوند. هر مشکل دارای یک فیلد severity است ( ERROR یا WARNING ).
lastUploadDate uploadTime مهر زمانی آخرین بارگذاری. قالب از یک رشته به یک شی Timestamp تغییر کرد.
country ، language ، feedLabel قابل اجرا نیست این فیلدها دیگر در منبع وضعیت نیستند. آنها بخشی از منبع DataSource هستند.
targets[].included_destinations , targets[].excluded_destinations primaryProductDataSource.destinations دو لیست جداگانه برای مقصدهای گنجانده شده و حذف شده با یک لیست destinations جایگزین می شوند. هر مورد در لیست جدید یک شی است که مقصد و وضعیت آن ( ENABLED یا DISABLED ) را مشخص می کند و پیکربندی واضح تری را ارائه می دهد.