Register an endpoint
Webhook endpoints are managed in the Wave dashboard under Webhooks: add a URL, choose the events, and copy the signing secret (shown once).Events
You can subscribe to any event below (max 5 endpoints per project). Today onlycall.initiated is emitted — the rest are accepted in the subscription allowlist but won’t fire until the real-time event stream lands.
Payload
Each delivery is a JSON body with theevent type and a data object. The X-Wave-Event-Id header carries a unique id for idempotency.
Verifying the signature
Every delivery is signed. TheX-Wave-Signature header is sha256=<hex> — an HMAC-SHA256 of the raw request body using your endpoint’s signing secret (whsec_…). Verify it with a constant-time compare before trusting the payload:
Retries & dead-letter
Each attempt has a 10-second timeout. Failed deliveries retry up to 5 attempts on a backoff ladder, then dead-letter:
Exhausted deliveries are dead-lettered (retained 72h) and appear — with a replay action — in the dashboard’s delivery logs.

