Eventos do WhatsApp que impulsionam os teus fluxos de trabalho no n8n.

Os webhooks assinados da Flowella iniciam os seus fluxos de trabalho do n8n através do próprio gatilho de webhook do n8n, e o nó «Pedido HTTP» reenvia os modelos do WhatsApp através da API da Flowella.

  • Funciona hojeAtravés da API da Flowella e dos webhooks
  • Em breveUm nó do Flowella para o n8n
A Flo, a mascote da Flowella, liga um cabo ao último dos três nós coloridos para os interligar

Disparar um evento, acompanhar a carga útil.

Eis um fluxo de trabalho do n8n, desenhado ao estilo do Flowella. Escolha um evento de exemplo e envie-o; depois, acompanhe-o de nó em nó: o nó «Switch» encaminha cada evento e um nó «HTTP Request» alerta a sua equipa, atualiza a sua lista de correio ou envia um modelo do WhatsApp através da API do Flowella. Selecione qualquer nó para ver exatamente o que recebeu ou enviou.

A Flo aponta para uma das três setas da placa indicadora, da mesma forma que um ramo de um fluxo de trabalho escolhe um caminho
Apenas os nós próprios do n8n
Exemplo de evento
Acme ClubConta empresarial
Dados de exemplo

Hoje

Olá, Ada, a tua adesão ao Acme Club renova-se a 31 de outubro. Responde aqui se tiveres alguma dúvida.
Eventos da Flowellafluxo de trabalho do n8n
Dados de exemplo

O que a Flowella publicou no webhook Dados de exemplo

POST/webhook/flowella-events

Content-Type
application/json
X-Flowella-Signature
Assinado quando ocorre um evento

Envie um evento para ver as publicações da Flowella aqui.

POST/webhook/flowella-events

Content-Type
application/json
X-Flowella-Signature
5d2c9f1a…e19a
{
  "id": "6f1d8a2c-4b7e-4c19-9a53-0e2b7c4d9f10",
  "type": "message.received",
  "created_at": "2026-10-16T08:41:07.000Z",
  "payload_version": "1",
  "data": {
    "messageId": "clsamplemsg00000000000043",
    "conversationId": "clsampleconv0000000000007",
    "contactId": "clsamplecontact0000000003",
    "direction": "INBOUND",
    "type": "TEXT",
    "metaMessageId": "wamid.sample00000000000043"
  }
}

POST/webhook/flowella-events

Content-Type
application/json
X-Flowella-Signature
5d2c9f1a…e19a
{
  "id": "6f1d8a2c-4b7e-4c19-9a53-0e2b7c4d9f10",
  "type": "optout.created",
  "created_at": "2026-10-16T08:41:07.000Z",
  "payload_version": "1",
  "data": {
    "contactId": "clsamplecontact0000000003",
    "conversationId": "clsampleconv0000000000007",
    "phone": "+447700900123",
    "reason": "USER_KEYWORD"
  }
}

POST/webhook/flowella-events

Content-Type
application/json
X-Flowella-Signature
5d2c9f1a…e19a
{
  "id": "6f1d8a2c-4b7e-4c19-9a53-0e2b7c4d9f10",
  "type": "template.status_updated",
  "created_at": "2026-10-16T08:41:07.000Z",
  "payload_version": "1",
  "data": {
    "metaTemplateId": "1234567890123456",
    "templateName": "autumn_fair_invite",
    "status": "APPROVED",
    "language": "en_GB"
  }
}

Cada entrega tem o mesmo envelope, e os campos próprios do evento encontram-se na sua última chave: id type created_at payload_version data

Verifique o «X-Flowella-Signature» antes de agir: trata-se de um resumo hexadecimal HMAC-SHA256 do corpo do mensagem em bruto, gerado com a sua chave secreta de assinatura.

Switch: cada evento seleciona a primeira regra cujas condições sejam todas satisfeitas

