Docs

Nastavenie URL webhooku alebo výmena jeho tajného kľúča

  • V sandboxe

Jednoducho povedané

Nastaví adresu, ktorá prijíma stavové udalosti, alebo vymení jej tajný kľúč.
PUT
/webhook

Kľúč operátora nastavuje webhook operátora, ktorý dostáva udalosti všetkých klientov; administrátorský kľúč klienta nastavuje webhook tohto klienta, ktorý dostáva len jeho udalosti. Prvé volanie potrebuje url a vytvorí tajný kľúč, ktorý sa vráti raz. Výmena vráti nový tajný kľúč raz. Po 24 hodín služba podpisuje každé doručenie novým aj starým tajným kľúčom, aby mohol partner prepnúť bez straty udalostí. Doručujú sa len udalosti zapísané po prvom volaní.

URL musí byť https a každá adresa, na ktorú sa jeho hostiteľ preloží, musí byť verejná: loopback, privátne adresy, link-local, carrier-grade NAT, multicast, rezervované a metadátové adresy cloudu sa odmietajú, tu aj znova pred každým doručením. Presmerovania sa nesledujú.

Od 0.16.0 každý parameter dotazu odpovie 400, takže chybne napísaný client nikdy nemôže zmeniť webhook operátora.

Autorizácia

apiKey
headerAuthorizationBearer <token>

Kľúč posielajte ako token typu Bearer: Authorization: Bearer <your-api-key>. Stav služby je jediné volanie, ktoré nevyžaduje kľúč.

Telo požiadavky

application/json
  1. body
url?string
Zhoda^https://
Formáturi
active?boolean
rotate_secret?boolean
Predvolenéfalse
contact_email?|
Dĺžkalength <= 254

Telo odpovede

Uložené.

application/json
  1. response
url*|
Zhoda^https://
Formáturi
active*boolean
secret_rotated_at?|
Formátdate-time
contact_email?|

Koho informovať, keď doručenia zlyhávajú.

last_delivery?|null
secret?string

Prítomný len vtedy, keď sa v tomto volaní tajný kľúč vytvoril alebo vymenil.

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