Impostare l’URL del webhook, oppure cambiarne il segreto
- Nella sandbox
In parole semplici
La chiave dell’operatore imposta il webhook dell’operatore, che riceve gli eventi di ogni cliente; la chiave admin di un cliente imposta
quello del cliente stesso, che riceve solo i suoi eventi. La prima chiamata richiede url e crea il segreto, che viene restituito una sola volta. Il cambio restituisce il nuovo segreto
una sola volta. Per 24 ore il servizio firma ogni consegna sia con il nuovo sia con il vecchio segreto, così il partner può
passare all’altro senza perdere eventi. Vengono consegnati solo gli eventi scritti dopo la prima chiamata.
L’URL deve essere https e ogni indirizzo a cui il suo host risolve deve essere pubblico: loopback, privato, link-local, CGNAT, multicast, riservato e indirizzi dei metadati cloud vengono rifiutati, qui e di nuovo prima di ogni consegna. I reindirizzamenti non vengono seguiti.
Dalla 0.16.0 qualsiasi parametro di query risponde 400, così un client scritto male non può mai cambiare il webhook dell’operatore.
apiKeyAuthorizationBearer <token>Inviare la chiave come token bearer: Authorization: Bearer <your-api-key>. Lo stato del servizio è l’unica chiamata che non richiede una chiave.
application/json- body
url?string^https://uriactive?booleanrotate_secret?booleanfalsecontact_email?|length <= 254Salvato.
application/json- response
url*|^https://uriactive*booleansecret_rotated_at?|date-timecontact_email?|Chi avvisare quando le consegne si interrompono.
last_delivery?|nullsecret?stringPresente solo quando in questa chiamata è stato creato o cambiato un segreto.
curl -X PUT "https://example.com/webhook" \ -H "Authorization: Bearer <your-api-key>" \ -H "Content-Type: application/json" \ -d '{}'{ "url": "http://example.com", "active": true, "secret_rotated_at": "2019-08-24T14:15:22Z", "contact_email": "string", "last_delivery": { "at": "2019-08-24T14:15:22Z", "http_status": 0 }, "secret": "string"}Leggere le impostazioni del webhook (quelle dell’operatore, oppure, con la chiave admin di un cliente, quelle del cliente stesso) GET
Dalla 0.16.0 la chiave dell’operatore legge le impostazioni di un cliente con client. La chiave admin di un cliente può indicare solo il proprio cliente; ogni altro risponde 404. Un parametro sconosciuto o ripetuto, o client vuoto, risponde 400. Impostare e provare un webhook non accettano alcun parametro di query (400): restano legati alla chiave del webhook.
Inviare un evento di prova firmato all’URL del webhook POST
Il corpo ha event_id, type (sempre test), occurred_at e message, firmati come un evento di stato. Non riguarda alcuna fattura. Dalla 0.16.0 qualsiasi parametro di query risponde 400.