// docs

iFood Restaurants Enriched

Busca restaurantes do iFood por keywords e CEPs, pagina os resultados e entrega uma base deduplicada de lojas com os principais dados do merchant.

Template ID

ifood-restaurants-enriched

Etapas

2

Formato final

JSON / CSV

Execução

Dashboard + API key

O que este workflow faz

Este workflow serve para descoberta e enriquecimento de restaurantes no iFood. Voce informa listas de keywords e CEPs, a GeckoAPI executa as buscas paginadas, deduplica as lojas encontradas e gera um artifact final com uma linha ou objeto por merchant unico.

Quando usar

  • Mapear redes de restaurantes e dark kitchens por regiao.
  • Montar listas operacionais para CRM, prospeccao e inteligencia local.
  • Cruzar presenca por keyword com dados estruturados da loja encontrada.

Como usar no dashboard

  1. PASSO 1

    No Dashboard, abra Workflows e selecione este template.

  2. PASSO 2

    Preencha as keywords, os CEPs que quer cobrir, a quantidade de paginas por busca e o formato final do arquivo.

  3. PASSO 3

    Revise a estimativa maxima de creditos antes de iniciar a execucao.

  4. PASSO 4

    Acompanhe o progresso das etapas de busca e enriquecimento enquanto o run estiver ativo.

  5. PASSO 5

    Ao terminar, baixe o artifact em JSON ou CSV e trate cada item como uma loja unica enriquecida.

Etapas do workflow

iFood Busca

#1

ifood_search

Pesquisa restaurantes por keyword e CEP, percorrendo as paginas configuradas e registrando as lojas descobertas.

iFood Loja

#2

ifood_store

Enriquece cada loja unica encontrada e consolida os dados finais do merchant para o artifact.

Campos de input

Estes são os campos usados no dashboard e no body do POST /v1/workflows/runs.

Campo Tipo Obrigatório Como usar Exemplo
Keywords
keywords
multiline_list Sim

Lista de termos usados nas buscas do iFood.

Aceita uma entrada por linha ou valores separados por virgula.

marmita\npizza\nhamburguer
CEPs
zipCodes
multiline_list Sim

CEPs que definem as regioes onde a busca sera executada.

Use CEPs reais da cobertura que voce quer analisar.

80010-000\n01310-100
Paginas por busca
pages
number Sim

Quantidade de paginas do iFood a percorrer para cada combinacao keyword x CEP.

Cada pagina adicional aumenta a cobertura e tambem a estimativa maxima de creditos.

2
Formato final
outputFormat
output_format Sim

Formato do artifact final.

JSON preserva a estrutura completa. CSV achata os campos principais.

json

Executar este template via API

O payload abaixo já usa este templateId e um body real compatível com o endpoint público. Depois da criação, acompanhe o run em GET /v1/workflows/runs/{runId}/status e, se necessário, cancele com POST /v1/workflows/runs/{runId}/cancel.

Ver guia completo da API de workflows
Criar workflow
curl -X POST https://api.geckoapi.com.br/v1/workflows/runs \
+  -H "Authorization: Bearer SUA_CHAVE" \
+  -H "Content-Type: application/json" \
+  -d '{
  "templateId": "ifood-restaurants-enriched",
  "input": {
    "keywords": [
      "marmita",
      "pizza"
    ],
    "zipCodes": [
      "80010-000"
    ],
    "pages": 2,
    "outputFormat": "csv"
  }
}'

Cancelar um workflow faz o resultado coletado até então se perder para consumo final, então use esse endpoint com cautela.

O que você recebe no arquivo final

Cada execucao gera um artifact com metadados do run, input usado, estimativa de creditos, resumo operacional e a lista final de lojas enriquecidas.

Lista deduplicada de lojas do iFood, mesmo quando a mesma loja aparece em multiplas buscas.
Metadados de descoberta como keywords, CEPs, pagina e primeira aparicao.
Dados principais do merchant enriquecido para cada loja unica.
Artifact pronto para download em JSON ou CSV.

Envelope do artifact

O arquivo final sempre carrega metadados do run, o input original, a estimativa usada na criação e o resumo operacional da execução.

