שימוש בפידים משלימים עם ה-Content API

אפשר להשתמש בפידים משלימים כדי לבצע עדכונים חלקיים של נתוני המוצרים. לשם כך, מוסיפים את 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 באמצעות הפיד המשני שצוין. הפעלת השיטה הזו בפיד משלים לא משפיעה על נתוני המוצרים המקוריים שנוספו לפני הפעלת השיחות של הפיד המשלים 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

בכל הקריאות ל-API של פידים משניים 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"
    }
  ]
}