Webhook
Ultimo aggiornamento:
Che cos'è un webhook
Un webhook viene chiamato anche callback HTTP o API inversa. Con una normale chiamata API è il tuo programma a chiedere dati a un altro sistema. Con un webhook registri una volta un URL, scegli gli eventi che ti interessano e l'altro sistema chiama quell'URL ogni volta che uno di essi si verifica. Il messaggio è di solito una richiesta POST con un corpo JSON che descrive l'evento.
L'alternativa è il polling: interrogare un'API ogni pochi minuti per vedere se ci sono novità. Il polling spreca richieste quando non è successo nulla e ritarda gli aggiornamenti quando qualcosa è successo. I webhook evitano entrambi i problemi.
Come funziona
Un webhook coinvolge un mittente e un destinatario:
- Il destinatario crea un endpoint, un URL sul proprio server che accetta richieste in HTTPS.
- Nelle impostazioni del mittente registra quell'URL e sceglie gli eventi a cui iscriversi.
- Quando si verifica un evento, il mittente invia all'URL un payload JSON con il tipo di evento e i relativi dati.
- Il destinatario verifica che la richiesta sia autentica, risponde subito con un codice di stato 2xx e poi elabora i dati. Se non riceve una risposta di successo, il mittente di solito riprova più tardi.
Esempio
Un negozio online vuole che il suo gestionale di magazzino conosca subito ogni nuovo ordine. Invece di far interrogare il negozio dal gestionale ogni minuto, il negozio invia un webhook all'endpoint del gestionale a ogni ordine. Il payload contiene numero d'ordine, articoli e indirizzo di spedizione, così la preparazione del pacco può partire in pochi secondi.
Buone pratiche per ricevere i webhook
Un endpoint webhook è un URL pubblico, quindi tratta ogni richiesta in arrivo con attenzione:
- Verifica la firma. Molti mittenti firmano ogni payload con un segreto condiviso, spesso tramite HMAC, così puoi confermare che la richiesta viene da loro e non è stata alterata lungo il percorso.
- Usa HTTPS, perché i payload possono contenere dati personali e devono viaggiare cifrati.
- Rispondi in fretta. Restituisci subito uno stato 2xx e svolgi il lavoro lento in background, altrimenti il mittente potrebbe considerare fallita la consegna.
- Metti in conto i duplicati. I nuovi tentativi possono consegnare lo stesso evento due volte, quindi usa l'ID dell'evento per elaborarlo una sola volta. Questa proprietà si chiama idempotenza.
Perché conta per i chatbot aziendali
I webhook collegano un chatbot al resto dell'azienda senza che qualcuno debba tenere d'occhio una dashboard. Una piattaforma di chatbot può inviare un webhook quando una conversazione termina o quando viene raccolto un lead, così un CRM, un foglio di calcolo o uno strumento di automazione lo riceve subito. Quando confronti strumenti per chatbot, controlla quali eventi possono inviare e se i payload sono firmati.
Cosa offre intoCHAT al loro posto
intoCHAT non invia webhook e non ha integrazioni con Zapier o Make. I nuovi lead ti arrivano in due modi: un'email di notifica per ogni nuovo lead, inviata al titolare e fino a 5 altri indirizzi, e la tabella dei lead, dove puoi filtrarli, aprire la conversazione dietro ciascuno ed esportarli in CSV per il tuo CRM o il tuo strumento di email marketing.
Le azioni API personalizzate di intoCHAT funzionano in modo diverso dai webhook. L'agente chiama la tua API HTTP durante la chat quando la conversazione lo richiede, per esempio per verificare un prezzo o una disponibilità, non automaticamente a ogni evento. Servono a portare dati aggiornati nelle risposte, non a inoltrare ogni lead a un altro sistema.