Este evento: Ainda não foi verificado type: message.received data.type: TEXT type: optout.created type: template.status_updated data.status: APPROVED

  1. Avisar a equipa {{ $json.body.type }} é igual a message.received {{ $json.body.data.type }} é igual a TEXT
  2. Atualizar a lista de correio {{ $json.body.type }} é igual a optout.created
  3. Enviar a campanha {{ $json.body.type }} é igual a template.status_updated {{ $json.body.data.status }} é igual a APPROVED

À espera de um evento.

A regra 1 é cumprida, pelo que o evento passa à fase de «Alerta» da equipa.

A regra 2 é satisfeita, pelo que o evento passa à etapa de atualização da lista de correio.

A regra 3 é cumprida, pelo que o evento passa para a etapa «Enviar a campanha».

O Switch transmite o evento sem alterações, pelo que o nó seguinte também pode ler $json.body.

O que o nó «HTTP Request» enviou Dados de exemplo

POSThttps://alerts.example.com/hooks/whatsapp-replies

Content-Type
application/json

Este nó só é executado quando a regra 1 for satisfeita.

POSThttps://alerts.example.com/hooks/whatsapp-replies

Content-Type
application/json

conversationId a partir de {{ $json.body.data.conversationId }}contactId a partir de {{ $json.body.data.contactId }}

{
  "conversationId": "clsampleconv0000000000007",
  "contactId": "clsamplecontact0000000003"
}
200 OK

POSThttps://alerts.example.com/hooks/whatsapp-replies

Content-Type
application/json

Não foi executado. O Switch enviou este evento para outra saída.

O evento contém os IDs, e não a própria resposta, pelo que a vossa equipa abre a conversa na caixa de entrada do Flowella e responde a partir daí.

O que o nó «HTTP Request» enviou Dados de exemplo

POSThttps://lists.example.com/v1/unsubscribes

Content-Type
application/json

Este nó só é executado quando a regra 2 é satisfeita.

POSThttps://lists.example.com/v1/unsubscribes

Content-Type
application/json

phone a partir de {{ $json.body.data.phone }}reason a partir de {{ $json.body.data.reason }}

{
  "phone": "+447700900123",
  "reason": "USER_KEYWORD"
}
200 OK

POSThttps://lists.example.com/v1/unsubscribes

Content-Type
application/json

Não foi executado. O Switch enviou este evento para outra saída.

«optout.created» é o evento que contém um número de telefone, para que as suas outras ferramentas também possam deixar de lhe enviar mensagens.

O que o nó «HTTP Request» enviou Dados de exemplo

POSThttps://api.flowella.io/v1/templates/send

Authorization
Bearer flo_(oculta)A partir das suas credenciais do n8n
Content-Type
application/json

Este nó só é executado quando a regra 3 for satisfeita.

POSThttps://api.flowella.io/v1/templates/send

Authorization
Bearer flo_(oculta)A partir das suas credenciais do n8n
Content-Type
application/json
Idempotency-Key
6f1d8a2c-4b7e-4c19-9a53-0e2b7c4d9f10

templateId a partir de {{ $json.body.data.metaTemplateId }}Idempotency-Key a partir de {{ $json.body.id }}, por isso, uma entrega repetida nunca é enviada duas vezesrecipients da lista de membros que o n8n mantém

{
  "templateId": "1234567890123456",
  "whatsappChannelId": "clsamplechannel0000000001",
  "recipients": [
    { "phone": "+447700900123", "bodyParameters": ["Ada"] },
    { "phone": "+447700900456", "bodyParameters": ["Ben"] }
  ]
}
202 Accepted{ "id": "v1ts-0123456789abcdef", "status": "accepted" }

POSThttps://api.flowella.io/v1/templates/send

Authorization
Bearer flo_(oculta)A partir das suas credenciais do n8n
Content-Type
application/json

Não foi executado. O Switch enviou este evento para outra saída.

