Skip to main content
Os webhooks de saída permitem que os seus sistemas reajam a eventos no Flowella quase em tempo real, sem sondar a API. Configura-se um URL e uma lista de tipos de eventos, e o Flowella envia um payload JSON assinado para esse URL sempre que um desses eventos é disparado.

Configurando um webhook

É necessário o papel de Proprietário ou Administrador.
1

Abrir Definições → Webhooks

Na aplicação Flowella, aceda a Configurações → Webhooks.
2

Adicionar um webhook

Clique em Adicionar webhook, cole o URL HTTPS público do seu endpoint e escolha os tipos de eventos que pretende receber.
3

Guardar o segredo de assinatura

O Flowella gera um segredo de assinatura exclusivo para o webhook. Copie-o - irá utilizá-lo para verificar os pedidos recebidos.
4

Enviar um teste

Clique em Enviar teste para enviar um payload webhook.test imediatamente. Verifique se o seu ponto final o recebeu e respondeu com um 2xx.

Tipos de eventos

Pode subscrever qualquer um destes eventos de produto: O webhook.test é enviado apenas quando clica em Enviar teste - não o subscreve explicitamente.

Formato do pedido

O Flowella envia um corpo JSON para o seu URL com estes cabeçalhos:
As cargas úteis têm um limite de 256 KB. Os objectos maiores são resumidos - utilize a API para obter o registo completo por ID, se precisar dele. A forma do corpo varia consoante o evento, mas inclui sempre:

Verificação de assinaturas

Cada pedido inclui um cabeçalho X-Flowella-Signature. O valor é o HMAC-SHA256 hex digest do corpo do pedido em UTF-8 bruto chaveado com o segredo de assinatura do webhook. Verifique antes de processar:
Assine sempre os bytes do corpo em bruto antes de qualquer análise JSON ou middleware reformatar a carga útil. Se a sua estrutura re-serializar o JSON, a assinatura não corresponderá.

Respostas, tentativas e tempos limite

  • Timeout: O Flowella aguarda até 10 segundos para que o seu endpoint responda.
  • Success: qualquer resposta do 2xx é tratada como uma entrega bem sucedida.
  • Tentativas**: as entregas falhadas são repetidas até 3 tentativas com backoff.
  • Desativação automática**: se um webhook acumular 10 falhas consecutivas, o Flowella desactiva-o. Terá de o reativar a partir de Configurações → Webhooks depois de corrigir o seu ponto final.
O seu endpoint deve regressar o mais rapidamente possível - adie qualquer processamento pesado para uma fila em segundo plano do seu lado.

Idempotência

Os webhooks podem ser repetidos, portanto, o mesmo evento lógico pode chegar mais de uma vez. Para processar com segurança:
  • Use o data.id do evento (ou uma chave derivada como event + data.messageId) como uma chave de idempotência.
  • Mantenha uma cache de curta duração das chaves processadas (algumas horas são suficientes para novas tentativas).
  • Tratar os duplicados como no-ops.

Listando e gerenciando entregas

Configurações → Webhooks mostra as tentativas de entrega recentes por webhook, incluindo:
  • Carimbo de data/hora
  • Tipo de evento
  • Status da resposta
  • Um corpo de resposta truncado (até ~1 KB) para depuração
Se um webhook for desativado devido a falhas repetidas, a mesma página permite-lhe voltar a activá-lo.

Desenvolvimento local

A maneira mais simples de desenvolver localmente contra webhooks é encaminhar um túnel público (por exemplo, ngrok ou Cloudflare Tunnel) para o seu servidor de desenvolvimento e apontar o URL do webhook para o host do túnel. Use Send test para disparar cargas sob demanda sem esperar pela atividade real do WhatsApp.
Precisa de reagir a eventos que não estão na lista? Diga-nos em support - adicionamos eventos à medida que os clientes os solicitam.

Relacionado

Definições → Webhooks

Configurar pontos finais, segredos de assinatura e novas tentativas na aplicação.

Introdução à API

Autenticação, erros, paginação e limites de taxa para a API REST.

Chaves API

Criar e rodar os tokens portadores de que o seu ponto final possa necessitar.

Eventos de notificação

Os mesmos eventos entregues no feed in-app e no e-mail.
Última modificação em 15 de junho de 2026