يوضّح هذا الدليل كيفية نقل عملية الدمج من خدمات datafeeds
وdatafeedstatuses
في Content API for Shopping إلى واجهة Data sources الفرعية في Merchant API. توفّر واجهة برمجة التطبيقات الفرعية الجديدة "مصادر البيانات" تحكّمًا أكثر مباشرةً في مسارات البيانات وتُبسّط إدارة مصادر البيانات.
لمزيد من المعلومات حول الميزات الجديدة، اطّلِع على دليل إدارة مصادر البيانات.
الاختلافات الرئيسية
تقدّم Merchant API العديد من المزايا مقارنةً بواجهة Content API في Shopping.
إنشاء مصدر بيانات بشكلٍ صريح: لم تعُد واجهة برمجة التطبيقات تنشئ تلقائيًا مصدر بيانات "Content API" عند إدراج منتجك الأول. في Merchant API، عليك إنشاء مصادر البيانات بشكل صريح قبل أن تتمكّن من تحميل المنتجات إليها. ويمنحك ذلك المزيد من التحكّم في تنظيم وإدارة قنوات نقل بيانات منتجك منذ البداية.
إمكانية استخدام مصادر بيانات متعددة من واجهات برمجة التطبيقات في Content API for Shopping، كان بإمكانك استخدام مصدر بيانات واحد فقط باسم "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
في واجهة برمجة التطبيقات الفرعية للحسابات. لمزيد من المعلومات، يُرجى الاطّلاع على ضبط إعدادات التغذية التلقائية.
الطلبات
يقارن الجدول التالي بين تنسيقات عناوين URL للطلبات في كلّ من Content API for Shopping وMerchant API.
وصف الطلب | واجهة برمجة تطبيقات المحتوى في Shopping | 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 اسم مورد مستند إلى سلسلة كمعرّف.
وصف المعرّف | واجهة برمجة تطبيقات المحتوى في Shopping | Merchant API |
---|---|---|
معرّف مصدر البيانات | datafeedId (رقمي) |
name (سلسلة، التنسيق: accounts/{account}/dataSources/{datasource} ) |
الطُرق
يقارن هذا الجدول بين الطرق من Content API في Shopping datafeeds
وخدمات datafeedstatuses
والطرق المشابهة لها في Merchant API.
طريقة Content API for Shopping | طريقة Merchant API | مدى التوفّر والملاحظات |
---|---|---|
datafeeds.custombatch |
غير متوفر | استخدِم طلبات فردية من واجهة برمجة التطبيقات بدلاً من ذلك. |
datafeeds.delete |
dataSources.delete |
متوفرة. |
datafeeds.fetchnow |
dataSources.fetch |
متوفرة. لا تعمل هذه الطريقة الآن إلا مع مصادر البيانات التي تتضمّن إدخال ملف. |
datafeeds.get |
dataSources.get |
متوفرة. |
datafeeds.insert |
dataSources.create |
متوفرة. |
datafeeds.list |
dataSources.list |
متوفرة. |
datafeeds.update |
dataSources.update |
متوفرة. يستخدم دلالات PATCH بدلاً من PUT . |
datafeedstatuses.custombatch |
غير متوفر | استخدِم طلبات فردية من واجهة برمجة التطبيقات بدلاً من ذلك. لمزيد من التفاصيل، يمكنك الاطّلاع على إرسال طلبات متعددة في آن واحد. |
datafeedstatuses.get |
fileUploads.get |
متاحة لمصادر البيانات المستندة إلى الملفات استخدِم الاسم المستعار latest للاطّلاع على حالة آخر عملية تحميل. بالنسبة إلى أنواع مصادر البيانات الأخرى، تكون معلومات الحالة جزءًا من مورد DataSource . |
datafeedstatuses.list |
غير متوفر | للحصول على حالة مصادر بيانات متعدّدة، عليك أولاً إدراج جميع مصادر البيانات باستخدام dataSources.list . بعد ذلك، استخدِم الأمر fileUploads.get مع الاسم المستعار latest لكل مصدر بيانات مستند إلى ملف. |
تغييرات الحقول التفصيلية
يعرض هذا الجدول التغييرات على مستوى الحقول بين المرجعين Datafeed
وDatafeedStatus
في Content API for Shopping والمرجعين DataSource
وFileUpload
في Merchant API.
واجهة برمجة تطبيقات المحتوى في Shopping | 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 )، ما يوفّر إعدادًا أكثر وضوحًا. |