Вы можете использовать дополнительные каналы для частичного обновления данных о товарах, добавив 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 без дополнительного фида, который удаляет все существующие данные продукта и заменяет их полями, указанными в теле запроса.
Для отправки запроса в сервис 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.insert с использованием указанного дополнительного фида. Вызов этого метода для дополнительного фида не влияет на исходные данные продукта, добавленные до вызова(й) Product.insert для дополнительного фида. Это можно сравнить с удалением слоя данных для определенного фида; данные, добавленные через другие фиды, остаются неизменными, и продукт фактически возвращается к своему предыдущему состоянию до добавления слоя дополнительного фида. Это отличается от вызова products.delete без дополнительного фида, который удаляет весь продукт и все его данные.
Для отправки запроса в сервис добавления products.delete в ленту используйте следующий URL-адрес, где 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.
Для выполнения custombatch вызова используйте следующий URL-адрес запроса:
https://shoppingcontent.googleapis.com/content/v2.1/products/batch
Для всех дополнительных вызовов custombatch данных необходимо включать параметры batchId , merchantID , method и feedId в тело запроса.
продукты.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"
},
},
}
}
продукты.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"
}
]
}