Webhook Architecture
- Register Endpoint: Add your server URL and select subscribed events via the Webhooks Dashboard.
- Store Secret: Secure the
whsec_...signing secret generated upon creation. - Verify Signature: Validate the
webhook-signatureheader on your server using the Standard Webhooks specification before processing payloads.
Configuring Webhooks via Dashboard
Webhook registration and lifecycle management are handled visually via the Webhooks Dashboard:- Sign in to your account and navigate to the Webhooks section in the dashboard.
- Click Add Webhook.
- Provide your server’s public Endpoint URL (must be a publicly accessible
https://orhttp://destination). - Select the Events you want to receive (e.g.,
response.completed,batch.completed,video.completed). - Click Save and copy the generated Signing Secret (
whsec_...). Save this secret in your server environment variables. - Use the Send Test button to dispatch a mock
webhook.testevent and confirm your endpoint handles deliveries with HTTP200 OK.
Supported Events
Payload Structure & Headers
Deliveries are dispatched as HTTPPOST requests formatted as standard JSON conforming to Standard Webhooks:
Signature Verification Examples
Use the officialstandardwebhooks package to verify payload signatures before processing events:
Always verify the signature against the raw byte body before parsing into a JSON object to prevent byte order divergence.
Delivery Retries & Security
- Immediate Acknowledgment (HTTP 2xx): Your server must acknowledge reception with HTTP
200 OKwithin seconds. Heavy computations should be deferred to internal workers. - Exponential Backoff Retries: If your server returns non-2xx codes or times out, the gateway retries delivery automatically with exponential backoff.
- SSRF Guardrails: Loopback destinations (
localhost,127.0.0.1), private RFC 1918 subnets, and link-local targets are blocked by default.