Usar feeds complementares com a API Content

Você pode usar feeds complementares para fazer atualizações parciais nos dados do produto adicionando feedId como parâmetro de consulta ao fazer chamadas para o products.insert, products.delete, products.custombatch.insert, e products.custombatch.delete métodos.

Por exemplo, você pode fazer uma chamada de método de feed complementar products.insert para o seguinte URL:

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

products.insert

O método products.insert do feed complementar adiciona os campos de produto que você envia no corpo da solicitação, substituindo esses campos, se eles existirem. Ao usar um feed complementar, esse método deixa todos os outros campos do produto inalterados, a menos que os campos foram incluídos em uma solicitação anterior para o mesmo feed. Embora os dados adicionadas por outros feeds não é afetada, cada solicitação substitui a anterior para o mesmo feed. Isso significa que, se você adicionar ou atualizar um campo por meio de uma solicitação de feed complementar e não inclua o campo em uma solicitação, os dados do campo omitido são removidos do feed. Esse comportamento é diferente de chamar products.insert sem um feed complementar, que exclui todos os dados de produtos existentes e os substitui pelos campos enviados do corpo da solicitação.

Use o URL a seguir para fazer uma solicitação ao feed complementar. Serviço Product.insert:

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

Você precisa incluir offerId, feedLabel, channel e Campos contentLanguage no corpo da solicitação. Todos os outros campos são opcionais.

Exemplo

Para mudar a disponibilidade de um produto de "em estoque" para "esgotado", você use o seguinte corpo da solicitação para criar feeds complementares Product.insert:

{
 "offerId": "1111111111",
 "contentLanguage": "en",
 "feedLabel": "US",
 "channel": "online",
 "availability": "out of stock",
}

products.delete

O método products.delete remove todos os dados complementares que foram adicionado anteriormente por chamadas products.insert usando a função complementar especificada se alimentam. Chamar esse método para um feed complementar não afeta o dados de produtos adicionados antes das chamadas Product.insert do feed complementar serem feitas. Pense nisso como remover uma camada de dados de um feed específico. os dados adicionados em outros feeds não são afetados, e o produto funciona retorna ao estado anterior à adição da camada do feed complementar. Isso é diferente de chamar products.delete sem um feed complementar, que exclui o produto inteiro e todos os dados dele.

Use o URL a seguir para solicitar o feed complementar products.delete. em que productId é o ID REST do produto, representado como: channel:contentLanguage:feedLabel:offerId:

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

Nenhum corpo de solicitação é necessário para chamadas de método products.delete de feeds complementares.

products.custombatch

Os métodos custombatch permitem que você insert ou delete feed complementar de vários produtos usando uma única chamada de API para minimizar o número de solicitações chamadas.

Use o seguinte URL de solicitação para fazer uma chamada custombatch:

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

Para todas as chamadas custombatch do feed complementar, é necessário incluir batchId, Parâmetros merchantID, method e feedId na solicitação corpo

products.custombatch:insert

Ao fazer chamadas de feed complementar para o método products.custombatch:insert, inclua offerId, feedLabel, channel e contentLanguage no corpo da solicitação, além do batchId obrigatório, Parâmetros merchantID e method. Todos os outros campos do produto são opcionais.

Exemplo

Para atualizar o valor price de dois produtos existentes, você pode usar o método seguinte solicitação para fazer uma chamada de método 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

Para remover todas as atualizações feitas em dois produtos usando um feed complementar especificado, use a seguinte solicitação para fazer uma solicitação products.custombatch:delete chamada de método:

{
  "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"
    }
  ]
}