Preskoči na sadržaj
Sursa Developers

POST/v1/webhooks/{webhook_id}/test

Slanje probnog događaja

test_webhook

Odmah šalje događaj, neovisno o pretplatama i stanju webhooka, s test: true, izvan redoslijeda isporuka webhooka i bez X-KB-Sequence. Događaj se ne upisuje u feed događaja. type je bilo koja vrsta iz kataloga (prema zadanim postavkama webhook.ping); data dolazi iz primjera događaja u odjeljku webhooks specifikacije. Neuspjeh se ne ponavlja i ne računa se u prag pauze. Odgovor je isporuka s kodom odgovora primatelja i pogreškom.

Autentifikacija

Pošaljite API ključ u zaglavlju Authorization: Authorization: Bearer <ključ>.

Parametri putanje

  • webhook_idintegerobavezno

Parametri zaglavlja

  • Idempotency-Keystring

    Ključ za siguran ponovni pokušaj upisa: od 1 do 255 ispisivih ASCII znakova; preporučuje se UUID v4 po logičkoj operaciji. Ponovni pokušaj s istim ključem unutar 24 sata ne izvodi operaciju ponovno: vraća spremljeni odgovor (status, zaglavlja i tijelo) sa zaglavljem Idempotency-Replayed: true. Isti ključ s drugom metodom, putanjom, Content-Type ili tijelom vraća 409 api.idempotency_mismatch; dok se prvi zahtjev još izvodi – 409 api.idempotency_in_progress s Retry-After: 1. Nakon odgovora 5xx ili 429 ključ se oslobađa i ponovni pokušaj ponovno izvodi operaciju. Ključ vrijedi u okviru organizacije i pozivatelja (API ključ, korisnik ili ključ vlastitog izvora).

    length ≥ 1, length ≤ 255

Tijelo zahtjeva

Odgovori

200Isporuka je pokušana (je li uspjela, navedeno je u `status`).

Zaglavlja odgovora

  • RateLimit-Policy

    Ograničenja na snazi, u formatu IETF nacrta draft-ietf-httpapi-ratelimit-headers: stavke odvojene zarezima "<name>";q=<quota>;w=<window in seconds>. key je učestalost zahtjeva API ključa (kvota je nalet, prozor je vrijeme do njegova potpunog obnavljanja; za sesiju je to user, bez vjerodajnica ip); minute, day i month su kvote organizacije za kalendarsku minutu, dan i mjesec po UTC-u.

  • RateLimit

    Što je preostalo od svakog ograničenja u RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Ograničenje najstrože stavke u RateLimit-Policy (one s najmanje preostalih zahtjeva).

  • X-RateLimit-Remaining

    Preostali zahtjevi u okviru najstrožeg ograničenja.

  • X-RateLimit-Reset

    Broj sekundi do obnove najstrožeg ograničenja.

  • Idempotency-Replayed

    true znači da je odgovor ponovljen iz spremljenog odgovora za ovaj Idempotency-Key: operacija se nije ponovno izvela.

application/json

Objekt: WebhookDelivery

  • idintegerobavezno
  • webhook_idintegerobavezno
  • event_idstringobavezno

    ID događaja (evt_…), šalje se i u zaglavlju X-KB-Event-Id i u tijelu isporuke.

  • event_typeWebhookEventTypeobavezno
  • event_created_atstring (date-time)obavezno
  • attemptintegerobavezno

    Broj obavljenih pokušaja.

  • statusWebhookDeliveryStatusobavezno
  • response_codeinteger | null
  • duration_msinteger | null
  • next_retry_atstring (date-time) | null
  • errorstring | null
  • delivered_atstring (date-time) | null
  • created_atstring (date-time)obavezno
  • updated_atstring (date-time)obavezno
  • sequenceinteger | null

    Broj u redoslijedu isporuka webhooka (X-KB-Sequence); null za probnu isporuku.

  • testbooleanobavezno

    Probna isporuka (POST /v1/webhooks/{webhook_id}/test).

  • redelivery_ofinteger | null

    Izvorna isporuka, ako je ova ponovna isporuka.

  • error_codestring | null

    Neutralni kod posljednjeg neuspjeha: timeout, connection_failed, tls_error, private_address, unresolvable, redirect, http_error, request_failed, endpoint_disabled, event_expired; otkazana isporuka (cancelled) može imati i event_not_permitted (događaj je u trenutku pokušaja izvan prava webhooka jer su prava sužena nakon što je događaj raspoređen webhookovima) ili event_unavailable (tijelo probne isporuke više nije dostupno).

401Vjerodajnice nisu poslane (ni kolačić sesije ni API ključ) ili ključ nije pronađen.

