HTTP Request

A Ferramenta Mais Poderosa e Versátil do n8n
AutomationsAI.net

O que o HTTP Request Faz

O nó HTTP Request no n8n é uma das ferramentas mais poderosas e versáteis do seu arsenal de workflow, permitindo que você se conecte com qualquer API, mesmo quando o n8n não oferece uma integração nativa.

  • Faz chamadas HTTP de saída (GET, POST, PUT, DELETE, PATCH, etc.) para qualquer endpoint
  • Permite buscar ou enviar dados para serviços de terceiros, acionar ações ou integrar APIs legadas ou customizadas
  • Lida com tudo: desde APIs REST padrão até casos avançados como autenticação, uploads multi-part (arquivos) e parsing de JSON, XML ou texto
  • Pode ser usado para construir qualquer automação: buscar clima, enviar formulários, consultar bancos de dados, controlar dispositivos smart, invocar cloud functions e muito mais
Flow & Core Nodes

Principais Casos de Uso

  • Conectar com plataformas não suportadas nativamente pelo n8n, incluindo ferramentas internas de negócio ou produtos SaaS obscuros
  • Customizar ou estender ações integradas (mesmo para serviços como Gmail ou Airtable) quando você precisa de mais controle ou acesso do que o nó padrão oferece
  • Lidar com webhooks de API, interagir com serviços de IA, fazer scraping de dados ou enviar notificações para Slack, Discord, Telegram, etc.
  • Construir automações escaláveis onde batching, requisições paralelas ou jobs com limite de taxa são necessários

Como Usar o HTTP Request

  1. Adicionar o Nó: Insira o nó HTTP Request onde seu workflow precisa interagir com um sistema externo
  2. Escolher Método e URL: Selecione o método HTTP (GET, POST, etc.) e especifique o endpoint da API completo que você quer chamar
  3. Configurar Autenticação:
    • Para tipos de auth nativamente suportados, use Predefined Credential Type (OAuth, API key, Basic, etc.)
    • Para APIs não suportadas/customizadas, configure headers manualmente no nó usando campos de expressão ou credenciais armazenadas
  4. Adicionar Query ou Body Parameters:
    • Preencha parâmetros como pares chave/valor ou em formato JSON
    • Referencie dados de nós anteriores com sistema de expressões do n8n (ex: {{$json.email}})
  5. Tratar Resposta:
    • O nó produz o JSON (ou texto/XML) da API como novos itens de dados para processamento downstream
    • Use nós Set, Code ou Edit Fields conforme necessário para transformar os resultados para próximos passos
  6. Importar de cURL:
    • Você pode colar um comando cURL e o n8n preencherá automaticamente todos os campos relevantes
    • Economiza tempo massivo de configuração para endpoints complexos
  7. Batching e Loops:
    • Esteja ciente que passar múltiplos itens para o nó HTTP Request os envia em lotes paralelos
    • Gerencie limites de taxa de API adequadamente controlando tamanho de lote ou usando nós Split In Batches/Loop Over Items para requisições sequenciais

Métodos HTTP Comuns

  • GET: Buscar dados de uma API (ex: listar usuários, obter detalhes de produto)
  • POST: Criar novos recursos (ex: adicionar novo contato, enviar formulário)
  • PUT: Atualizar recurso completo (substituição total)
  • PATCH: Atualizar campos específicos de um recurso (atualização parcial)
  • DELETE: Remover um recurso (ex: deletar registro, cancelar assinatura)

Autenticação

Tipos Comuns de Autenticação

  • API Key: Token passado em header (ex: Authorization: Bearer TOKEN) ou query parameter
  • OAuth 2.0: Fluxo de autenticação para serviços como Google, Facebook, etc.
  • Basic Auth: Username e password codificados em Base64
  • Custom Headers: Headers específicos da API (ex: X-API-Key: seu-token)
  • JWT: JSON Web Tokens para autenticação stateless

Melhores Práticas

  • Use o sistema de Credentials do n8n, nunca hardcode chaves nos campos dos nós
  • Para APIs não suportadas, crie Generic Credential Type para reutilização
  • Proteja credenciais sensíveis com permissões apropriadas de workspace

Exemplos Práticos

Exemplo 1: Buscar Dados de API

Cenário: Buscar lista de produtos de uma API

  • Método: GET
  • URL: https://api.exemplo.com/products
  • Headers: Authorization: Bearer {{$credentials.apiKey}}
  • Response: JSON com array de produtos

Exemplo 2: Criar Novo Registro

Cenário: Adicionar novo lead ao CRM

  • Método: POST
  • URL: https://crm.exemplo.com/api/leads
  • Body: {"name": "{{$json.name}}", "email": "{{$json.email}}", "source": "website"}
  • Response: Confirmação com ID do lead criado

Exemplo 3: Atualizar Dados

Cenário: Atualizar status de pedido

  • Método: PATCH
  • URL: https://api.exemplo.com/orders/{{$json.orderId}}
  • Body: {"status": "shipped", "tracking": "{{$json.trackingNumber}}"}
  • Response: Pedido atualizado

Exemplo 4: Upload de Arquivo

Cenário: Fazer upload de imagem para storage

  • Método: POST
  • URL: https://storage.exemplo.com/upload
  • Body Type: Multipart Form Data
  • Fields: file = binary data do item
  • Response: URL da imagem hospedada

Melhores Práticas e Dicas

  • Use o sistema de Credentials, nunca hardcode chaves em campos de nós
  • Log request/response data para debugging fácil
  • Leia respostas de erro e gerencie retries para falhas intermitentes, especialmente com APIs com limite de taxa ou instáveis
  • Entenda a diferença entre requisições paralelas (padrão) vs. sequenciais - sequencial é crítico para algumas APIs evitarem banimentos ou throttling
  • Quando resolver problemas, inspecione docs completas da API, logs de execução de nós e comece com requisições GET simples antes de mover para POSTs complexos ou fluxos de auth
  • Use Import from cURL quando API fornece exemplos cURL - economiza tempo enorme
  • Teste com dados de exemplo antes de ativar workflow com dados reais
  • Configure timeouts apropriados para APIs lentas
  • Implemente retry logic para APIs não confiáveis

Tratamento de Erros

Erros Comuns e Soluções

  • 401 Unauthorized: Verifique credenciais e headers de autenticação
  • 403 Forbidden: Verifique permissões da API key ou escopo do OAuth
  • 404 Not Found: Confirme URL e existência do recurso
  • 429 Too Many Requests: Implemente rate limiting com Loop Over Items + Wait
  • 500 Internal Server Error: Problema no servidor da API, implemente retry
  • Timeout: Aumente timeout ou otimize requisição

Dicas para Debugging

  • Habilite "Full Response" nas opções para ver headers e status code
  • Use ferramentas como Postman ou cURL para testar API isoladamente
  • Verifique documentação da API para formato correto de request/response
  • Adicione nós de logging para capturar requests e responses

Recursos Avançados

Pagination

Para APIs que retornam dados paginados:

  • Use Loop Over Items para iterar páginas
  • Incremente page number ou use next_page tokens
  • Combine resultados com Aggregate

Rate Limiting

Controle velocidade de requisições:

  • Use Loop Over Items com batch size 1
  • Adicione Wait node entre requisições
  • Monitore headers de rate limit da API

Retry Logic

Implemente tentativas automáticas:

  • Configure "Retry on Fail" nas opções do nó
  • Defina número de tentativas e intervalo
  • Use Error Workflow para tratamento customizado