نقل البيانات من الإصدار الثاني من Content API إلى الإصدار 2.1

في مارس 2019، أطلقنا الإصدار 2.1 من Content API في Google Shopping، وفي أبريل 2021، أعلنّا أنّه سيتم إيقاف الإصدار 2 نهائيًا في 30 سبتمبر 2021. تم إيقاف الإصدار 2 نهائيًا. يُرجى نقل البيانات إلى الإصدار 2.1 على الفور.

نقل بيانات تطبيقك

يتضمّن النقل من الإصدار 2 إلى الإصدار 2.1 تعديل عناوين URL لنقاط النهاية من أجل طلب الإصدارات الجديدة من الإصدار 2.1 وتعديل تطبيقاتك لمراعاة التغييرات الرئيسية التي تم إدخالها في الإصدار 2.1.

تعديل طلبات واجهة برمجة التطبيقات لاستخدام نقاط نهاية الإصدار 2.1

لإجراء طلبات إلى الإصدار 2.1، عدِّل طلباتك لاستخدام نقاط النهاية الجديدة للإصدار 2.1.

على سبيل المثال، لطلب طريقة products.get باستخدام الإصدار 2، عليك استخدام ما يلي:

GET https://shoppingcontent.googleapis.com/content/v2/merchantId/products/productId

بالنسبة إلى الإصدار 2.1، عدِّل عنوان URL إلى ما يلي:

GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId

للحصول على معلومات كاملة عن خدمات ونقاط نهاية الإصدار 2.1، يُرجى الاطّلاع على مرجع واجهة برمجة التطبيقات.

إجراء التغييرات المطلوبة

بالإضافة إلى تعديل عناوين URL لطلبات واجهة برمجة التطبيقات، عليك أيضًا تعديل تطبيقك لمراعاة العديد من التغييرات الرئيسية التي تم إدخالها في الإصدار 2.1. يُرجى مراجعة الأقسام التالية وتعديل تطبيقك حسب الحاجة.

1. تعديل عمليات الدمج مع خدمة inventory

تمت إزالة خدمة inventory في الإصدار 2، وتتوفّر وظائف مماثلة مع ميزات الإصدار 2.1 التالية:

2. تعديل الطلبات إلى خدمة accounts

  • تؤدي الطلبات إلى طريقة accounts.update في الإصدار 2.1 إلى استبدال مصدر accounts بالكامل، بدلاً من تعديل الحقول المضمّنة في الطلب فقط. لتجنُّب حذف الحقول في مصدر accounts، عدِّل طلباتك لتضمين جميع الحقول.

  • تمت إزالة reviewsUrl.

  • تمت إزالة حالة الرابط inactive من adsLinks وgoogleMyBusinessLink وyoutubeChannelLinks.

3. تعديل الطلبات إلى خدمة products

  • لم تعُد السمات المخصّصة تحتوي على نوع ووحدة. بدلاً من ذلك، يجب إلحاق الوحدات بالقيمة ويجب رصد الأنواع تلقائيًا.

  • استبدل الحقل المتكرّر productTypes كلاً من productType و additionalProductTypes.

  • استبدل الحقلان المتكرّران includedDestinations وexcludedDestinations الحقل المتكرّر destinations.

  • تمت إعادة تسمية الحقول التالية المرتبطة ببرنامج AdWords:

    • adwordsGrouping -> adsGrouping
    • adwordsLabels -> adsLabels
    • adwordsRedirect -> adsRedirect
  • تمت إزالة الحقول التالية:

    • aspects
    • destinations
    • onlineOnly
    • validatedDestinations
    • warnings
  • تمت إزالة المَعلمة includeInvalidInsertedItems. في الإصدار 2.1، يتم عرض جميع المنتجات تلقائيًا.

  • يحدث الآن تأخير لبضع دقائق قبل أن يصبح بإمكانك استرداد منتج تم إدراجه من خلال products.get أو products.list.

  • لم يعُد من المضمون أن يكون offerId الذي يتم عرضه هو نفسه offerId الذي تم إدخاله. يزيل الإصدار 2.1 المسافات البيضاء البادئة واللاحقة في offerId ويجمع أحرف المسافات البيضاء المتعدّدة في حرف واحد. لا يؤثّر هذا التغيير في قيم offerId التي تتوافق مع البنية المقترَحة offerId.

  • يتم الآن التحقّق من صحة الأسعار قبل إدراج المنتجات. الأحرف المسموح بها فقط في سلسلة القيم هي: + و- و. والأرقام (أي 0-9). لم يعُد يتم قبول الفواصل.

  • لا تحتوي الردود من طلب products.insert أو products.update إلا على السمات التالية:

    • channel
    • contentLanguage
    • id
    • offerId
    • feedLabel
  • تم إيقاف خيار includeAttributes في الإصدار 2 نهائيًا. بدلاً من ذلك، استخدِم products.get مع ProductId لعرض معلومات المنتج الكاملة.