artifact.json
{
  "runId": "run_ifood_123",
  "correlationId": "corr_ifood_123",
  "templateId": "ifood-restaurants-enriched",
  "outputFormat": "json",
  "generatedAt": "2026-03-23T12:00:00.000Z",
  "input": {
    "keywords": [
      "marmita",
      "pizza"
    ],
    "zipCodes": [
      "80010000"
    ],
    "pages": 2,
    "outputFormat": "json"
  },
  "estimate": {
    "maxCredits": 4212,
    "breakdown": [],
    "caps": []
  },
  "summary": {
    "status": "completed",
    "completedTasks": 18,
    "failedTasks": 1,
    "discoveredStores": 146,
    "uniqueStores": 89
  },
  "items": [
    {
      "storeId": "store-1",
      "matchedKeywords": [
        "pizza",
        "marmita"
      ],
      "matchedZipCodes": [
        "80010000"
      ],
      "hitCount": 3,
      "firstSeen": {
        "keyword": "pizza",
        "zipCode": "80010000",
        "page": 1,
        "position": 4,
        "url": "https://www.ifood.com.br/delivery/curitiba-pr/pizza-do-centro/store-1",
        "name": "Pizza do Centro",
        "seenAt": "2026-03-23T11:58:00.000Z"
      },
      "merchant": {
        "name": "Pizza do Centro",
        "url": "https://www.ifood.com.br/delivery/curitiba-pr/pizza-do-centro/store-1",
        "phone": "41 3333-4444",
        "mainCategoryName": "Pizza",
        "address": {
          "city": "Curitiba",
          "state": "PR",
          "zipCode": "80010000"
        },
        "deliveryTimeMin": 25,
        "deliveryFee": 6.9,
        "userRating": 4.8
      }
    }
  ]
}
Path Tipo Descrição Exemplo
correlationId string Correlacao interna usada para rastrear a execucao de ponta a ponta. corr_ifood_123
estimate.maxCredits number Estimativa maxima de creditos reservada para este run. 4212
generatedAt ISO-8601 string Momento em que o arquivo final foi consolidado. 2026-03-23T12:00:00.000Z
input.keywords[] string Keywords realmente usadas para montar as buscas. marmita
input.outputFormat "json" | "csv" Formato solicitado no momento da criacao do run. json
input.pages number Quantidade de paginas percorridas por busca. 2
input.zipCodes[] string CEPs realmente usados na execucao. 80010000
items[] WorkflowLegacyExportItem Lista final de lojas enriquecidas exportadas pelo workflow. {"storeId":"store-1","matchedKeywords":["pizza","marmita"],"matchedZipCodes":["80010000"],"hitCount":3,"firstSeen":{"keyword":"pizza","zipCode":"80010000","page":1,"position":4,"url":"https://www.ifood.com.br/delivery/curitiba-pr/pizza-do-centro/store-1","name":"Pizza do Centro","seenAt":"2026-03-23T11:58:00.000Z"},"merchant":{"name":"Pizza do Centro","url":"https://www.ifood.com.br/delivery/curitiba-pr/pizza-do-centro/store-1","phone":"41 3333-4444","mainCategoryName":"Pizza","address":{"city":"Curitiba","state":"PR","zipCode":"80010000"},"deliveryTimeMin":25,"deliveryFee":6.9,"userRating":4.8}}
outputFormat "json" | "csv" Formato do artifact baixado pelo usuario. json
runId string Identificador unico do run criado no dashboard. run_ifood_123
summary.completedTasks number Total de tarefas concluídas com sucesso. 18
summary.discoveredStores number Quantidade total de lojas vistas antes da deduplicacao. 146
summary.failedTasks number Total de tarefas que falharam na execucao. 1
summary.status WorkflowRunStatus Status final do workflow. completed
summary.uniqueStores number Quantidade de lojas unicas exportadas no arquivo final. 89
templateId string Template de workflow usado na execucao. ifood-restaurants-enriched

Estrutura de cada item

Cada item representa uma loja unica do iFood, com rastreabilidade de onde ela foi encontrada e os principais dados retornados no enrichment da loja.

item.json
{
  "storeId": "store-1",
  "matchedKeywords": [
    "pizza",
    "marmita"
  ],
  "matchedZipCodes": [
    "80010000"
  ],
  "hitCount": 3,
  "firstSeen": {
    "keyword": "pizza",
    "zipCode": "80010000",
    "page": 1,
    "position": 4,
    "url": "https://www.ifood.com.br/delivery/curitiba-pr/pizza-do-centro/store-1",
    "name": "Pizza do Centro",
    "seenAt": "2026-03-23T11:58:00.000Z"
  },
  "merchant": {
    "name": "Pizza do Centro",
    "url": "https://www.ifood.com.br/delivery/curitiba-pr/pizza-do-centro/store-1",
    "phone": "41 3333-4444",
    "mainCategoryName": "Pizza",
    "address": {
      "city": "Curitiba",
      "state": "PR",
      "zipCode": "80010000"
    },
    "deliveryTimeMin": 25,
    "deliveryFee": 6.9,
    "userRating": 4.8
  }
}
Path Tipo Descrição Exemplo
firstSeen.keyword string Primeira keyword em que a loja apareceu. pizza
firstSeen.name string | null Nome observado na primeira aparicao. Pizza do Centro
firstSeen.page number Pagina da primeira aparicao. 1
firstSeen.position number | null Posicao aproximada da primeira aparicao na listagem. 4
firstSeen.seenAt ISO-8601 string Momento em que a loja foi vista pela primeira vez. 2026-03-23T11:58:00.000Z
firstSeen.url string | null URL observada quando a loja foi vista pela primeira vez. https://www.ifood.com.br/delivery/curitiba-pr/pizza-do-centro/store-1
firstSeen.zipCode string Primeiro CEP em que a loja apareceu. 80010000
hitCount number Numero de aparicoes desta loja durante o run. 3
matchedKeywords[] string Keywords nas quais esta loja apareceu durante a coleta. pizza
matchedZipCodes[] string CEPs em que a loja foi encontrada. 80010000
merchant.address.city string | null Cidade associada ao merchant. Curitiba
merchant.address.state string | null UF associada ao merchant. PR
merchant.address.zipCode string | null CEP associado ao merchant. 80010000
merchant.deliveryFee number | null Taxa de entrega capturada no enrichment. 6.9
merchant.deliveryTimeMin number | null Tempo estimado de entrega em minutos. 25
merchant.mainCategoryName string | null Categoria principal exibida pelo iFood. Pizza
merchant.name string Nome consolidado da loja enriquecida. Pizza do Centro
merchant.phone string | null Telefone do merchant quando disponivel. 41 3333-4444
merchant.url string URL final da loja no iFood. https://www.ifood.com.br/delivery/curitiba-pr/pizza-do-centro/store-1
merchant.userRating number | null Nota publica da loja quando disponivel. 4.8
storeId string Identificador da loja unica no artifact final. store-1

Observações importantes

  • A estimativa usa um teto conservador de resultados por pagina para reservar saldo antes da execucao.
  • O CSV achata os campos principais; o JSON preserva a estrutura completa por item.
Grátis para sempre

Rodar este workflow no dashboard?

Use o template no dashboard para estimar créditos, acompanhar a execução por etapa e baixar o artifact final.

WhatsApp