Webhooks are configured per team in Settings → Webhooks. Generating a secret is required before you can enable delivery.
eventId so you can deduplicate deliveries safely.
Configuring Delivery
- Generate (or rotate) the webhook secret from the dashboard. Treat it like a password.
- Toggle Webhooks on and provide an HTTPS endpoint. We recommend a dedicated path such as
https://api.example.com/webhooks/hyperbrowser. - Select at least one event type. Only the checked events will be delivered.
- Save the settings. New sessions created afterward inherit the configuration immediately.
We require a publicly reachable HTTP(S) URL.
Security & Verification
Every request includes headers you must capture to validate authenticity:
Validation steps:
- Read the raw request body (before parsing JSON).
- Recompute
expected = HMAC_SHA256(secret, "<timestamp>.<rawBody>"). - Compare
expectedto theX-Webhook-Signatureheader with a timing-safe comparison function. - Optionally enforce a maximum clock skew (e.g., reject signatures older than 5 minutes).