يمكنك استخدام الخلاصات التكميلية لإجراء تعديلات جزئية على بيانات المنتجات عن طريق إضافة
feedId
كمَعلمة طلب بحث عند إجراء استدعاءات للطرق
products.insert
وproducts.delete
وproducts.custombatch.insert
وproducts.custombatch.delete
.
على سبيل المثال، يمكنك طلب عنوان URL التالي باستخدام طريقة الخلاصة التكميلية products.insert
:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
products.insert
تضيف طريقة products.insert
للخلاصة التكميلية حقول المنتجات التي ترسلها
في نص الطلب، وتستبدل هذه الحقول في حال توفّرها. وعند استخدام خلاصة تكميلية، تترك هذه الطريقة جميع حقول المنتجات الأخرى بدون تغيير، ما لم يتم تضمين الحقول في طلب سابق للخلاصة نفسها. وفي حين لا تتأثر البيانات التي تتم إضافتها عبر الخلاصات الأخرى، يحلّ كل طلب محلّ الطلبات السابقة للخلاصة نفسها. ويعني ذلك أنّك إذا أضفت حقلاً أو عدّلته من خلال طلب خلاصة تكميلية، ثم لم تضمّن الحقل في طلب لاحق، ستتم إزالة بيانات الحقل الذي تم حذفه من الخلاصة. يختلف هذا السلوك عن طلب products.insert
بدون خلاصة تكميلية، ما يؤدي إلى حذف جميع بيانات المنتجات الحالية واستبدالها بالحقول التي ترسلها في نص الطلب.
يمكنك استخدام عنوان URL التالي لتقديم طلب إلى خدمة "Product.insert
" في الخلاصة التكميلية:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
يجب تضمين الحقول offerId
وfeedLabel
وchannel
وcontentLanguage
في نص الطلب. وجميع الحقول الأخرى اختيارية.
مثال
لتغيير مدى توفّر منتج من "متوفّر" إلى "غير متوفّر"، يمكنك استخدام نص الطلب التالي لإنشاء طلب خاص بطريقة Product.insert
الخاصة بالخلاصات التكميلية:
{
"offerId": "1111111111",
"contentLanguage": "en",
"feedLabel": "US",
"channel": "online",
"availability": "out of stock",
}
products.delete
تزيل الطريقة products.delete
جميع البيانات التكميلية التي تمت إضافتها سابقًا من خلال طلبات products.insert
باستخدام الخلاصة التكميلية المحدّدة. لا يؤثر طلب هذه الطريقة لخلاصة تكميلية في بيانات المنتج الأصلية التي تمت إضافتها قبل إجراء طلبات Product.insert
للخلاصة التكميلية. يشبه ذلك إزالة طبقة بيانات من خلاصة معيّنة،
لن تتأثر البيانات التي تمّت إضافتها من خلال الخلاصات الأخرى
وسيعود المنتج إلى حالته السابقة قبل إضافة طبقة الخلاصة التكميلية. ويختلف ذلك عن طلب products.delete
بدون خلاصة تكميلية، ما يؤدي إلى حذف المنتج بأكمله وجميع بياناته.
استخدِم عنوان URL التالي لتقديم طلب إلى خدمة الخلاصة التكميلية products.delete
، حيث يكون productId
هو معرّف REST للمنتج، ويتم تمثيله على النحو التالي: channel:contentLanguage:feedLabel:offerId
:
DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId?feedId=feedId
وليس هناك حاجة إلى نصّ للطلب لاستدعاءات طريقة products.delete
في الخلاصات التكميلية.
products.custombatch
تتيح لك طُرق custombatch
insert
أو delete
بيانات الخلاصة التكميلية لمنتجات متعددة باستخدام طلب بيانات واحد من واجهة برمجة التطبيقات لتقليل عدد طلبات البيانات من واجهة برمجة التطبيقات.
استخدِم عنوان URL التالي الخاص بالطلب لإجراء اتصال custombatch
:
https://shoppingcontent.googleapis.com/content/v2.1/products/batch
في جميع طلبات "custombatch
" للخلاصة التكميلية، يجب تضمين المعلَمات batchId
وmerchantID
وmethod
وfeedId
في نص الطلب.
products.custombatch:insert
عند طلب خلاصات تكميلية باستخدام الطريقة products.custombatch:insert
، يجب تضمين السمات offerId
وfeedLabel
وchannel
وcontentLanguage
في نص الطلب، بالإضافة إلى المعلَمات المطلوبة batchId
وmerchantID
وmethod
. وجميع حقول المنتجات الأخرى اختيارية.
مثال
لتعديل قيمة price
لمنتجين حاليين، يمكنك استخدام
الطلب التالي لإجراء استدعاء طريقة products.custombatch:insert
:
{
"entries": [
{
"batchId": 1111,
"merchantId": 1234567,
"method": "insert",
"feedId": "7654321",
"product": {
"offerId": "1111111111",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"price": {
"value": "30.99",
"currency": "USD"
}
}
},
{
"batchId": 1112,
"merchantId": 1234567,
"method": "insert",
"feedId": "7654321",
"product": {
"offerId": "2222222222",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"price": {
"value": "33.99",
"currency": "USD"
},
},
}
}
products.custombatch:delete
لإزالة كل التعديلات التي تم إجراؤها على منتجَين من خلال خلاصة تكميلية محدّدة، يمكنك استخدام الطلب التالي لإجراء استدعاء طريقة products.custombatch:delete
:
{
"entries": [
{
"batchId": 1115,
"merchantId": 1234567,
"method": "delete",
"feedId": "7654321",
"productId": "online:en:US:1111111111"
},
{
"batchId": 1116,
"merchantId": 1234567,
"method": "delete",
"feedId": "7654321",
"productId": "online:en:US:2222222222"
}
]
}