Docs
Troubleshooting SIP responses on RingTrunk
What each SIP rejection from a RingTrunk trunk means and how to fix it. 403 cli_not_allowed, 403 destination_not_supported, 486 Busy Here, 503 circuit congestion, 401 on REGISTER, 488 Not Acceptable Here, and inbound calls that never arrive on LiveKit.
Updated 6 September 2026
In short: Every rejection from RingTrunk names its reason; this page maps each SIP response to the setting that fixes it.
Every rejection from RingTrunk names its reason. This page lists what each one means and what to change.
Outbound rejections
| Response | Meaning | Fix |
|---|---|---|
403 cli_not_allowed | The caller ID you sent is not attached to this trunk. | Attach the number, or present one that is, in plain 10-digit form. |
403 destination_not_supported | The number you dialled is not a 10-digit Indian mobile. | Landlines, short codes and international destinations are not carried. |
403 trunk_suspended | The trunk is suspended. | Re-activate it under Settings, or PATCH {"status": "active"}. |
403 ip_not_allowed | You configured a termination IP ACL and this call came from an address outside it. | Update the ACL under Settings, or clear it to use digest only. |
403 bad_trunk_sid or trunk_not_found | The SIP username is wrong. | It is the trunk id exactly as shown on the Termination tab, all lowercase. |
486 Busy Here | You are at the trunk channel limit, the sum of the channels bought with your attached numbers. | Attach numbers with more channels, or spread traffic across trunks. |
503 circuit congestion | You exceeded the trunk calls-per-second limit. This is a rate cap, separate from the channel limit. | Pace your dialling and retry. |
401 on REGISTER | Wrong password, or you rotated it in the last minute. | Credential changes take up to 60 seconds to apply. |
488 Not Acceptable Here | Codec mismatch. Only G.711 A-law (PCMA, 20 ms) is carried. | Restrict the trunk, gateway or endpoint to A-law. |
Inbound problems
| Symptom | Meaning | Fix |
|---|---|---|
| Inbound calls never arrive | Your SIP server is not trusting our source IP, or a firewall drops the INVITE before SIP sees it. | Incoming legs carry no credentials, so IP trust is the only option. Check that first, then that the number is listed in every format. |
403 no_origination_uri | An incoming call arrived but the trunk has no enabled origination URI to deliver it to. | Add one on the Origination tab. |
| Inbound never arrives (LiveKit) | Your LiveKit inbound trunk has auth_username or auth_password set. Our INVITE carries no credentials, so it is rejected with 401. | Remove them and allow our source IP instead. |
| Inbound rejected as unknown number (LiveKit) | The To header format did not match. | List the number in every form on the inbound trunk: bare 10-digit, +91…, 0… and 91…. |
| Calls ring on a phone instead of your server | Callback forwarding is set on that number. | Clear forward_number and delivery returns to your trunk. |
Timing to expect
- A brand-new trunk can take up to 60 seconds before its first registration succeeds.
- A rotated password takes up to 60 seconds to become active, and the old one keeps working until then.
- Suspending a trunk stops new calls immediately but does not disconnect calls in progress.
Still stuck?
Write to [email protected] with the trunk id, the time of the call and the response you received. The call record under Calls in the portal carries the SIP result code for every attempt.