Skip to content

Start typing to search the documentation.

Webhooks (dashboard)

Developer → Webhooks. Register the HTTPS endpoints Self posts events to. For the delivery model, signatures, retries, and payloads, see the Webhooks section.

Webhooks settings

Add an endpoint

Click Add webhook and fill in:

  • Name: a label for the endpoint.
  • Webhook URL: the full public HTTPS URL including your handler’s path, e.g. https://yourapp.com/webhooks/self, not just the domain.
  • Environment: test or live (defaults to test).

Click Save. The endpoint is saved right away and the signing secret (whsec_...) is revealed once in a banner. This is the only time you’ll see it, copy it into your secret manager as SELF_WEBHOOK_SECRET.

Every endpoint receives the verification.completed event; there’s no per-endpoint event picker. Branch on event.type in your handler. See the event catalog.

Verify the signature

Once you have the whsec_... secret, wire up real signature verification so you only act on genuine events. See Verify webhooks.

Send a test request

A saved endpoint has a Send Test Request button. It delivers a sample event to your URL and reports whether the endpoint accepted it (returned 2xx). It’s repeatable, use it to confirm your handler is reachable and responding before you rely on live traffic. Sending a test is optional and never required to save an endpoint.

Managing endpoints

Each saved endpoint shows its name, URL, and environment. You can:

  • Delete it, which stops delivery to that URL.
  • Rotate its signing secret. The new whsec_... is revealed once, the same way it was at creation. Roll it into SELF_WEBHOOK_SECRET and redeploy.