Guarde a chave API numa credencial do n8n, nunca no próprio fluxo de trabalho. O código de estado «202 Accepted» significa que o Flowella colocou o envio na fila e o entrega em segundo plano.

Configure-o em três passos.

Precisas de uma conta Flowella com o WhatsApp ligado, um modelo aprovado pela Meta e um fluxo de trabalho n8n. Depois:

  1. Passo 1: Adicionar um gatilho de Webhook

    Inicie o fluxo de trabalho com o nó Webhook do n8n, configure-o para POST e copie o seu URL de produção.

    Nó de webhookDados de exemplo
    Método
    POST
    Caminho
    flowella-events
    URL
    https://n8n.example.com/webhook/flowella-events
    Ouvir
    Webhooks de saída
  2. Passo 2: Subscrever no Flowella

    Em Definições → Webhooks, adicione essa URL, selecione os eventos que pretende e guarde o segredo de assinatura. A opção «Enviar teste» aciona um evento «webhook.test». É necessário ter a função de Proprietário ou Administrador.

    WebhooksDados de exemplo
    Ponto final
    https://n8n.example.com/webhook/flowella-events
    Eventos
    message.received, optout.created, template.status_updated
    Segredo de assinatura
    Guardado
    Teste enviado
    Definições do Webhook
  3. Passo 3: Enviar de volta através de um pedido HTTP

    Adicione um nó «Pedido HTTP» que envie um pedido POST para /v1/templates/send, com a sua chave da API da Flowella numa credencial de cabeçalho.

    Nó «Pedido HTTP»Dados de exemplo
    Método
    POST
    URL
    https://api.flowella.io/v1/templates/send
    Credencial
    Header: Authorization
    202 Aceito
    Referência da API

O que funciona hoje e o que está para vir.

Tudo o que foi referido acima funciona com a API da Flowella e os webhooks, já disponíveis. Em breve estará disponível um nó da Flowella para o n8n.

Em breve

Um nó Flowella para o n8n

Publicaremos aqui como funciona assim que estiver pronto. Até lá, o gatilho Webhook e o nó «Pedido HTTP» do n8n dão conta do recado.

É bom saber

  • Verifique a assinaturaCada pedido inclui o cabeçalho «X-Flowella-Signature», um resumo hexadecimal HMAC-SHA256 do corpo do pedido em bruto. Verifique-o antes de agir. Enquanto efetua a rotação do segredo, o cabeçalho «X-Flowella-Signature-Previous» também inclui a assinatura do segredo anterior.
  • Responda no prazo de 10 segundosFlowella aguarda até 10 segundos por um código 2xx e tenta a entrega, no máximo, 3 vezes, com intervalos de 1 e 2 segundos. Responda primeiro e, só depois, execute qualquer tarefa demorada.
  • Haverá reprisesUma entrega repetida tem o mesmo ID de envelope; por isso, guarde os IDs que já tratou e considere uma repetição como uma operação nula.
  • Identificadores, não palavrasO método message.received contém os IDs, a direção e o tipo da mensagem, mas nunca o seu texto. A vossa equipa lê e responde às mensagens na caixa de entrada do Flowella.

Já disponível Funciona hoje

Compatível com qualquer ferramenta que envie e receba pedidos HTTP, incluindo o n8n.

Eventos de webhook aos quais pode subscrever hoje mesmo

  • message.received
  • message.sent
  • message.delivered
  • message.read
  • message.failed
  • conversation.opened
  • conversation.closed
  • optout.created
  • template.status_updated
  • contact.created
  • contact.updated
  • contact.deleted

Além disso, o «webhook.test», que o Send test aciona sempre que solicitado.

A Flo a saltar de alegria, com o punho no ar e um telemóvel na mão

Comece a criar com o Flowella e o n8n.

Tudo o que está nesta página funciona atualmente através da API da Flowella e dos webhooks. Marque uma demonstração de 30 minutos no Teams e analisaremos juntos os seus fluxos de trabalho.

Ver todas as integrações