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

משתמשים בכתובת ה-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

ה-method 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

לא נדרש גוף בקשה עבור קריאות ל-method 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

כשמפעילים קריאות פיד משלימות ל-method products.custombatch:insert, צריך לכלול את הפרמטרים offerId, feedLabel, channel ו-contentLanguage בגוף הבקשה, בנוסף לפרמטרים הנדרשים של batchId, merchantID ו-method. כל שאר שדות המוצרים הם אופציונליים.

דוגמה

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

כדי להסיר את כל העדכונים לשני מוצרים באמצעות פיד משלים ספציפי, אפשר להשתמש בבקשה הבאה כדי לשלוח קריאה ל-method 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"
    }
  ]
}