Docs

Ustawienie adresu URL webhooka albo rotacja jego sekretu

  • W sandboxie

Prostymi słowami

Ustawia adres, który odbiera zdarzenia statusu, albo zmienia jego sekret.
PUT
/webhook

Klucz operatora ustawia webhook operatora, który dostaje zdarzenia wszystkich klientów; klucz administratora klienta ustawia webhook tego klienta, który dostaje tylko jego zdarzenia. Pierwsze wywołanie wymaga url i tworzy sekret, który jest zwracany raz. Rotacja zwraca nowy sekret raz. Przez 24 godziny usługa podpisuje każde dostarczenie zarówno nowym, jak i starym sekretem, aby partner mógł przełączyć się bez utraty zdarzeń. Dostarczane są tylko zdarzenia zapisane po pierwszym wywołaniu.

Adres URL musi być https, a każdy adres, na który rozwiązuje się jego host, musi być publiczny: adresy pętli zwrotnej, prywatne, link-local, carrier-grade NAT, multicast, zarezerwowane i metadanych chmury są odrzucane, tu i ponownie przed każdym dostarczeniem. Przekierowania nie są wykonywane.

Od 0.16.0 każdy parametr zapytania daje odpowiedź 400, więc błędnie napisane client nigdy nie zmieni własnego webhooka operatora.

Autoryzacja

apiKey
headerAuthorizationBearer <token>

Klucz należy wysyłać jako token typu bearer: Authorization: Bearer <your-api-key>. Wywołanie stanu usługi jest jedynym, które nie wymaga klucza.

Treść żądania

application/json
  1. body
url?string
Wzorzec^https://
Formaturi
active?boolean
rotate_secret?boolean
Domyślniefalse
contact_email?|
Długośćlength <= 254

Treść odpowiedzi

Zapisano.

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

Kogo powiadomić, gdy dostarczanie przestaje działać.

last_delivery?|null
secret?string

Obecny tylko wtedy, gdy sekret został utworzony lub zmieniony w tym wywołaniu.

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