4. تعديل الطلبات إلى خدمة productstatuses

  • تمت إزالة السمة product، بالإضافة إلى المَعلمة includeAttributes. لاسترداد سمات المنتج المطابقة لحالة معيّنة، استخدِم خدمة products ومرِّر قيمة حقل productId الجديد.

  • تمت إزالة المَعلمة includeInvalidInsertedItems. يتم الآن عرض productId لكل منتج بغض النظر عمّا إذا كان المنتج صالحًا أم لا.

  • تم استبدال الحقول intention وapprovalStatus وapprovalPending في destinationStatuses بالحقل status، وهو عبارة عن سلسلة يمكن أن تكون إحدى القيم approved أو disapproved أو pending.

  • تم استبدال dataQualityIssues بـ itemLevelIssues.

5. تعديل الطلبات إلى خدمة datafeeds

  • تم استبدال الحقول المستهدَفة التالية:

    • contentLanguage -> language
    • targetCountry -> country
    • intendedDestinations -> includedDestinations وexcludedDestinations
  • تمت إزالة خلاصات البيانات التي تتضمّن contentType = "product inventory update".

6. تعديل الطلبات إلى خدمتَي orders وTestOrders

  • في الإصدار 2.1، يجب ألا تتضمّن الطلبات بيانات الضرائب لأنّه يتم احتسابها تلقائيًا. إذا تم تنفيذ الطلب في ولاية تتضمّن قانون عدالة السوق (MFA) أو قانونًا مشابهًا، ستفشل الطلبات التي تتضمّن بيانات الضرائب. إذا تم تنفيذ الطلب في ولاية لا تتضمّن قانون عدالة السوق، يتم احتساب الضريبة استنادًا إلى الإعدادات التي تم ضبطها في Merchant Center. إذا لم يتم ضبط أي إعدادات، تكون الضريبة المحتسبة 0.

  • تم استبدال الحقلَين amountPretax وamountTax في InStoreRefundLineItem وReturnRefundLineItem بـ priceAmount وtaxAmount على التوالي. يمكن أن يكون priceAmount قبل الضريبة أو بعد الضريبة، وذلك حسب موقع الطلب.

  • تم نقل الحقول carrier وshipmentId وtrackingId في ShipLineItem من الطلب إلى shipmentInfos.

  • أصبح كل من billingAddress وpredefinedBillingAddress حقلَين على المستوى الأعلى في orders وTestOrder على التوالي.

  • تم استبدال customer.explicitMarketingPreference بـ customer.marketingRightsInfo.

  • تم تقسيم الحقل netAmount إلى netPriceAmount وnetTaxAmount.

  • تم استبدال shippingOption بـ lineItems[].shippingDetails.

  • تمت إزالة الحقول amount وamountPretax وamountTax في CancelLineItem من الطلب. يتم الآن احتساب المبلغ المسترد تلقائيًا.

  • تمت إزالة CustomBatch.

  • تمت إزالة Refund. استخدِم refundOrder أو refundItem بدلاً من ذلك.

  • تمت إزالة الحقل paymentMethod.

  • تم استبدال الطريقتَين orders.returnlineitem وorders.refund في الإصدار 2 بـ orderreturns.creatOrderReturn وorderreturns.process.

  • تمت إزالة الحقول customer.email وchannelType وlineItem.product.channel.

  • تمت إزالة الحقل promotions من خدمة TestOrder وتم تغيير تنسيقه في Order.

