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

Consultar feeds

Lista os feeds da loja, consulta um feed pelo id e lista os campos disponíveis para cada tipo de feed.

Estas três rotas leem. Use a lista para montar uma tela de gestão ou para achar o public_url de um feed, o detalhe para conferir filtros e mapeamento, e a rota de campos para saber o que cada tipo de feed pode conter antes de criar o seu. Todas exigem o módulo data-feeds ligado e o privilégio manage_data_feeds ou manage_catalog.

GET/api/v1/admin/data-feedsAdmin

Lista os feeds

Devolve os feeds, do mais novo para o mais antigo, com paginação.

Parâmetros de consulta

pageintegerpadrão: 1
Página, a partir de 1.
per_pageintegerpadrão: 20
Itens por página, de 1 a 100. Fora disso volta a 20.
vendor_iduuid
Só os feeds deste seller.
marketplace_onlyboolean
Com true, só os feeds da própria loja (sem seller). Ignorado quando vendor_id vem junto.
GET/api/v1/admin/data-feeds/{id}Admin

Consulta um feed

Devolve um feed, com public_url montado a partir do domínio da loja.

Parâmetros de caminho

iduuidobrigatório
Id do feed.
GET/api/v1/admin/data-feeds/fields/{feed_type}Admin

Lista os campos de um tipo de feed

Devolve os campos que o tipo suporta. Para google_shopping, facebook e mercado_livre é a lista curta, com os campos que o canal exige marcados como required. Para custom, é o catálogo completo de campos de produto (65), agrupado em categorias.

Parâmetros de caminho

feed_typestringobrigatório
google_shoppingfacebookmercado_livrecustom
Tipo do feed.

Exemplo de requisição

bash
curl "$BASE_URL/api/v1/admin/data-feeds?per_page=20" \
  -H "Authorization: Bearer $TOKEN"

curl "$BASE_URL/api/v1/admin/data-feeds/fields/google_shopping" \
  -H "Authorization: Bearer $TOKEN"

Resposta

200Feeds
json
{
  "feeds": [
    {
      "id": "8b538f09-c820-4fff-a03b-efcc2eebadb0",
      "name": "Google Shopping",
      "feed_type": "google_shopping",
      "file_format": "xml",
      "status": "A",
      "schedule_interval": 86400,
      "last_generated_at": "2026-10-11T06:56:18.590595Z",
      "file_url": "https://minhaloja.io.venddor.com.br/api/v1/feeds/9f3c...e41a.xml",
      "file_path": "feed.xml",
      "product_count": 4977,
      "filters": { "status": "active", "in_stock": true },
      "field_mapping": {
        "fields": [
          { "feed_field": "g:id", "product_field": "id", "default_value": "", "prefix": "" },
          { "feed_field": "g:title", "product_field": "name", "default_value": "", "prefix": "" }
        ]
      },
      "public_token": "9f3c6a0d52b84e1a8c77d3e0f1a2b4c59f3c6a0d52b84e1a8c77d3e0f1a2e41a",
      "public_url": "https://minhaloja.io.venddor.com.br/api/v1/feeds/9f3c6a0d52b84e1a8c77d3e0f1a2b4c59f3c6a0d52b84e1a8c77d3e0f1a2e41a.xml",
      "created_at": "2026-07-20T00:57:26.898539Z",
      "updated_at": "2026-10-11T06:56:18.590789Z"
    }
  ],
  "total": 3,
  "page": 1,
  "per_page": 20,
  "total_pages": 1
}
200Campos do tipo google_shopping (reduzido)
json
{
  "feed_type": "google_shopping",
  "fields": [
    { "name": "g:id", "product_key": "id", "required": true, "description": "Unique product identifier" },
    { "name": "g:title", "product_key": "name", "required": true, "description": "Product title" }
  ],
  "categories": []
}

Campos de um feed

iduuid
Id do feed.
namestring
Nome, para você se orientar.
feed_typestring
google_shoppingfacebookmercado_livrecustom
Destino do feed.
file_formatstring
xmlcsvjson
Formato escolhido. Veja na home da seção quando ele é imposto pelo canal.
statusstring
AD
A ativo, D desativado.
schedule_intervalinteger
Intervalo de regeração em segundos. 0 é só manual.
last_generated_atstring
Última geração, RFC 3339. Ausente se nunca foi gerado.
file_urlstring
Endereço do último arquivo gerado. Vazio antes da primeira geração.
file_pathstring
Nome do arquivo gerado (feed.xml). Vazio antes da primeira geração.
product_countinteger
Produtos no último arquivo gerado.
filtersobject
Filtros do feed (status, category_ids, vendor_ids, min_price, max_price, in_stock).
field_mappingobject
Campos escolhidos (fields), cada um com feed_field, product_field, default_value e prefix.
public_tokenstring
Token de 64 caracteres do link público. Tratar como segredo.
public_urlstring
Link público do feed. Vazio se o servidor não conseguir resolver o domínio da loja.
vendor_iduuid
Seller dono do feed. Ausente nos feeds da loja.
created_atstring
Criação, RFC 3339 em UTC.
updated_atstring
Última alteração, RFC 3339 em UTC.

Campos de cada item de fields

namestring
Nome da coluna ou tag no arquivo (g:title, Name).
product_keystring
Campo do produto que alimenta a coluna.
requiredboolean
true quando o canal exige o campo.
descriptionstring
Explicação curta, em inglês.
categorystring
Grupo do campo. Só vem nos campos de custom (Core, Pricing, Stock, SEO...).

Erros

StatusQuandoCorpo de exemplo
400feed_type fora da lista{"error":"invalid feed_type","detail":"must be one of: google_shopping, facebook, mercado_livre, custom"}
401Token ausente ou expirado{"error":"invalid or expired token"}
403Módulo desligado{"error":"module_disabled","module":"data-feeds"}
403Falta o privilégio{"error":"insufficient privileges","privilege_required_any":["manage_data_feeds","manage_catalog"]}
404Feed não existe{"error":"data feed not found"}
500Id que não é UUID, ou falha ao consultar{"error":"failed to get data feed","detail":"..."}
O token aparece em toda resposta de leitura

public_token e public_url vêm em cada feed devolvido. Quem consegue chamar estas rotas consegue ler o link público de todos os feeds. Não registre as respostas em logs compartilhados.

Veja também

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