Zaglavlja odgovora

  • RateLimit-Policy

    Ograničenja na snazi, u formatu IETF nacrta draft-ietf-httpapi-ratelimit-headers: stavke odvojene zarezima "<name>";q=<quota>;w=<window in seconds>. key je učestalost zahtjeva API ključa (kvota je nalet, prozor je vrijeme do njegova potpunog obnavljanja; za sesiju je to user, bez vjerodajnica ip); minute, day i month su kvote organizacije za kalendarsku minutu, dan i mjesec po UTC-u.

  • RateLimit

    Što je preostalo od svakog ograničenja u RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Ograničenje najstrože stavke u RateLimit-Policy (one s najmanje preostalih zahtjeva).

  • X-RateLimit-Remaining

    Preostali zahtjevi u okviru najstrožeg ograničenja.

  • X-RateLimit-Reset

    Broj sekundi do obnove najstrožeg ograničenja.

application/json

Objekt: Error

403Radnja nije dopuštena: uloga nije dovoljna, nema pristupa zbirci ili kartici, zahtjev se izvodi u načinu „View as” ili je organizacija suspendirana ili izbrisana (`detail` je objekt s `code: org_suspended | org_deleted`).

Zaglavlja odgovora

  • RateLimit-Policy

    Ograničenja na snazi, u formatu IETF nacrta draft-ietf-httpapi-ratelimit-headers: stavke odvojene zarezima "<name>";q=<quota>;w=<window in seconds>. key je učestalost zahtjeva API ključa (kvota je nalet, prozor je vrijeme do njegova potpunog obnavljanja; za sesiju je to user, bez vjerodajnica ip); minute, day i month su kvote organizacije za kalendarsku minutu, dan i mjesec po UTC-u.

  • RateLimit

    Što je preostalo od svakog ograničenja u RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Ograničenje najstrože stavke u RateLimit-Policy (one s najmanje preostalih zahtjeva).

  • X-RateLimit-Remaining

    Preostali zahtjevi u okviru najstrožeg ograničenja.

  • X-RateLimit-Reset

    Broj sekundi do obnove najstrožeg ograničenja.

application/json

Objekt: Error

404Objekt ne postoji ili vam nije dostupan. API ne potvrđuje postojanje ograničenog objekta.

Zaglavlja odgovora

  • RateLimit-Policy

    Ograničenja na snazi, u formatu IETF nacrta draft-ietf-httpapi-ratelimit-headers: stavke odvojene zarezima "<name>";q=<quota>;w=<window in seconds>. key je učestalost zahtjeva API ključa (kvota je nalet, prozor je vrijeme do njegova potpunog obnavljanja; za sesiju je to user, bez vjerodajnica ip); minute, day i month su kvote organizacije za kalendarsku minutu, dan i mjesec po UTC-u.

  • RateLimit

    Što je preostalo od svakog ograničenja u RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Ograničenje najstrože stavke u RateLimit-Policy (one s najmanje preostalih zahtjeva).

  • X-RateLimit-Remaining

    Preostali zahtjevi u okviru najstrožeg ograničenja.

  • X-RateLimit-Reset

    Broj sekundi do obnove najstrožeg ograničenja.

application/json

Objekt: Error

429Previše zahtjeva (`api.rate_limited`), kvota organizacije za minutu, dan ili mjesec je potrošena (`api.quota_exceeded`; `error.details` sadrži `quota`, `limit` i `reset_at`), dosegnuto je ograničenje organizacije ili je usluga odgovora zauzeta (`answers.engine_busy`). Pričekajte vrijeme navedeno u zaglavlju `Retry-After`.

Zaglavlja odgovora

  • Retry-After

    Broj sekundi koje treba pričekati prije ponovnog pokušaja zahtjeva.

  • RateLimit-Policy

    Ograničenja na snazi, u formatu IETF nacrta draft-ietf-httpapi-ratelimit-headers: stavke odvojene zarezima "<name>";q=<quota>;w=<window in seconds>. key je učestalost zahtjeva API ključa (kvota je nalet, prozor je vrijeme do njegova potpunog obnavljanja; za sesiju je to user, bez vjerodajnica ip); minute, day i month su kvote organizacije za kalendarsku minutu, dan i mjesec po UTC-u.

  • RateLimit

    Što je preostalo od svakog ograničenja u RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Ograničenje najstrože stavke u RateLimit-Policy (one s najmanje preostalih zahtjeva).

  • X-RateLimit-Remaining

    Preostali zahtjevi u okviru najstrožeg ograničenja.

  • X-RateLimit-Reset

    Broj sekundi do obnove najstrožeg ograničenja.

application/json

Objekt: Error

Kodovi pogrešaka

Kodovi koje ova operacija može vratiti u error.code, uz opće kodove svakog zahtjeva.

Sigurni ponovni pokušaji

Uz svaki POST i PATCH pošaljite zaglavlje Idempotency-Key (na primjer UUID). Ponovni pokušaj s istim ključem unutar 24 sata vraća spremljeni odgovor umjesto da ponovno izvrši zahtjev.

Ograničenja učestalosti

Odgovori sadrže zaglavlja RateLimit i RateLimit-Policy te ranija zaglavlja X-RateLimit-Limit, X-RateLimit-Remaining i X-RateLimit-Reset. Odgovor 429 sadrži zaglavlje Retry-After u sekundama: pričekajte i pokušajte ponovno.

← webhooks · Referenca API-ja