VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa/Catálogo

Feeds de produtos

Baixa o arquivo de produtos que a loja publica para Google Merchant Center, Meta, marketplaces e ERPs, pelo link secreto ou pelo id do feed.

Um feed de produtos é um arquivo (XML, CSV ou JSON) com o catálogo da loja, no formato que um portal externo espera: Google Merchant Center, Meta, marketplaces, ERPs. O lojista cria e configura os feeds no painel (módulo de feeds de dados); estas duas rotas só entregam o arquivo, sem login, para o portal buscar de tempos em tempos. Não existe rota pública para criar ou listar feeds.

As duas rotas dependem do módulo de feeds ativo na loja. Com o módulo desligado, a rota por token responde 404, e a rota por id responde 403.

RotaIdentifica o feed porQuando usar
GET /api/v1/feeds/{token}Token secreto de 64 caracteresO link que o lojista cola no portal. Pode ser rotacionado.
GET /api/v1/storefront/feeds/{id}UUID do feedIntegrações que já conhecem o id. Gera na hora se não há arquivo pronto.

Feed pelo link secreto

O token é a credencial: quem o tem lê o feed. O lojista pode gerar um token novo no painel para invalidar um link vazado. A rota serve o arquivo pronto, gerado pelo agendador da loja; se o feed ainda não foi gerado, responde 404 com o texto Feed has not been generated yet. Um sufixo .xml, .csv ou .json no fim do token é aceito e ignorado (útil para portais que inferem o formato pela extensão): o Content-Type sai do formato configurado no feed.

GET/api/v1/feeds/{token}Pública

Baixar um feed pelo token secreto

Parâmetros de caminho

tokenstringobrigatório
Token do feed (64 caracteres), com extensão opcional (.xml, .csv, .json).

Exemplo de requisição

bash
curl "$BASE_URL/api/v1/feeds/$FEED_TOKEN.xml" -o catalogo.xml

Resposta

200Arquivo do feed
http
HTTP/1.1 200 OK
Content-Type: application/xml
Cache-Control: public, max-age=3600
X-Feed-Source: public-token

<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:g="http://base.google.com/ns/1.0">...</feed>

Campos da resposta

Content-Typeheader
application/xmltext/csvapplication/json
Segue o formato do feed.
Cache-Controlheader
public, max-age=3600: o arquivo é cacheável por 1 hora.
X-Feed-Sourceheader
public-tokencachedgenerated
Origem do conteúdo: public-token nesta rota; cached (arquivo pronto) ou generated (montado agora) na rota por id.

O corpo é o arquivo no formato configurado. O XML segue o padrão Atom do Google Shopping. Os campos de cada item dependem do tipo de feed escolhido pelo lojista.

Feed pelo id

Mesma entrega, mas pelo UUID do feed e sem token. Se existe um arquivo gerado pelo agendador, ele é servido; se não existe, o feed é montado na hora a partir do catálogo e dos filtros do feed (por padrão, só produtos ativos).

GET/api/v1/storefront/feeds/{id}Pública

Baixar um feed pelo id

Parâmetros de caminho

iduuidobrigatório
Id do feed, como aparece no painel.

Erros

StatusQuandoExemplo de corpo
403Módulo de feeds não está ativo na loja (rota por id){"error":"module_disabled","module":"data-feeds"}
404Token desconhecido ou módulo desligado (rota por token); feed inexistente (rota por id)404 page not found / {"error":"feed not found"}
404Rota por token, feed ainda sem arquivo geradoFeed has not been generated yet (texto puro)
500{id} que não é UUID, ou falha ao gerar{"error":"failed to generate feed","detail":"o valor \"abc\" não é um uuid válido. ..."}
503Armazenamento de arquivos de feed não configurado{"error":"feed storage not configured"}
Trate o token como senha

Quem tem o link lê o catálogo do feed, incluindo o preço de venda. Não publique o link em repositórios nem em páginas públicas. Se vazar, peça ao lojista para rotacionar o token no painel: o link antigo deixa de funcionar na hora.

Prefira o link por token em integrações novas

A rota por id não exige segredo: qualquer um que conheça o UUID do feed o lê. Use o link com token para portais externos e reserve a rota por id para integrações internas. Em ambos os casos, a resposta é cacheável por 1 hora, então mudanças de preço levam até esse tempo para chegar ao portal.

Veja também

  • Listar produtos
  • Visão geral do catálogo
Anterior
Marcas
Próxima
Busca
Nesta página
  • Feed pelo link secreto
  • Exemplo de requisição
  • Resposta
  • Feed pelo id
  • Erros
  • Veja também