Responda mensagens do WhatsApp com um chatflow do Flowise
Aponte o destino do webhook do número para um pequeno receptor, como um workflow do n8n ou uma rota no seu próprio código. Ele repassa cada mensagem à Prediction API do Flowise, com o número do remetente como ID de sessão, e envia a resposta de volta pela Cloud API com o token e o phone number id do número.
O endpoint do Flowise que envia uma mensagem a um flow e devolve a resposta dele.
O Custom MCP do Flowise sobre Streamable HTTP recebe uma URL e headers, como um bearer token.
Depois que essa janela de atendimento se fecha, só templates de mensagem pré-aprovados podem ser enviados ao cliente.
Por que o Flowise precisa de algo na frente dele?
Porque o webhook da Meta e a API do Flowise falam formatos diferentes. A Meta verifica um destino com um GET que precisa devolver hub.challenge como corpo bruto e depois entrega cada mensagem como um POST em JSON aninhado. A Prediction API do Flowise espera um POST em /api/v1/prediction/ seguido do ID do flow, com um campo question. Nenhum dos dois se adapta ao outro, então um receptor faz a tradução.
O receptor pode ser um nó Webhook do n8n, uma rota em Python ou Node, ou qualquer função serverless. Ele responde ao GET de verificação, confere um segredo longo e aleatório colocado na URL do webhook, responde 200 à Meta na hora e só então faz o trabalho. O segredo na URL é a autenticação que funciona aqui: a Meta assina as entregas com o app secret do Tech Provider, que nunca é compartilhado, então o header X-Hub-Signature-256 não pode ser validado do seu lado.
Como o receptor deve chamar a Prediction API?
Com o texto do cliente como question e o número de WhatsApp do cliente como sessão. O Flowise aceita overrideConfig em cada requisição, e um sessionId dentro dele é o que permite aos nós de memória manter uma conversa por pessoa, em vez de misturar todo mundo numa só thread. O número do remetente no payload do webhook é uma chave estável e natural para isso.
Se o chatflow estiver protegido por uma API key, o receptor a envia como bearer token. Defina streaming como false, a menos que o receptor esteja preparado para montar um stream, já que o WhatsApp entrega uma mensagem pronta, e não um token por vez.
A resposta sai como uma mensagem de texto da Cloud API, do mesmo número. Isso é gratuito e permitido dentro da janela de atendimento de 24 horas que a mensagem do cliente abriu. Qualquer coisa que o flow queira enviar depois, como um lembrete, precisa ser um template aprovado.
POST https://your-flowise-host/api/v1/prediction/<flow-id>
Authorization: Bearer <flowise-api-key>
Content-Type: application/json
{
"question": "do you have anything friday?",
"streaming": false,
"overrideConfig": { "sessionId": "14155550188" }
}Um agente do Flowise pode usar o servidor MCP da EasyCoexistence?
Hoje não. O Custom MCP do Flowise se conecta a um servidor Streamable HTTP com uma URL e um conjunto de headers, normalmente um bearer token estático guardado numa variável do Flowise. O servidor MCP da EasyCoexistence autentica com OAuth, com login no navegador e tokens emitidos por ele mesmo, então não existe uma chave estática para colocar num header.
A divisão que funciona é deixar o flow decidir e o receptor enviar. O flow devolve o texto a dizer, ou o nome de um template quando o cliente está em silêncio há mais de um dia, e o receptor faz a chamada à Cloud API com o token do número. Assim o token nunca fica dentro do Flowise, e a regra das 24 horas é aplicada em código, conferindo quando o contato escreveu pela última vez, em vez de ficar a cargo de um modelo que pode esquecê-la.
As mensagens recebidas continuam chegando apenas pelo webhook, seja qual for a forma de envio.
Erros comuns
- Omitir o sessionId. Todos os clientes passam a compartilhar a mesma memória, e os dados de uma pessoa podem aparecer na resposta de outra.
- Esperar o Flowise para responder à Meta. Um 200 lento faz a Meta repetir a entrega, e a mesma mensagem é processada duas vezes.
- Deixar o flow enviar texto livre um dia depois. Fora da janela de atendimento, a Meta recusa com o erro 131047.
Conecte o número em easycoexistence.com, aponte o destino do webhook para o seu receptor e leia o token e o phone number id no painel. A partir de US$ 9 por número conectado por mês, caindo até US$ 1 conforme você adiciona números, com os 3 primeiros dias grátis.
Perguntas frequentes
O Flowise tem um nó de WhatsApp?
Não na documentação dele. O acesso é pela Prediction API, e por isso um receptor fica entre a Meta e o flow.
O n8n pode ser o receptor?
Sim. Um nó Webhook recebe, um nó HTTP Request chama o Flowise e outro nó HTTP Request envia a resposta pela Cloud API.
Como faço o bot parar quando uma pessoa responde pelo celular?
Observe os eventos de echo. Uma resposta enviada pelo app do WhatsApp Business chega ao receptor, que pode pausar o flow para aquele contato.
A EasyCoexistence armazena a conversa?
Não. A Meta entrega direto ao seu receptor. O Flowise guarda o que os nós de memória dele estiverem configurados para guardar.
Continue lendo
Pronto para começar?
Configure o WhatsApp Coexistence em minutos, não em meses. O aplicativo continua funcionando no celular.
Começar teste grátisVerificado em