Skip to main content

Webhook delivery issues

Webhooks that do not arrive, fail verification, arrive late, or arrive twice, with what to check in Recent deliveries.

What you will achieve

You will find why a webhook is missing or rejected.

Look at Recent deliveries first

Open the webhook and read Recent deliveries. The row for a call shows the status code and any error, and tells you most of what you need.

Symptoms

SymptomLikely causeFix
No deliveries at allThe agent does not send to this webhook, or Webhook is off in its ToolsOpen the agent, Tools, Built-in, switch Webhook on and choose it under Send to
Not sent for a callThe call did not finish, or the review has not runWait for the call to be reviewed; call.completed is sent once it is
call.started or tool.called never arrivesThe event is not ticked under Events, the webhook is paused, the call began before you ticked it, or the agent does not send to this webhookTick it, switch the webhook on, save, and make a new call
Some tool.called events are missing from a busy callMore than 50 events were waiting because your endpoint answered slowlyAnswer 2xx quickly and do the work afterwards
Status 401 or 403 in the rowYour endpoint rejected the requestCheck your auth; 4xx is not retried
Status 5xx or a timeoutYour server failed or was too slowFix it, or raise Timeout; 5xx and timeouts are retried up to Attempts
An error about the addressA private or internal URL, or not http(s)Use a public address
Signature does not matchRe-serialised body, wrong header, or wrong secretSee Verify webhook signatures
Test works, real calls do notThe agent does not send to this webhook, the webhook is paused, or the call began before you savedCheck the agent's Send to, that the webhook is on, and make a new call
The same call arrives twiceA retry after a slow answerAnswer 2xx quickly and ignore a repeated call_id
Payload is missing a sectionIt was not ticked under What to sendTick it and save
Arrives with review.status of pendingThe review had not finishedFetch the call later from the API for the complete review

Testing

Choose Send test and watch the new row in Recent deliveries. Then make a short real call.

Expected result

A row marked as succeeded with status 200 for each finished call.

Something here does not match what you see in the dashboard? Let us know.