אפשר להשתמש בפידים משלימים כדי לבצע עדכונים חלקיים של נתוני המוצרים. לשם כך, מוסיפים את feedId כפרמטר שאילתה כשמבצעים קריאות לשיטות products.insert, products.delete, products.custombatch.insert ו-products.custombatch.delete.
לדוגמה, אפשר לבצע קריאה לשיטה של products.insert פיד משלים לכתובת ה-URL הבאה:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
products.insert
השיטה של פיד משלים products.insert מוסיפה את שדות המוצרים שאתם שולחים בגוף הבקשה, ודוחפת את הערכים הקיימים בשדות האלה אם הם קיימים. כשמשתמשים בפיד משלים, השיטה הזו לא משנה את שאר שדות המוצר, אלא אם השדות נכללו בבקשה קודמת לאותו פיד. הנתונים שנוספו דרך פידים אחרים לא מושפעים, אבל כל בקשה מחליפה את הבקשות הקודמות לאותו פיד. המשמעות היא שאם מוסיפים או מעדכנים שדה באמצעות בקשה לפיד משלים, ולאחר מכן לא כוללים את השדה בבקשה הבאה, הנתונים של השדה שהושמט מוסרים מהפיד. ההתנהגות הזו שונה מהתנהגות של קריאה ל-products.insert בלי פיד משלים, שבה כל נתוני המוצרים הקיימים נמחקים ומוחלפים בשדות שאתם שולחים בגוף הבקשה.
כדי לשלוח בקשה לשירות של פיד משלים Product.insert, משתמשים בכתובת ה-URL הבאה:
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 באמצעות פיד משלים שצוין. הפעלת ה-method הזו בפיד משלים לא משפיעה על נתוני המוצרים המקוריים שנוספו לפני ההפעלה של הפיד המשלים Product.insert. אפשר לחשוב על זה כמו הסרה של שכבת נתונים מפיד ספציפי. הנתונים שנוספו דרך פידים אחרים לא מושפעים, והמוצר חוזר למצב הקודם שלו לפני שהוספה שכבת הפיד המשלימה. הפעולה הזו שונה מהפעולה של קריאה לשיטה products.delete בלי פיד משלים, שמוחקת את כל המוצר ואת כל הנתונים שלו.
כדי לשלוח בקשה לשירות הפיד המשני products.delete, משתמשים בכתובת ה-URL הבאה, כאשר 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 נתונים של פיד משלים לכמה מוצרים באמצעות קריאה אחת ל-API, כדי לצמצם את מספר הקריאות ל-API.
כדי לבצע קריאה ל-custombatch, משתמשים בכתובת ה-URL הבאה של הבקשה:
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"
}
]
}