n8n-nodes-whatsapp-business-api
v1.0.0
Published
n8n community node for WhatsApp Business API - Send messages, manage sessions, groups and webhooks
Maintainers
Readme
n8n-nodes-whatsapp-api
Node customizado para n8n que permite integrar com a API WhatsApp Business.
🚀 Instalação Rápida
npm install @wapi/n8n-nodes-whatsappReinicie o n8n e o node estará disponível!
Recursos
- ✅ Enviar mensagens de texto
- ✅ Enviar mídia (imagem, vídeo, áudio, documento)
- ✅ Enviar localização
- ✅ Gerenciar sessões do WhatsApp
- ✅ Gerenciar grupos
- ✅ Configurar webhooks
Instalação
Opção 1: Instalação via npm (Recomendado)
npm install n8n-nodes-whatsapp-apiOpção 2: Instalação Manual
- Clone este repositório
- Compile o código TypeScript:
npm install
npm run build- Copie a pasta
distpara o diretório de nodes customizados do n8n:
# Linux/Mac
cp -r dist ~/.n8n/custom/
# Windows
xcopy /E /I dist %USERPROFILE%\.n8n\custom\- Reinicie o n8n
Opção 3: Usando Docker
Adicione ao seu docker-compose.yml:
version: '3'
services:
n8n:
image: n8nio/n8n
ports:
- "5678:5678"
environment:
- N8N_CUSTOM_EXTENSIONS=/data/custom
volumes:
- ./n8n-data:/home/node/.n8n
- ./n8n-nodes-whatsapp-api/dist:/data/custom/n8n-nodes-whatsapp-apiConfiguração
1. Configurar Credenciais
No n8n, vá em Credentials > New > WhatsApp API Credentials
Preencha:
- API URL: URL da sua API WhatsApp (ex:
http://localhost:3000) - API Key: Sua API Key (ex:
wapi_...)
2. Usar o Node
Adicione o node WhatsApp API ao seu workflow.
Operações Disponíveis
📱 Message (Mensagem)
Send Text (Enviar Texto)
Envia uma mensagem de texto simples.
Parâmetros:
- Session ID: ID da sessão
- Phone Number: Número com código do país (ex: 5511999999999)
- Message: Texto da mensagem
Exemplo:
{
"sessionId": "minha-sessao",
"to": "5511999999999",
"message": "Olá! Esta é uma mensagem de teste."
}Send Media (Enviar Mídia)
Envia imagem, vídeo, áudio ou documento.
Parâmetros:
- Session ID: ID da sessão
- Phone Number: Número do destinatário
- Media Type: image, video, audio ou document
- Media URL or Base64: URL ou base64 da mídia
- Caption: Legenda (opcional)
Send Location (Enviar Localização)
Envia uma localização.
Parâmetros:
- Session ID: ID da sessão
- Phone Number: Número do destinatário
- Latitude: Latitude
- Longitude: Longitude
- Name: Nome do local (opcional)
🔌 Session (Sessão)
Create (Criar)
Cria uma nova sessão do WhatsApp.
Parâmetros:
- Session ID: ID único para a sessão
Get QR Code (Obter QR Code)
Obtém o QR Code para conectar a sessão.
Parâmetros:
- Session ID: ID da sessão
Retorno:
{
"qr": "data:image/png;base64,...",
"status": "qr"
}List (Listar)
Lista todas as sessões ativas.
Retorno:
{
"sessions": [
{
"sessionId": "minha-sessao",
"status": "connected",
"info": {
"name": "Meu WhatsApp",
"phone": "5511999999999"
}
}
]
}Delete (Deletar)
Deleta uma sessão.
Parâmetros:
- Session ID: ID da sessão a deletar
👥 Group (Grupo)
List (Listar)
Lista todos os grupos de uma sessão.
Parâmetros:
- Session ID: ID da sessão
Create (Criar)
Cria um novo grupo.
Parâmetros:
- Session ID: ID da sessão
- Group Name: Nome do grupo
- Participants: Números separados por vírgula (ex: 5511999999999,5511888888888)
🔗 Webhook
Set (Configurar)
Configura um webhook para receber eventos.
Parâmetros:
- Session ID: ID da sessão
- Webhook URL: URL que receberá os eventos
- Events: Eventos a receber (messages, groups, connection)
List (Listar)
Lista todos os webhooks configurados.
Exemplos de Workflows
Exemplo 1: Enviar Mensagem Automática
Trigger (Webhook) → WhatsApp API (Send Text)- Configure um webhook trigger
- Adicione o node WhatsApp API
- Selecione Resource: Message, Operation: Send Text
- Configure os parâmetros usando dados do trigger
Exemplo 2: Responder Mensagens Automaticamente
Webhook (Receber) → Switch (Filtrar) → WhatsApp API (Responder)- Configure webhook na API WhatsApp apontando para o n8n
- Use Switch para filtrar mensagens
- Responda automaticamente com WhatsApp API
Exemplo 3: Enviar Relatório Diário
Schedule Trigger → HTTP Request (Dados) → WhatsApp API (Send Text)- Configure Schedule Trigger para executar diariamente
- Busque dados com HTTP Request
- Formate e envie via WhatsApp API
Troubleshooting
Erro: "API Key inválida"
- Verifique se a API Key está correta nas credenciais
- Confirme que a API Key está ativa no servidor
Erro: "Sessão não encontrada"
- Crie a sessão primeiro usando a operação "Create"
- Verifique se o Session ID está correto
Erro: "Conexão recusada"
- Verifique se a API WhatsApp está rodando
- Confirme a URL da API nas credenciais
- Teste a conexão:
curl http://localhost:3000/health
Suporte
Para reportar bugs ou solicitar recursos:
- GitHub Issues: https://github.com/yourusername/n8n-nodes-whatsapp-api/issues
- Email: [email protected]
Licença
MIT
Autor
Your Name - [email protected]
