Configurazione di un webhook
È necessario il ruolo Owner o Admin.1
Aprire Impostazioni → Webhooks
Nell’app Flowella, andare su Impostazioni → Webhooks.
2
Aggiungere un webhook
Fare clic su Aggiungi webhook, incollare l’URL HTTPS pubblico del proprio endpoint e scegliere i tipi di evento che si desidera ricevere.
3
Salvare il segreto di firma
Flowella genera un segreto di firma unico per il webhook. Copiatelo: lo userete per verificare le richieste in arrivo.
4
Inviare un test
Fare clic su Invia test per inviare immediatamente un payload
webhook.test. Verificare che l’endpoint lo abbia ricevuto e abbia risposto con un 2xx.Tipi di evento
È possibile sottoscrivere uno qualsiasi di questi eventi di prodotto:webhook.test viene inviato solo quando si fa clic su Invia test, senza sottoscriverlo esplicitamente.
Formato della richiesta
Flowella invia un corpo JSON al vostro URL con queste intestazioni:Verifica delle firme
Ogni richiesta include un’intestazioneX-Flowella-Signature. Il valore è il digest esadecimale HMAC-SHA256 del corpo della richiesta raw UTF-8, codificato con il segreto di firma del webhook.
Verificare prima dell’elaborazione:
Risposte, tentativi e timeout
- Timeout: Flowella attende fino a 10 secondi per la risposta dell’endpoint.
- Successo: qualsiasi risposta di
2xxviene considerata come una consegna riuscita. - Ripetizioni: le consegne non riuscite vengono ritentate fino a 3 tentativi con backoff.
- Autodisabilitazione: se un webhook accumula 10 fallimenti consecutivi, Flowella lo disattiva. Sarà necessario riattivarlo da Impostazioni → Webhooks dopo aver sistemato l’endpoint.
Idempotenza
I webhook possono essere ritentati, quindi lo stesso evento logico può arrivare più di una volta. Per elaborare in modo sicuro:- Utilizzare la
data.iddell’evento (o una chiave derivata comeevent + data.messageId) come chiave di idempotenza. - Mantenere una cache di breve durata delle chiavi elaborate (qualche ora è sufficiente per i tentativi).
- Trattare i duplicati come no-op.
Elencare e gestire le consegne
Impostazioni → Webhooks mostra i tentativi di consegna recenti per ogni webhook, inclusi:- Timestamp
- Tipo di evento
- Stato della risposta
- Un corpo di risposta troncato (fino a ~1 KB) per il debugging
Sviluppo locale
Il modo più semplice per sviluppare localmente con i webhook è quello di inoltrare un tunnel pubblico (ad esempio, ngrok o Cloudflare Tunnel) al proprio server di sviluppo e puntare l’URL del webhook all’host del tunnel. Usare Invia test per lanciare i payload su richiesta senza attendere l’attività reale di WhatsApp.Correlato
Impostazioni → Webhooks
Configurare endpoint, segreti di firma e tentativi nell’app.
Introduzione all'API
Autorizzazione, errori, paginazione e limiti di velocità per l’API REST.
Chiavi API
Creare e ruotare i token bearer di cui l’endpoint può avere bisogno.
Eventi di notifica
Gli stessi eventi vengono trasmessi nel feed in-app e nelle e-mail.

