
Diagnosing Disconnection Reasons
Please note that when phone numbers engage in a lot of short calls in a short period, they might be marked as spam at
carrier level, which in turn leads to the number being blocked and showing up as
dial_failed.| Disconnection Reason | Call Status | Description |
|---|---|---|
user_hangup | ended | Expected behavior, user hung up the call. |
agent_hangup | ended | Expected behavior, AI agent hung up the call. |
call_transfer | ended | Expected behavior, AI agent transferred the call. |
voicemail_reached | ended | Expected behavior, if AI agent is configured with voicemail settings, and voicemail is reached. |
ivr_reached | ended | Expected behavior, if AI agent is configured to hang up when encountering an IVR system, and IVR is reached. |
inactivity | ended | Expected behavior, call was terminated due to the “end_call_after_silence_ms” setting reached after long inactivity. |
max_duration_reached | ended | Expected behavior, call was terminated due to maximum duration reached. |
dial_busy | not_connected | Outbound call not connected, the number dialed is busy. |
dial_failed | not_connected | Outbound call not connected, dialing failed with no or unknown sip error code. |
dial_no_answer | not_connected | Outbound call not connected, the number dialed did not answer. |
invalid_destination | not_connected | Outbound call not connected, the number dialed is invalid. Can be due to spaces or invalid characters in the number. Or it can be your telephony provider requiring specific format (like e.164 format). |
telephony_provider_permission_denied | not_connected | Outbound call not connected, the sip trunk credentials are not authenticated. |
telephony_provider_unavailable | not_connected | Outbound call not connected, the telephony provider is unavailable. |
sip_routing_error | not_connected | Outbound call not connected, the sip routing is going over too many hops or is in a loop. |
marked_as_spam | not_connected | Outbound call not connected, the number dialed is marked as spam. See Spam Likely Overview. |
user_declined | not_connected | Outbound call not connected, user declined the call. |
concurrency_limit_reached | error | Error, concurrency limit reached, add a retry with exponential backoff. Or consider enterprise plan. |
no_valid_payment | error | Error, no valid payment registered on file, or service shut down due to bill overdue. |
scam_detected | error | Error, scam detected for that particular agent. |
error_llm_websocket_open | error | Error, LLM websocket did not open between Retell server and your backend. Likely because the Custom LLM URL is incorrect or your LLM server is unreachable. |
error_llm_websocket_lost_connection | error | Error, LLM websocket connection broke during the call. |
error_llm_websocket_runtime | error | Error, LLM websocket received a closing signal other than 1000 from your server. |
error_llm_websocket_corrupt_payload | error | Error, LLM websocket received unspecified payload. |
error_no_audio_received | error | Error, has not received audio from Twilio or web frontend for a while after connection has established. |
error_asr | error | Error, Retell’s ASR encountered a problem. |
error_retell | error | Error, unspecified Retell side problem. |
error_unknown | error | Error, unknown error. |
error_user_not_joined | error | Error, user did not join web call within 30s after calling startWebCall. |
registered_call_timeout | error | Error, phone call is 5 minutes or more apart from registration. |