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

Gerar feed e trocar o token

Gera agora o arquivo de um feed (e o publica no link público) e troca o token do link quando ele vazou ou precisa ser rotacionado.

O link público de um feed serve um arquivo já gerado. Estas duas rotas controlam esse arquivo e o acesso a ele: uma gera o arquivo agora, a outra troca o token do link. Ambas exigem o módulo data-feeds e o privilégio manage_data_feeds ou manage_catalog.

POST/api/v1/admin/data-feeds/{id}/generateAdmin

Gera o arquivo do feed agora

Monta o arquivo com os filtros e o mapeamento do feed, grava no servidor (o que passa a ser servido pelo link público) e devolve o conteúdo na própria resposta. Atualiza no feed last_generated_at, product_count, file_path e file_url.

A resposta não é JSON: é o arquivo, com o Content-Type do formato (application/xml, text/csv ou application/json). Em feeds grandes ele pode ter muitos megabytes. Sem corpo na requisição.

Parâmetros de caminho

iduuidobrigatório
Id do feed.

Cabeçalhos da resposta

X-Feed-Persistedstring
truefalse
true quando o arquivo foi gravado e o link público já serve a versão nova. false quando a geração funcionou mas a gravação falhou: o conteúdo veio na resposta, mas o link público continua com a versão antiga (ou 404, se nunca houve uma).
POST/api/v1/admin/data-feeds/{id}/regenerate-tokenAdmin

Troca o token do link público

Cria um token novo. O link antigo deixa de funcionar na hora (404), e o public_url da resposta é o novo. Sem corpo.

Parâmetros de caminho

iduuidobrigatório
Id do feed.

Exemplo de requisição

bash
# gerar e guardar uma cópia local
curl -X POST "$BASE_URL/api/v1/admin/data-feeds/$FEED/generate" \
  -H "Authorization: Bearer $TOKEN" -D - -o feed.xml

# rotacionar o token do link
curl -X POST "$BASE_URL/api/v1/admin/data-feeds/$FEED/regenerate-token" \
  -H "Authorization: Bearer $TOKEN"

Resposta

200Arquivo gerado (trecho de um feed google_shopping)
xml
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:g="http://base.google.com/ns/1.0">
  <title>Venddor Product Feed</title>
  <updated>2026-10-11T21:09:26Z</updated>
  <entry>
    <title>Relógio Max Verde 02517</title>
    <link rel="alternate" href="https://minhaloja.io.venddor.com.br/products/relogio-max-verde-02517-2517"></link>
    <g:id>aa595524-5b8c-41d6-b865-cb50f0314197</g:id>
    <g:price>11.68 BRL</g:price>
    <g:sale_price>9.90 BRL</g:sale_price>
    <g:availability>in_stock</g:availability>
    <g:condition>new</g:condition>
  </entry>
</feed>
200Token trocado
json
{
  "id": "18310126-9730-4558-92c1-d9357c8d2792",
  "name": "Google Shopping",
  "feed_type": "google_shopping",
  "file_format": "xml",
  "status": "A",
  "schedule_interval": 86400,
  "last_generated_at": "2026-10-11T21:09:26.743834Z",
  "file_url": "https://minhaloja.io.venddor.com.br/api/v1/feeds/e60cf94168cb...be26.xml",
  "file_path": "feed.xml",
  "product_count": 48,
  "filters": { "status": "active", "in_stock": true },
  "field_mapping": {},
  "public_token": "7c1d0b9e4a2f83d65e1c0a9b7f3d2e4a8b6c5d1e0f9a7b3c2d4e6f8a0b1c2d3e",
  "public_url": "https://minhaloja.io.venddor.com.br/api/v1/feeds/7c1d0b9e4a2f83d65e1c0a9b7f3d2e4a8b6c5d1e0f9a7b3c2d4e6f8a0b1c2d3e.xml",
  "created_at": "2026-10-11T21:09:26.676535Z",
  "updated_at": "2026-10-11T21:09:40.100000Z"
}

Campos da resposta (troca de token)

public_tokenstring
Token novo, de 64 caracteres.
public_urlstring
Link público novo. Entregue este ao canal.
file_urlstring
Continua apontando para o link antigo até a próxima geração. Use public_url, não file_url.

Os demais campos do feed estão em Consultar feeds.

Erros

StatusQuandoCorpo de exemplo
401Token ausente ou expirado{"error":"invalid or expired token"}
403Módulo desligado, ou falta o privilégio{"error":"module_disabled","module":"data-feeds"}
404Feed não existe{"error":"data feed not found"}
500Falha ao montar o arquivo, ou id que não é UUID{"error":"failed to generate feed","detail":"..."}
Gere depois de mudar filtros

Mudar filters, field_mapping ou o tipo de um feed não altera o arquivo já publicado. O link só muda na próxima geração, manual ou agendada. Depois de editar, chame generate e confirme X-Feed-Persisted: true.

Trocar o token quebra o canal

O Google ou o Meta que já tem o link antigo passa a receber 404 até você cadastrar o novo public_url. Troque o token quando o link vazar, e atualize o canal em seguida.

O arquivo vem com todos os produtos

Um feed grande vem inteiro na resposta de generate. Se você só quer publicar, ignore o corpo e confira o cabeçalho X-Feed-Persisted.

Veja também

  • Criar, alterar e apagar feeds
  • Consultar feeds
  • Feeds de dados
Anterior
Criar, alterar e apagar feeds
Próxima
Busca
Nesta página
  • Exemplo de requisição
  • Resposta
  • Erros
  • Veja também