Skip to main content
Web Callback places a click-to-call from your backend: you name a destination, Wave dials it through its telephony backend and bridges the call.

Placing a call

POST /v1/callback with at least a to number. See the Quickstart and the API Reference.

Call lifecycle

A callback is created with status: "initiated" and returns 202 immediately. The call then progresses through its lifecycle as the telephony backend reports it — answered (with answered_at), then ended (with duration). Each transition fires the matching webhook (call.answered, call.ended), and the final status and duration are written to the call record.
Treat the 202 as “accepted,” not “completed.” Subscribe to webhooks — or poll GET /v1/calls — to follow the call to answered / ended.

Call logs

Every callback is recorded. Retrieve them with GET /v1/calls — cursor-paginated (cursor, limit up to 100), numbers masked — or view them on the Call Logs page in the dashboard. See the API Reference for the full request/response.

Cancelling / retrieving a single call

GET /v1/callbacks/:id and DELETE /v1/callbacks/:id are coming soon (D1.1) — they are not yet functional. This page will document them when they ship.