Quem pode gerir webhooks
Apenas as funções Proprietário e Administrador podem ver Configurações → Webhooks. Outras funções não têm acesso.Adicionando um ponto de extremidade de webhook
Clique em Adicionar ponto final
Introduza o URL HTTPS público para o qual o Flowella deve efetuar o POST de eventos. HTTP (sem TLS) não é aceite.
Escolher os eventos a subscrever
Escolha um ou mais tipos de eventos - por exemplo,
message.delivered, template.approved, flow.sync.failed. A lista completa de eventos encontra-se em Referência de Webhooks. Pode subscrever todos os eventos com uma única caixa de verificação.Copiar o segredo de assinatura
O Flowella mostra o segredo de assinatura uma vez no final do fluxo de criação. Guarde-o num local seguro - irá utilizá-lo para verificar a assinatura HMAC em todos os pedidos recebidos.
Assinatura e verificação
Cada pedido de webhook inclui um cabeçalhoX-Flowella-Signature com uma assinatura HMAC-SHA256 do corpo do pedido em bruto, calculado com o segredo de assinatura do seu ponto final. Verifique-o antes de confiar na carga útil:
X-Flowella-Timestamp- o carimbo de data/hora Unix no momento do envio. Rejeitar pedidos em que o carimbo de data/hora esteja mais de 5 minutos no passado ou no futuro para evitar ataques de repetição.X-Flowella-Event- o tipo de evento (por exemplo,message.delivered).X-Flowella-Delivery- um ID de entrega único, útil para deduplicação.
Tentativas e retrocesso
Se o ponto de extremidade devolver um código de estado não-2xx (ou esgotar o tempo de espera após 10 segundos), o Flowella tenta novamente com um back-off exponencial:| Tentativa | Atraso após anterior |
|---|---|
| 1 (inicial) | - |
| 2 | 30 segundos |
| 3 | 2 minutos |
| 4 | 10 minutos |
| 5 | 1 hora |
| 6 | 6 horas |
| 7 (final) | 24 horas |
WEBHOOK_PAUSED. Retome-a a partir do menu da linha quando tiver resolvido o problema subjacente.
Registo de entrega
Cada linha de ponto final expande-se para um registo de entrega que mostra os últimos 7 dias de tentativas:- Tipo de evento e ID
- Estado** - sucesso, falha, nova tentativa
- Número da tentativa**
- Código e duração da resposta
- Corpo da resposta (primeiros 1 KB)
- Enviado para
Gerir pontos finais
A partir do menu de linha do ponto final, pode:- Editar - alterar o URL ou as subscrições de eventos. (O segredo de assinatura permanece o mesmo).
- Rotar segredo - gerar um novo segredo de assinatura. O segredo antigo deixa de funcionar imediatamente, pelo que deve coordenar a alteração com o seu gestor.
- Pausa** - interrompe temporariamente as entregas sem perder a configuração.
- Retomar** - voltar a ativar um ponto final em pausa.
- Eliminar** - remover o ponto final e o seu histórico de entregas.
Perguntas comuns
Posso ter mais do que um ponto final?
Posso ter mais do que um ponto final?
Sim - não há um limite rígido. A maioria das organizações tem de 1 a 3 pontos de extremidade (produção, preparação e um coletor de logs interno). Mantenha a contagem baixa para que os eventos se espalhem de forma previsível.
Qual é a diferença entre webhooks e a API?
Qual é a diferença entre webhooks e a API?
A API é pull - o seu código pede o estado ao Flowella. Os webhooks são push - o Flowella informa o seu código quando o estado muda. Utilize os webhooks para qualquer coisa que, de outra forma, teria de sondar.
Os webhooks incluem dados sensíveis?
Os webhooks incluem dados sensíveis?
As cargas de webhook incluem IDs de conversação, números de telefone de contacto, conteúdo de mensagens e nomes de modelos. Trate o segredo e o URL do ponto final como sensíveis. Restrinja o seu ponto final a aceitar POST do intervalo de IP do Flowella se a sua infraestrutura o permitir.
Como é que testo webhooks localmente?
Como é que testo webhooks localmente?
Use uma ferramenta de túnel (ngrok, Cloudflare Tunnel) para expor seu ponto de extremidade localhost a um URL HTTPS público e, em seguida, aponte um ponto de extremidade de teste para ele. Não coloque um URL de túnel em seu ponto de extremidade de produção - eles expiram.
Relacionado
Referência de webhooks
Tipos de eventos, esquemas de carga útil e cabeçalhos.
Chaves API
A outra metade da integração programática.
Introdução à API
Erros, limites de taxa e paginação.
Eventos de notificação
Os mesmos eventos entregues no feed in-app e no e-mail.

