Com mais de 2 bilhões de usuários ativos mensais, o WhatsApp tornou-se uma ferramenta indispensável de comunicação no mundo todo. Muitas empresas estão buscando maneiras de integrar o WhatsApp aos seus sistemas para melhorar a comunicação com os clientes. Se você deseja integrar o WhatsApp a uma API desenvolvida em Node.js, este artigo é para você.
1. Escolhendo uma solução
Existem várias maneiras de integrar o WhatsApp com uma API em Node.js. A maneira mais popular é através de provedores de serviços como o Twilio, MessageBird ou a própria API Business do WhatsApp. Aqui, focaremos na integração com a API do Twilio, devido à sua ampla adoção e robustez.
2. Criando uma conta no Twilio
- Visite o site oficial do Twilio e crie uma conta.
- Depois de registrar e verificar sua conta, navegue até o painel de controle e note o ACCOUNT SID e o AUTH TOKEN. Você precisará deles mais tarde.
3. Configurando sua API Node.js
3.1. Inicializando seu projeto
Se você ainda não tem um projeto Node.js, crie um usando:
mkdir meu_projeto_whatsapp
cd meu_projeto_whatsapp
npm init -y
3.2. Instalando as dependências
Instale as bibliotecas necessárias:
npm install express twilio body-parser
4. Escrevendo o código
Crie um arquivo chamado server.js
e comece a escrever seu código.
const express = require('express');
const bodyParser = require('body-parser');
const twilio = require('twilio');
const app = express();
// Use o body-parser para analisar corretamente os payloads
app.use(bodyParser.urlencoded({ extended: false }));
// Substitua pelos seus valores reais
const ACCOUNT_SID = 'seu_account_sid';
const AUTH_TOKEN = 'seu_auth_token';
const client = new twilio(ACCOUNT_SID, AUTH_TOKEN);
app.post('/sendWhatsApp', (req, res) => {
const to = req.body.to;
const message = req.body.message;
client.messages
.create({
from: 'whatsapp:+seu_numero_sandbox',
body: message,
to: 'whatsapp:' + to
})
.then(message => {
res.send(`Mensagem enviada com ID ${message.sid}`);
})
.catch(error => {
res.status(500).send(error);
});
});
const PORT = 3000;
app.listen(PORT, () => {
console.log(`Servidor rodando na porta ${PORT}`);
});
5. Configurando o Sandbox do Twilio
Antes de poder enviar mensagens através do Twilio, você precisa configurar o Sandbox do WhatsApp. Siga estas etapas:
- No painel do Twilio, vá para a seção do WhatsApp e clique em “Sandbox”.
- Siga as instruções para vincular seu número de telefone ao Sandbox.
- Anote o número do Sandbox, pois você o usará no campo “from” ao enviar mensagens.
6. Testando sua API
Agora, com tudo configurado, você pode testar sua API. Use ferramentas como o Postman para enviar uma requisição POST para http://localhost:3000/sendWhatsApp
com os campos to
e message
.
7. Conclusão
Esta é uma introdução básica sobre como integrar o WhatsApp em uma API Node.js. Existem muitas outras funcionalidades e nuances que você pode explorar, como receber mensagens, enviar mídias, configurar webhooks, entre outras. A documentação oficial do Twilio é um excelente recurso para aprofundar seus conhecimentos.
Lembre-se de que, para produção, você precisará de uma conta WhatsApp Business e aprovação do WhatsApp para enviar mensagens fora do ambiente Sandbox.
Espero que este guia tenha sido útil e desejo-lhe sucesso na integração do WhatsApp ao seu projeto Node.js!