7. تعديل الطلبات إلى خدمة orderinvoice

  • تم استبدال الحقلَين amountPretax وamountTax بـ priceAmount وtaxAmount على التوالي. يمكن أن يكون الحقل priceAmount قبل الضريبة أو بعد الضريبة، وذلك حسب موقع الطلب.

  • تمت إزالة الأرصدة (التاجر والعميل وGoogle) في invoiceSummary والحقول المرتبطة برسوم العروض الترويجية.

8. إزالة الوظائف غير المضمّنة في الإصدار 2.1

تمت إزالة العديد من الميزات الأخرى من Content API في الإصدار 2.1. يُرجى مراجعة القائمة التالية وتعديل تطبيقك حسب الحاجة:

  • لم يعُد يتم دعم XML. لمزيد من المعلومات حول التبديل إلى JSON، يُرجى الاطّلاع على مقالة إيقاف دعم XML في Content API في Google Shopping.

  • تمت إزالة المَعلمة dryRun. ويسري هذا التغيير على جميع طلبات واجهة برمجة التطبيقات.

  • تمت إزالة جميع طرق HTTP BATCH. استخدِم customBatch بدلاً من ذلك.

  • تمت إزالة طريقة patch من الخدمات التالية:

    • accounts
    • accounttax
    • datafeeds
    • liasettings
    • shippingsettings
  • تمت إزالة خدمة orderpayments.

اختبار عملية نقل البيانات

لمزيد من المعلومات حول اختبار التغييرات التي تم إجراؤها على تطبيقاتك بعد نقل البيانات إلى الإصدار 2.1، يُرجى الاطّلاع على مقالة اختبار استخدامات Content API في Google Shopping. إذا واجهت مشاكل أثناء اختبار التعديلات، يمكنك التواصل معنا.

تغييرات إضافية في الإصدار 2.1

بالإضافة إلى التغييرات التي تتطلّب إجراء تعديلات، يقدّم الإصدار 2.1 أيضًا العديد من الميزات الجديدة والتغييرات غير الرئيسية:

  • خدمات جديدة:

    • تتيح لك خدمة localinventory الجديدة إجراء تعديلات على المنتجات المحلية (بدلاً من خدمة inventory في الإصدار 2).

    • تسهّل خدمة orderreturns إدارة ميزة "الشراء على Google" (المعروفة سابقًا باسم "إعلانات Shopping") من خلال السماح لك بمعالجة عمليات الإرجاع بدون الحاجة إلى استخدام خدمة orders.

  • تتيح لك الخلاصات التكميلية إجراء تعديلات جزئية على المنتجات.

  • تغييرات إضافية على خدمة products:

    • لم يعُد الموقع الإلكتروني products.insert يطلب الإبلاغ عن التحذيرات أو الأخطاء غير الفادحة. يتيح لك ذلك إدراج المنتجات وإجراء تعديلات لاحقة لحلّ المشاكل من خلال قواعد الخلاصات في Merchant Center، بالطريقة نفسها المعتمدة لحلّ المشاكل في الخلاصات التي تتم إدارتها خارج Content API.

    • تمت إضافة products.update للسماح لك بإجراء تعديلات على مجموعة معيّنة من حقول المنتجات. لمزيد من المعلومات حول الاستخدام المحتمَل، يُرجى الاطّلاع على الـ دليل.

    • لم تعُد القيم غير الصالحة للسمات التالية تؤدي إلى ظهور أخطاء في الإدراج ، ويتم عرضها كجزء من itemLevelIssues من خلال خدمة productstatus:

      • ageGroup
      • availability
      • condition
      • energyEfficiencyClass
      • gender
      • maxEnergyEfficiencyClass
      • minEnergyEfficiencyClass
      • sizeSystem
      • sizeType
    • أصبحت السمات المخصّصة الآن متكرّرة، ما يزيل الحاجة إلى المجموعات المخصّصة.

    • تحتوي السمات المخصّصة الآن على حقل groupValues بالإضافة إلى حقل value الأصلي. يجب ضبط حقل واحد فقط من الحقلَين.