Ricevere webhook alla fine di un workflow

Essere avvisati nei vostri sistemi quando un'esecuzione di workflow termina, non riesce o viene interrotta, e verificare la firma degli invii.

I webhook avvisano i vostri sistemi quando un’esecuzione di workflow termina. Upsellr invia allora una richiesta all’indirizzo di vostra scelta. Sono inclusi nell’offerta Enterprise.

Gli eventi

Evento Quando viene emesso
workflow.run.completed Un’esecuzione termina con successo
workflow.run.failed Un’esecuzione non riesce
workflow.run.stopped Un utente interrompe un’esecuzione

Ogni invio contiene la rappresentazione completa dell’esecuzione, nello stesso formato dell’API pubblica. La scheda Event catalogue descrive questo formato.

Aggiungere un endpoint

  1. Aprite il menu dell’account, poi Manage e API & webhooks.
  2. Nella scheda Endpoints, cliccate su Add endpoint.
  3. Inserite un Name e l’Endpoint URL. Sono accettati solo indirizzi HTTPS pubblici: le reti private e i reindirizzamenti sono bloccati.
  4. Spuntate gli Events to receive, poi salvate.
  5. Copiate il secret di firma. Viene mostrato una sola volta.

Un endpoint può essere messo in pausa e poi riattivato. Se perdete il secret, cliccate su Rotate secret e aggiornate subito il vostro ricevitore.

Verificare la firma

Ogni invio porta due intestazioni: X-Upsellr-Timestamp, il timestamp dell’invio, e X-Upsellr-Signature, nella forma v1= seguita da un’impronta esadecimale in minuscolo. L’impronta è un HMAC-SHA256, calcolato con il secret dell’endpoint, sul timestamp, un punto, poi il corpo grezzo della richiesta.

Verificate la firma sul corpo grezzo, prima di decodificare il JSON. Confrontate le firme in tempo costante e rifiutate i timestamp troppo vecchi.

Invii e nuovi tentativi

  • Gli eventi partono in JSON, tramite una richiesta POST. Qualsiasi risposta 2xx conferma la ricezione.
  • In caso di errore, Upsellr riprova dopo 1 minuto, 5 minuti, 30 minuti, 4 ore e 24 ore.
  • Un evento può arrivare più di una volta, e l’ordine non è garantito: deduplicate per identificativo di evento.

Il registro delle consegne

La scheda Event deliveries elenca gli invii degli ultimi 7 giorni, con il loro stato, i loro tentativi e il loro contenuto. Per un invio non riuscito, cliccate su Replay failed delivery: lo stesso evento riparte, con lo stesso identificativo.

Buono a sapersi

  • Solo i proprietari e gli amministratori gestiscono gli endpoint e ripetono gli invii.
  • Eliminare un endpoint annulla i suoi invii in sospeso. I registri esistenti vengono conservati.

Non trovate la risposta?

Contattateci