Guide
Webhooks
When an assistant has a webhook_url, Revox sends an HTTP POST with a JSON body to that URL after its calls. Set it with Create an assistant or Update an assistant.
Inbound calls send it too, to the webhook_url of the assistant that answers. When a prospect calls back after an outbound call (within 2 days on a shared Revox number, 30 days on a number dedicated to your organization), the inbound call has callback_from set to that outbound call and carries its metadata, so you can tie it back to your own records.
- When
Revox POSTs the call to the assistant's webhook_url once, when the call reaches its final status (completed or errored), after the post-call analysis. Not after each attempt, and not when the call is cancelled.
- Request
POST,
Content-Type: application/, bodyjson { call, assistant }.- Multi-step assistants
One request per step the call went through whose assistant has a
webhook_url, each with its ownassistant.- Test calls
Calls tested from the dashboard send it too: their
call.channelisweb.- Retries
None when your endpoint answers with an error status. A network error, or no answer within the 3 minutes that also cover Revox's own processing, is retried, so the same call can arrive twice: answer within seconds, and deduplicate on
call.idandassistant.id.- Signature
Requests are not signed: put a secret token in the URL (
?token=…) and check it, or fetch the call again withGET /call/{id}before acting on it.
Payload
callCallThe call, as
GET /call/{id}returns it. Its latest attempt, with the transcript, recording and extracted data, is call.last_call_attempt.The assistant whose webhook_url receives the request, as
GET /assistants/{id}returns it: the call's assistant, or the step of a multi-step flow. Null for a call placed with an inline assistant.