Używanie dodatkowych plików danych w Content API

Za pomocą dodatkowych plików danych możesz częściowo aktualizować dane produktów. W tym celu dodaj feedId jako parametr zapytania podczas wywoływania 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 przesłane w treści żądania i zastępuje te pola, jeśli istnieją. Jeśli korzystasz z dodatkowego pliku danych, ta metoda pozostawia wszystkie inne pola produktów bez zmian, chyba że pola te zostały uwzględnione w poprzedniej prośbie o ten sam plik danych. Nie ma to wpływu na dane dodawane za pomocą innych plików danych, ale każde żądanie zastępuje poprzednie dotyczące tego samego pliku. Oznacza to, że jeśli dodasz lub zaktualizujesz pole za pomocą żądania dodatkowego pliku danych, a później nie uwzględnisz tego pola w kolejnym żądaniu, dane w pominiętym polu zostaną usunięte z pliku danych. To zachowanie różni się od wywoływania funkcji products.insert bez dodatkowego pliku danych, które powoduje usunięcie wszystkich istniejących danych produktów i zastąpienie ich polami przesłanymi w treści żądania.

Aby przesłać prośbę o dodatkowy plik 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 do wywołania metody Product.insert dodatkowego pliku danych:

{
 "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 funkcji products.insert za pomocą określonego dodatkowego pliku danych. Wywołanie tej metody w przypadku dodatkowego pliku danych nie ma wpływu na oryginalne dane produktów dodane przed wywołaniami Product.insert dodatkowego pliku danych. To jak usuwanie warstwy danych z określonego pliku danych, nie wpływa to na dane dodane za pomocą innych plików danych, a produkt w praktyce przywraca stan sprzed dodania warstwy dodatkowego pliku danych. Różni się to od wywoływania funkcji products.delete bez dodatkowego pliku danych, które powoduje usunięcie całego produktu i wszystkich jego danych.

Aby przesłać prośbę o usługę dodatkowego pliku danych products.delete, użyj tego adresu URL, gdzie productId to identyfikator REST produktu reprezentowanego jako: channel:contentLanguage:feedLabel:offerId:

DELETE https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId?feedId=feedId

Wywołania metody products.delete w dodatkowych plikach danych nie wymagają treści żądania.

products.custombatch

Metody custombatch pozwalają insert lub delete pobierać dane z dodatkowych plików danych wielu produktów za pomocą jednego wywołania interfejsu API, aby zminimalizować liczbę wykonanych wywołań interfejsu API.

Aby wywołać funkcję custombatch, użyj tego adresu URL żądania:

https://shoppingcontent.googleapis.com/content/v2.1/products/batch

W przypadku wszystkich wywołań funkcji custombatch w dodatkowym pliku danych musisz uwzględnić w treści żądania parametry batchId, merchantID, method i feedId.

products.custombatch:insert

Gdy wywołujesz metodę products.custombatch:insert za pomocą dodatkowego pliku danych, oprócz wymaganych parametrów batchId, merchantID i method musisz umieścić w treści żądania parametry offerId, feedLabel, channel i contentLanguage. Wszystkie pozostałe pola produktu są opcjonalne.

Przykład

Aby zaktualizować wartość price w 2 istniejących produktach, możesz użyć tego żądania do wywołania metody 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 2 produktów wprowadzone za pomocą określonego dodatkowego pliku danych, możesz użyć tego żądania do wywołania metody 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"
    }
  ]
}