هنگام برقراری تماس با روشهای products.insert
، products.delete
، products.custombatch.insert
، و products.custombatch.delete
، میتوانید از فیدهای تکمیلی برای بهروزرسانی جزئی دادههای محصول با افزودن feedId
به عنوان پارامتر جستجو استفاده کنید.
برای مثال، میتوانید یک فراخوانی با روش فید تکمیلی products.insert
به URL زیر برقرار کنید:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
محصولات.درج
روش افزودنی feed products.insert
فیلدهای محصولی را که ارسال میکنید در متن درخواست اضافه میکند و در صورت وجود، آن فیلدها را بازنویسی میکند. هنگام استفاده از خوراک تکمیلی، این روش همه فیلدهای محصول دیگر را بدون تغییر می گذارد، مگر اینکه فیلدها در درخواست قبلی برای همان خوراک گنجانده شده باشند. در حالی که داده های اضافه شده از طریق سایر فیدها تحت تأثیر قرار نمی گیرند، هر درخواست درخواست های قبلی را برای همان فید بازنویسی می کند. این بدان معنی است که اگر یک فیلد را از طریق یک درخواست فید تکمیلی اضافه یا به روز کنید، و سپس آن فیلد را در درخواست بعدی وارد نکنید، داده های فیلد حذف شده از فید حذف می شود. این رفتار با فراخوانی products.insert
بدون فید مکمل متفاوت است، که تمام دادههای محصول موجود را حذف میکند و آن را با فیلدهایی که در متن درخواست ارسال میکنید جایگزین میکند.
از نشانی اینترنتی زیر برای ارسال درخواست به سرویس خوراک تکمیلی 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.insert
اضافه شده بود حذف میکند. تماسها را با استفاده از فید تکمیلی مشخص شده درج کنید. فراخوانی این روش برای خوراک تکمیلی بر دادههای محصول اصلی اضافهشده قبل از برقراری تماس(های) Product.insert
فید مکمل تأثیری نمیگذارد. شما می توانید به این فکر کنید مانند حذف یک لایه داده برای یک فید خاص. دادههای اضافهشده از طریق سایر خوراکها بیتأثیر است و محصول بهطور مؤثری به حالت قبلی خود قبل از اضافه شدن لایه خوراک مکمل باز میگردد. این با فراخوانی products.delete
بدون فید تکمیلی، که کل محصول و همه دادههای آن را حذف میکند، متفاوت است.
از نشانی اینترنتی زیر برای درخواست خدمات feed مکمل products.delete
استفاده کنید، که در آن productId
شناسه REST محصول است که به صورت: channel:contentLanguage:feedLabel:offerId
نشان داده شده است:
DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId?feedId=feedId
هیچ درخواستی برای products.delete
فیدهای تکمیلی لازم نیست. فراخوانی روش حذف.
محصولات.دستگاه سفارشی
روشهای custombatch
به شما این امکان را میدهند که با استفاده از یک تماس API، دادههای فید تکمیلی را برای چندین محصول insert
یا delete
تا تعداد تماسهای API را به حداقل برسانید.
از URL درخواست زیر برای برقراری تماس دستهای custombatch
استفاده کنید:
https://shoppingcontent.googleapis.com/content/v2.1/products/batch
برای همه فراخوانهای custombatch
فید تکمیلی، باید پارامترهای batchId
، merchantID
، method
و feedId
را در بدنه درخواست قرار دهید.
products.custombatch:درج
هنگام برقراری تماس فید تکمیلی با روش products.custombatch:insert
، باید علاوه بر پارامترهای batchId
، merchantID
و method
مورد نیاز، offerId
، feedLabel
، channel
، و contentLanguage
را در بدنه درخواست اضافه کنید. تمام فیلدهای محصول دیگر اختیاری هستند.
مثال
برای بهروزرسانی ارزش 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:حذف
برای حذف همه بهروزرسانیهای انجامشده برای دو محصول از طریق یک فید مکمل مشخص، میتوانید از درخواست زیر برای برقراری فراخوانی روش 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"
}
]
}