Docs

Définir l’URL du webhook, ou renouveler son secret

  • Dans le bac à sable

En termes simples

Définit l’adresse qui reçoit les événements de statut, ou renouvelle son secret.
PUT
/webhook

La clé de l’opérateur définit le webhook de l’opérateur, qui reçoit les événements de tous les clients ; la clé d’administration d’un client définit celui de ce client, qui ne reçoit que ses événements. Le premier appel exige url et crée le secret, renvoyé une seule fois. Le renouvellement renvoie le nouveau secret une seule fois. Pendant 24 heures, le service signe chaque livraison avec le nouveau et l’ancien secret, afin que le partenaire puisse basculer sans perdre d’événements. Seuls les événements écrits après le premier appel sont livrés.

L’URL doit être en https, et chaque adresse que son hôte résout doit être publique : les adresses de bouclage, privées, link-local, CGNAT, multicast, réservées et de métadonnées cloud sont refusées, ici et de nouveau avant chaque livraison. Les redirections ne sont pas suivies.

Depuis la 0.16.0, tout paramètre de requête répond 400, de sorte qu’un client mal orthographié ne peut jamais modifier le webhook de l’opérateur.

Autorisation

apiKey
headerAuthorizationBearer <token>

Envoyez votre clé sous forme de jeton bearer : Authorization: Bearer <your-api-key>. L’état du service est le seul appel qui ne nécessite pas de clé.

Corps de la requête

application/json
  1. body
url?string
Motif^https://
Formaturi
active?boolean
rotate_secret?boolean
Par défautfalse
contact_email?|
Longueurlength <= 254

Corps de la réponse

Enregistré.

application/json
  1. response
url*|
Motif^https://
Formaturi
active*boolean
secret_rotated_at?|
Formatdate-time
contact_email?|

Qui prévenir quand les livraisons échouent définitivement.

last_delivery?|null
secret?string

Présent uniquement quand un secret a été créé ou renouvelé lors de cet appel.

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"}