EntrarComeçar teste grátis
Meta Tech Provider

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.

POST /api/v1/prediction/:id

O endpoint do Flowise que envia uma mensagem a um flow e devolve a resposta dele.

Headers

O Custom MCP do Flowise sobre Streamable HTTP recebe uma URL e headers, como um bearer token.

24 hours

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.

Prediction request the receiver sends for one WhatsApp message
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.
Fazendo isso com o EasyCoexistence

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átis

Verificado em

Flowise no WhatsApp, Cloud API oficial