Вы можете использовать дополнительные каналы для частичного обновления данных о продуктах, добавляя 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-адрес, чтобы сделать запрос к службе дополнительного фида products.delete
, где productId
— это REST ID продукта, представленный как: channel:contentLanguage:feedLabel:offerId
:
DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId?feedId=feedId
Для дополнительных фидов products.delete
не требуется тело запроса. Удаление вызовов методов.
продукты.custombatch
Методы custombatch
позволяют insert
или delete
дополнительные данные фида для нескольких продуктов с помощью одного вызова API, чтобы минимизировать количество вызовов API.
Используйте следующий URL-адрес запроса, чтобы выполнить вызов custombatch
:
https://shoppingcontent.googleapis.com/content/v2.1/products/batch
Для всех дополнительных вызовов custombatch
фида необходимо включить параметры batchId
, merchantID
, method
и feedId
в текст запроса.
продукты.custombatch:вставить
При выполнении дополнительных вызовов фида для метода 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"
},
},
}
}
продукты.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"
}
]
}