Za pomocą dodatkowych plików danych możesz wprowadzać częściowe aktualizacje danych produktów. Aby to zrobić, dodaj feedId
jako parametr zapytania podczas wykonywania wywołań metod products.insert
, products.delete
, products.custombatch.insert
i products.custombatch.delete
.
Możesz na przykład wywołać metodę dodatkowego pliku danych products.insert
pod tym adresem URL:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
products.insert
Metoda products.insert
w dodatkowym pliku danych dodaje pola produktów wysłane w treści żądania, zastępując te pola, jeśli istnieją. Jeśli korzystasz z dodatkowego pliku danych, wszystkie pozostałe pola produktów pozostaną niezmienione, chyba że pola te zostały uwzględnione w poprzednim żądaniu dotyczącym tego samego pliku danych. Nie ma to wpływu na dane dodane za pomocą innych plików danych, ale każde żądanie zastępuje poprzednie żądania dotyczące tego samego pliku. Oznacza to, że jeśli dodasz lub zaktualizujesz pole za pomocą żądania dodatkowego pliku danych, a później nie dodasz tego pola w kolejnym żądaniu, dane w pominiętym polu zostaną usunięte z pliku danych. Różni się to od wywoływania metody products.insert
bez dodatkowego pliku danych, który usuwa wszystkie istniejące dane produktów i zastępuje je polami wysłanymi w treści żądania.
Aby przesłać prośbę o usługę dodatkowego pliku danych Product.insert
, użyj tego adresu URL:
POST https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products?feedId=feedId
W treści żądania musisz umieścić pola offerId
, feedLabel
, channel
i contentLanguage
. Wszystkie pozostałe pola są opcjonalne.
Przykład
Aby zmienić dostępność produktu z „w magazynie” na „niedostępny”, możesz użyć tej treści żądania, aby utworzyć dodatkowe pliki danych.
Wywołanie metody Product.insert
:
{
"offerId": "1111111111",
"contentLanguage": "en",
"feedLabel": "US",
"channel": "online",
"availability": "out of stock",
}
products.delete
Metoda products.delete
usuwa wszystkie dodatkowe dane, które zostały wcześniej dodane przez wywołania products.insert
przy użyciu określonego dodatkowego pliku danych. Wywołanie tej metody jako dodatkowego pliku danych nie ma wpływu na oryginalne dane produktów dodane przed wykonaniem wywołań Product.insert
w dodatkowym pliku danych. Można to potraktować jak usunięcie warstwy danych z konkretnego pliku danych. Nie wpłynie to na dane dodane za pomocą innych plików danych, a produkt przywróci poprzedni stan przed dodaniem warstwy dodatkowego pliku danych. Różni się to od wywoływania metody products.delete
bez dodatkowego pliku danych, co powoduje usunięcie całego produktu i wszystkich jego danych.
Użyj tego adresu URL, aby poprosić o usługę dodatkowego pliku danych products.delete
, gdzie productId
to identyfikator typu REST produktu, który jest przedstawiony w następujący sposób: channel:contentLanguage:feedLabel:offerId
:
DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId?feedId=feedId
W przypadku wywołań metody products.delete
w dodatkowych plikach danych nie jest wymagana treść żądania.
products.custombatch
Metody custombatch
umożliwiają insert
lub delete
pobieranie danych z dodatkowego pliku danych dla wielu produktów za pomocą jednego wywołania interfejsu API, aby zminimalizować liczbę wywołań interfejsu API.
Aby wykonać wywołanie custombatch
, użyj tego adresu URL żądania:
https://shoppingcontent.googleapis.com/content/v2.1/products/batch
W przypadku wszystkich wywołań dodatkowych plików danych custombatch
w treści żądania musisz umieścić parametry batchId
, merchantID
, method
i feedId
.
products.custombatch:insert
Przy wywoływaniu metody products.custombatch:insert
w dodatkowym pliku danych musisz umieścić w treści żądania offerId
, feedLabel
, channel
i contentLanguage
oprócz wymaganych parametrów batchId
, merchantID
i method
. Wszystkie inne pola produktu są opcjonalne.
Przykład
Aby zaktualizować wartość price
w przypadku 2 dotychczasowych produktów, możesz użyć tego żądania, aby wywołać metodę 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
Aby usunąć wszystkie aktualizacje wprowadzone w 2 produktach za pomocą dodatkowego pliku danych, możesz skorzystać z poniższego żądania i wywołać metodę 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"
}
]
}