Blog
Como configurar um Webhook
O Webhook serve pra fazer automações: quando alguém manda uma mensagem específica no WhatsApp, uma ação externa pode ser disparada (como um código rodando no seu servidor) pra processar isso e responder dinamicamente. Vamos por partes:
🚀 Parte 1 ‐ Webhooks Saindo (Outgoing Webhooks)
Ou seja: WA+ RazTec → outro sistema externo.
Quando usar: Se você quer que, ao receber uma mensagem com uma palavra-chave, seja enviada uma requisição para outro serviço ou servidor que processa algo (por exemplo, mandar dados para sua API, banco, ou disparar algum serviço).
O que fazer:
- Crie ou tenha um servidor ou serviço que vai receber requisições HTTP. Pode ser no Firebase Functions, AWS Lambda, qualquer servidor com endpoint exposto.
- Nesse servidor, programe para receber os dados que o Webhook vai mandar (quem mandou a mensagem, conteúdo, etc.), tratar esses dados, e retornar algo.
- No WA+ RazTec, vá à aba de Ferramentas de Negócios / Business Tools (ou equivalente) → configurar novo Webhook. Cole ali a URL do seu endpoint.
- Escolha quais parâmetros você quer enviar (tipo nome, mensagem, etc.). Salve.
- Depois disso, associe esse Webhook a uma Smart Reply (ou resposta automática) usando uma palavra‐chave: quando alguém mandar essa palavra, o Webhook será acionado.
- Use a variável dinâmica {W} nas respostas automáticas pra inserir a resposta que vier do endpoint externo.
📥 Parte 2 ‐ Webhooks Entrando (Incoming Webhooks)
Ou seja: sistemas externos → WA+ RazTec
Se quiser que um sistema externo (um e-commerce, formulário, etc.) mande mensagens via WhatsApp para usuários, você pode fazer isso configurando um “incoming webhook”.
O que fazer:
- Use o Firebase Realtime Database: crie um projeto no Firebase. Guarde essas 3 informações importantes:
- API Key
- Project ID
- A URL do Database Realtime
- Nas regras de segurança do banco, habilite o acesso, definindo as regras para “true” (pelo menos no setup inicial), pra permitir que dados externos sejam gravados.
- No WA+ RazTec: vá para a seção de Webhooks Incoming → clique em Firebase Settings, e insira os dados do seu projeto (API Key, Project ID, URL do banco).
- Defina um “Data Child Node” (uma pasta ou “nó” no banco) que será usada para organizar os dados que chegam. Isso ajuda se você tiver vários incoming webhooks.
- Do lado externo, sempre que quiser mandar uma mensagem via WhatsApp, você faz uma requisição POST para:
https://{seu-database}.firebaseio.com/{data_child_node}.jsonExemplos de parâmetros:{ "phone": "5511999999999", "content": "Olá! Mensagem automática do meu sistema" } - Se quiser mandar mídia (imagem, vídeo, etc.), o conteúdo da mídia precisa estar em formato base64, e você deve definir tipo “media”. Exemplo:
{ "phone": "5511999999999", "content": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAQAA…..", "text": "Aqui vai um texto junto", "type": "media" } - Também é possível enviar mensagens para grupos: você precisará do ID do grupo, que pode ser obtido dentro das ferramentas de grupos no app. No JSON, em vez de “phone”, usar “group”: “ID_do_grupo”.
⚠️ Outras informações importantes
Para funcionalidades mais avançadas, pode-se usar bibliotecas como axios pra fazer requisições a outros serviços, processar dados, etc.
O domínio ou servidor que vai receber o Webhook saindo precisa estar na lista liberada pelo app (domínios permitidos). Exemplo: domínios do Firebase / Zapier / Pabbly etc.
O uso do {W} para respostas dinâmicas: essa variável ‘pega’ o retorno do seu endpoint Webhook e insere na resposta ao usuário.
Hi, this is a comment.
To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.
Commenter avatars come from Gravatar.