HTTP Requests
Os nodes de HTTP Requests são fundamentais para integração com APIs e serviços externos no n8n. Eles permitem que você se comunique com qualquer sistema que tenha uma interface HTTP, seja para enviar dados ou receber notificações.
Nodes DisponĆveisā
HTTP Requestā
O node HTTP Request é usado para enviar requisições HTTP para APIs e serviços externos. à o node mais versÔtil para integração com sistemas que não possuem nodes dedicados.
Principais funcionalidades:
- Suporte a todos os mƩtodos HTTP (GET, POST, PUT, DELETE, etc.)
- Múltiplos tipos de autenticação
- Envio de dados em diferentes formatos (JSON, Form Data, etc.)
- Configuração de headers e parâmetros de query
- Paginação automÔtica
- Tratamento de respostas
Casos de uso:
- Integrar com APIs REST
- Enviar dados para sistemas externos
- Fazer consultas a bancos de dados via API
- Upload de arquivos
- Automação de processos web
Ver documentação completa ā
Webhookā
O node Webhook é usado para receber requisições HTTP de sistemas externos. à um node trigger que pode iniciar workflows baseado em eventos externos.
Principais funcionalidades:
- Receber dados de sistemas externos
- Suporte a diferentes mƩtodos HTTP
- Autenticação configurÔvel
- Respostas customizadas
- Parâmetros de rota dinâmicos
- Configuração de CORS
Casos de uso:
- Receber notificaƧƵes de sistemas externos
- Criar endpoints de API
- Integração com webhooks de terceiros
- Automação baseada em eventos
- Construir APIs REST
Ver documentação completa ā
DiferenƧas Principaisā
Aspecto | HTTP Request | Webhook |
---|---|---|
Direção | Enviar dados | Receber dados |
Tipo | Node de ação | Node trigger |
Inicia workflow | NĆ£o | Sim |
URL | Configurada pelo usuƔrio | Gerada pelo n8n |
Uso principal | Integração com APIs | Receber notificações |
Fluxo de Trabalho TĆpicoā
1. Receber Dados (Webhook)ā
Sistema Externo ā Webhook ā n8n Workflow
2. Processar Dadosā
n8n Workflow ā Nodes de Processamento ā Dados Transformados
3. Enviar Dados (HTTP Request)ā
n8n Workflow ā HTTP Request ā Sistema Externo
Exemplos de Integraçãoā
Exemplo 1: Pipeline de NotificaƧƵesā
- Webhook recebe notificação de novo usuÔrio
- Set node processa os dados
- HTTP Request envia para Slack
- HTTP Request salva no banco de dados
Exemplo 2: API Gatewayā
- Webhook recebe requisição de API
- HTTP Request consulta banco de dados
- Set node formata resposta
- Webhook retorna dados formatados
Exemplo 3: Sincronização de Dadosā
- Schedule Trigger executa periodicamente
- HTTP Request busca dados da API A
- HTTP Request envia dados para API B
- HTTP Request registra log da operação
Configuração de SeguranƧaā
Autenticaçãoā
Ambos os nodes suportam múltiplos métodos de autenticação:
- Basic Auth: UsuƔrio e senha
- Header Auth: Token no header
- OAuth2: Fluxo OAuth completo
- JWT: JSON Web Tokens
- Custom: Autenticação personalizada
Validação de Dadosā
Sempre valide os dados recebidos antes de processĆ”-los:
// Exemplo de validação bÔsica
if (!$json.email || !$json.nome) {
throw new Error('Dados obrigatórios não fornecidos');
}
// Validar formato de email
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
if (!emailRegex.test($json.email)) {
throw new Error('Email invƔlido');
}
Rate Limitingā
Configure limites de taxa para evitar sobrecarga:
// Exemplo de rate limiting simples
const delay = 1000; // 1 segundo
await new Promise(resolve => setTimeout(resolve, delay));
Boas PrĆ”ticasā
Para HTTP Requestā
- Use credenciais predefinidas quando disponĆvel
- Configure timeouts adequados para evitar travamentos
- Implemente retry logic para falhas temporƔrias
- Valide respostas antes de processar
- Use paginação para grandes volumes de dados
Para Webhookā
- Sempre use autenticação em produção
- Configure lista branca de IPs quando possĆvel
- Valide dados de entrada antes de processar
- Configure CORS adequadamente
- Monitore chamadas para detectar uso indevido
Para Ambosā
- Use HTTPS para todas as comunicaƧƵes
- Implemente logging para debug
- Configure tratamento de erros adequado
- Teste em ambiente de desenvolvimento primeiro
- Documente endpoints e formatos de dados
Troubleshootingā
Problemas Comunsā
HTTP Requestā
- Timeout: Aumente o timeout ou verifique a conectividade
- Autenticação: Verifique credenciais e formato
- Rate Limiting: Implemente delays entre requisiƧƵes
- Formato de dados: Verifique Content-Type e estrutura
Webhookā
- NĆ£o recebe dados: Verifique se o workflow estĆ” ativo
- Erro 403: Verifique autenticação e IPs permitidos
- Payload muito grande: Comprima dados ou aumente limite
- CORS: Configure origens permitidas
Debugā
- Use o node Debug Helper para inspecionar dados
- Configure "Incluir Headers e Status" no HTTP Request
- Use URLs de teste para webhooks
- Monitore logs do n8n
- Teste com ferramentas externas (Postman, curl)
Próximos Passosā
- Expressões n8n - Usar dados dinâmicos
- Tratamento de Erros - Lidar com falhas
- Credenciais - Configurar autenticação
- Nodes de Lógica - Controlar fluxo
- Nodes de Dados - Processar dados