TANITARDevelopers
Dashboard guide

Webhooks

Register webhook endpoints, test and enable them, rotate signing secrets, and inspect and replay deliveries from Dashboard → Webhooks.

Webhooks tell your systems when something happens on your tenant: a tournament starts, an award is granted, a shop order settles. Dashboard → Webhooks (titled Customer webhooks) is where you set them up and watch them work. The page has three sections: Webhook endpoints, Signing secrets and Deliveries.

This page covers the screens. For the event catalog, payloads, signatures and retry behaviour, see the Webhooks section.

Register an endpoint

  1. In Register an endpoint, enter the HTTPS endpoint URL of your receiver, a Description, and pick the Event types it should receive.
  2. Select Register endpoint.
  3. The Store this signing secret now dialog shows the endpoint's signing secret. Store it where your receiver can read it, tick I have stored this signing secret, and select Done.

The signing secret is displayed once and cannot be recovered. If you lose it, rotate it.

The endpoint appears with its state and test status. It receives nothing until you enable it.

Test and enable

  1. Make sure your receiver verifies signatures; see Verifying signatures.
  2. Select Test. Tanitar sends a signed test delivery to the endpoint. The test status becomes passed when your receiver answers with a success status.
  3. Select Enable. It is available only after a passed test. Events now flow to the endpoint.

Change an endpoint

  • Edit changes the URL or description. The URL of an active endpoint is locked: select Disable first, then change it. A new URL resets the test status to untested, so test and enable again.
  • Replace subscriptions replaces the endpoint's event types with the ones selected.
  • Disable pauses deliveries; Enable resumes them.
  • Revoke retires the endpoint permanently. Revocation is terminal.

See Endpoint states for what each state accepts.

Rotate a signing secret

  1. In Rotate a secret, pick the Endpoint.
  2. Set Overlap seconds: how long the previous secret keeps signing alongside the new one. The default is 86,400 (24 hours), which is also the maximum by default. 0 retires the previous secret immediately.
  3. Select Rotate secret and store the new secret from the dialog.

During the overlap, every delivery carries two signatures, one per secret, so your receiver keeps verifying while you deploy the new secret. Revoke secret stops a single secret verifying immediately. The list shows each secret's state, never its value.

Inspect deliveries

  1. In Deliveries, filter by Endpoint, Status (pending, delivered, dead), Event type, From and To, and choose a Limit.
  2. Select Load deliveries. Page with Prev and Next.
  3. Select Inspect on a delivery to see its attempts and the receiver's responses.

A delivery that exhausts its retries becomes dead. See Retries.

Replay

  • Replay on a settled delivery queues a new attempt under the same webhook-id, so your receiver can recognise it as a duplicate.
  • Replay dead replays the dead deliveries of one endpoint, oldest first, up to the Replay-dead limit (at most 500 at a time). Use it after your receiver recovers from an outage.

Both need the endpoint to be active. See Replay.

What can go wrong

CodeWhyWhat to do
WEBHOOK_ENDPOINT_UNSAFEThe URL is not HTTPS or resolves to a private or otherwise disallowed addressUse a public HTTPS URL
WEBHOOK_ENDPOINT_UNRESOLVEDThe URL's hostname does not resolveCheck the DNS name
WEBHOOK_ENDPOINT_LIMITYou already have 10 endpoints that are not revokedRevoke one you no longer use
WEBHOOK_EVENT_TYPE_UNSUPPORTEDAn event type is not in the published catalogPick from the event catalog
WEBHOOK_ENDPOINT_UNTESTEDYou tried to enable an endpoint without a passed testTest it first
WEBHOOK_ENDPOINT_URL_LOCKEDYou tried to change the URL of an active endpointDisable it first
WEBHOOK_ENDPOINT_INACTIVEReplay needs an active endpointEnable the endpoint, then replay
WEBHOOK_DELIVERY_IN_FLIGHTThe delivery is still being attemptedWait for it to settle
WEBHOOK_REPLAY_LIMITA delivery may be replayed at most 10 timesInvestigate your receiver before replaying further
WEBHOOK_REVISION_CONFLICTSomeone changed the endpoint since you loaded the pageReload and retry
Members have read-only access.Your role is org:memberAsk an admin

On this page