Вы можете использовать дополнительные каналы для частичного обновления данных о продуктах, добавив 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
без дополнительного фида, который удаляет все существующие данные о товарах и заменяет их полями, отправленными вами в теле запроса.
Используйте следующий 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.insert
с использованием указанного дополнительного фида. Вызов этого метода для дополнительного фида не влияет на исходные данные о товаре, добавленные до вызова(-ов) дополнительного фида Product.insert
. Это можно представить как удаление слоя данных для конкретного фида; данные, добавленные через другие фиды, остаются неизменными, и товар фактически возвращается к своему предыдущему состоянию до добавления слоя дополнительного фида. Это отличается от вызова products.delete
без дополнительного фида, который удаляет весь товар и все его данные.
Используйте следующий URL-адрес для создания запроса на дополнительную услугу feed 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
дополнительные данные фида для нескольких продуктов с помощью одного вызова API, что позволяет минимизировать количество выполняемых вызовов API.
Используйте следующий 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:удалить
Чтобы удалить все обновления, внесенные в два продукта через указанный дополнительный канал, можно использовать следующий запрос для вызова метода 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"
}
]
}