Gerónimo
05/26/2026, 9:31 PM404 Not Found, even though the Request-URI user-part matches an active BYO phone number alias.
Org ID: 959b692f-b36c-4461-8335-c959c4290cad
Relevant BYO phones:
text
8fbe63df-644b-411f-bfe7-59f14215ecfe
Cabecera Claro 2 (900)
number: +541140071900
numberE164CheckEnabled: true
assistantId: a27477da-f58d-4242-8308-2210b313d38f
credentialId: 6ee8d2b3-5b51-47a5-a29f-af49b7db57b5
status: active
a65a7069-869d-41da-a577-0116caeefeef
Alias Claro 2 - 1140071900
number: 1140071900
numberE164CheckEnabled: false
assistantId: a27477da-f58d-4242-8308-2210b313d38f
credentialId: 6ee8d2b3-5b51-47a5-a29f-af49b7db57b5
status: active
Credential gateway configuration after cleanup:
json
[
{
"ip": "ollsbc.tramavirtclaro.com",
"port": 5060,
"outboundEnabled": true,
"inboundEnabled": false
},
{
"ip": "177.234.129.52",
"port": 5060,
"outboundEnabled": true,
"inboundEnabled": true
}
]
Claro confirmed multiple public inbound attempts reached Vapi. Example INVITE:
sip
INVITE sip:1140071900@44.238.177.138;user=phone SIP/2.0
Via: SIP/2.0/UDP 177.234.129.52:5060
From: "1166301515" <sip:1166301515@mssoll02.claro.tel;user=phone>
To: <sip:+541140071900@44.238.177.138;user=phone>
Contact: <sip:177.234.129.52:5060;...>
Transport: UDP
Vapi response: SIP/2.0 404 Not Found
Example SIP Call-IDs from today:
* DB84175EE971EADADA705517@0570ffffffff
* 4E1D0E94BE2804EB2971F317@0a70ffffffff
* 523579C2597B155E40206497@0d70ffffffff
Question: Why is Vapi returning 404 when the incoming Request-URI user-part is exactly 1140071900, and there is an active BYO phone number with number: "1140071900", same credentialId, assistant assigned, and E.164 validation disabled?
Does Vapi match BYO SIP inbound by Request-URI user-part? To header? credentialId / source IP? providerResourceId? another internal routing key?
What configuration is required for this INVITE?Chiranjeet Mishra
05/27/2026, 12:03 AM{phoneNumber}@<credential_id>.sip.vapi.ai
For reference, please review the SIP trunk documentation here:
[Vapi SIP Trunk Documentation](https://docs.vapi.ai/advanced/sip/sip-trunk?utm_source=chatgpt.com)
Additionally, please verify the configuration settings on your provider side:
• If both Inbound and Outbound are enabled together → this can cause issues.
• If only Outbound is enabled and a domain name or IP address is configured → this setup should work correctly.
• If Inbound is enabled with a domain name configured → this can also lead to issues.
Please review these settings and try again. If the issue persists, feel free to share the updated call details and we’ll continue investigating.
https://cdn.discordapp.com/attachments/1508945698958217366/1508983871205539991/image.png?ex=6a19807e&is=6a182efe&hm=ee516b1745c1e0fd2a1e8230849cfc6e91396221d0aca8ed9dfae6fd69728568&Gerónimo
05/27/2026, 5:13 PMsip
INVITE sip:1140071900@44.238.177.138;user=phone SIP/2.0
And instead Claro must send the Request-URI to the credential-specific Vapi SIP domain?
For our credential: credentialId: 6ee8d2b3-5b51-47a5-a29f-af49b7db57b5
Should the provider send exactly one of these? INVITE sip:1140071900@6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai SIP/2.0
or INVITE sip:+541140071900@6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai SIP/2.0
Also, we will update the gateway configuration to split directions:
json
[
{
"ip": "ollsbc.tramavirtclaro.com",
"port": 5060,
"outboundEnabled": true,
"inboundEnabled": false
},
{
"ip": "177.234.129.52",
"port": 5060,
"outboundEnabled": false,
"inboundEnabled": true
}
]
Please confirm whether this is the expected configuration.
Once you confirm the exact inbound SIP URI, we will ask Claro to update the inbound Request-URI accordingly.Gerónimo
05/27/2026, 5:17 PMjson
[
{
"ip": "ollsbc.tramavirtclaro.com",
"port": 5060,
"outboundEnabled": true,
"inboundEnabled": false,
"outboundProtocol": "udp"
},
{
"ip": "177.234.129.52",
"port": 5060,
"outboundEnabled": false,
"inboundEnabled": true,
"outboundProtocol": "udp"
}
]
Then we ran a new public inbound test to +541140071900.
Result:
* Caller still hears the carrier message equivalent to “number not in service”.
* No useful inbound call appears in the Vapi dashboard.
* Previous Claro traces show the INVITE reaches Vapi as:
sip
INVITE sip:1140071900@44.238.177.138;user=phone SIP/2.0
We already have an active BYO phone number alias:
text
number: 1140071900
numberE164CheckEnabled: false
assistantId: a27477da-f58d-4242-8308-2210b313d38f
credentialId: 6ee8d2b3-5b51-47a5-a29f-af49b7db57b5
Can you please confirm the exact inbound SIP URI Claro must send to?
Should it be: sip:1140071900@6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai instead of sending to the raw Vapi SBC IP 44.238.177.138?
We need the exact provider-side Request-URI format to give Claro.Chiranjeet Mishra
05/29/2026, 4:20 PMGerónimo
06/03/2026, 3:07 PMsip
INVITE sip:1140071900@6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai;user=phone SIP/2.0
Via: SIP/2.0/UDP 177.234.129.52:5060
From: "1166301515" <sip:1166301515@mssoll02.claro.tel;user=phone>
To: <sip:+541140071900@6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai;user=phone>
Call-ID: 130B4ACCFAEE11FC21DE0F97@1470ffffffff
Transport: UDP
Vapi now responds:
sip
SIP/2.0 401 Unauthorized
WWW-Authenticate: Digest realm="6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai", algorithm=MD5, qop="auth", nonce="178033481517700"
So the previous 404 routing issue appears resolved. We are now blocked at SIP authentication.
Current gateway config:
json
[
{
"ip": "ollsbc.tramavirtclaro.com",
"port": 5060,
"outboundEnabled": true,
"inboundEnabled": false,
"outboundProtocol": "udp"
},
{
"ip": "177.234.129.52",
"port": 5060,
"outboundEnabled": false,
"inboundEnabled": true,
"outboundProtocol": "udp"
}
]
Questions:
1. Should inbound calls from 177.234.129.52 be accepted by IP allowlist since that gateway is configured with inboundEnabled: true?
2. If yes, why is Vapi returning 401 Unauthorized?
3. If Digest authentication is required for inbound to <credential_id>.sip.vapi.ai, where do we configure the inbound SIP username/password in Vapi?
4. What exact username/password should Claro use to answer this Digest challenge?
5. Is ;user=phone in the Request-URI acceptable?
We need to know whether the next step is:
* configure Claro to respond to SIP Digest, or
* fix the Vapi credential/configuration so inbound is accepted by IP allowlist.Gerónimo
06/03/2026, 3:11 PMjson
[
{
"ip": "ollsbc.tramavirtclaro.com",
"port": 5060,
"inboundEnabled": false,
"outboundEnabled": true,
"outboundProtocol": "udp"
},
{
"ip": "177.234.129.52",
"port": 5060,
"inboundEnabled": true,
"outboundEnabled": false,
"outboundProtocol": "udp"
}
]
We also inspected authentication-related properties on the credential, and there are no visible auth / authentication / username / password / inbound auth fields.
So the current blocker is:
Claro sends:
sip
INVITE sip:1140071900@6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai;user=phone SIP/2.0
Via: SIP/2.0/UDP 177.234.129.52:5060
Vapi responds:
sip
SIP/2.0 401 Unauthorized
WWW-Authenticate: Digest realm="6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai", algorithm=MD5, qop="auth"
Question:
If inbound from 177.234.129.52 is configured with inboundEnabled: true, why is Vapi still issuing a Digest challenge?
And if Digest is required, where exactly do we configure the inbound SIP username/password? The credential object does not expose any visible inbound authentication fields.
We need a definitive answer:
* Should this route work by IP allowlist?
* Or must Claro authenticate with Digest?
* If Digest is required, what exact credentials / fields should be configured and where?Chiranjeet Mishra
06/03/2026, 8:40 PMGerónimo
06/04/2026, 12:10 AMGerónimo
06/04/2026, 12:45 AMGerónimo
06/04/2026, 12:55 AM[
{
"ip": "177.234.129.52",
"port": 5060,
"inboundEnabled": true,
"outboundEnabled": false,
"outboundProtocol": "udp"
}
]
Then we ran a new inbound test to +541140071900.
Result:
- Same behavior: call disconnects.
- No call object appears in Vapi dashboard.
- This is consistent with the INVITE being rejected at SIP level before call creation.
We also checked the PCAP from Claro. The actual IP packet for the INVITE to Vapi appears to be:
IP source: 177.234.129.52
IP destination: 44.238.177.138
UDP: 5060 → 5060
This matches the SIP Via and Contact:
Via: SIP/2.0/UDP 177.234.129.52:5060
Contact:
So this does not look like a NAT/source-IP mismatch. The public source IP appears to be exactly 177.234.129.52, which is already configured as inboundEnabled=true.
We restored the split gateway configuration afterward:
[
{
"ip": "ollsbc.tramavirtclaro.com",
"port": 5060,
"outboundEnabled": true,
"inboundEnabled": false,
"outboundProtocol": "udp"
},
{
"ip": "177.234.129.52",
"port": 5060,
"outboundEnabled": false,
"inboundEnabled": true,
"outboundProtocol": "udp"
}
]
Given this, can you confirm definitively:
1. Should inbound to .sip.vapi.ai work by IP allowlist?
2. If yes, why is Vapi returning 401 to an INVITE from 177.234.129.52?
3. If no, where do we configure inbound Digest credentials in Vapi?
4. What username/password should Claro use to respond to the 401 challenge?Chiranjeet Mishra
06/04/2026, 9:25 PMGerónimo
06/05/2026, 8:50 PM6ee8d2b3-5b51-47a5-a29f-af49b7db57b5
Provider-side inbound Request-URI is now:
sip
INVITE sip:1140071900@6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai;user=phone SIP/2.0
So Claro is no longer sending to the raw Vapi SBC IP in the Request-URI.
Current gateway configuration is split by direction:
json
[
{
"ip": "ollsbc.tramavirtclaro.com",
"port": 5060,
"outboundEnabled": true,
"inboundEnabled": false,
"outboundProtocol": "udp"
},
{
"ip": "177.234.129.52",
"port": 5060,
"outboundEnabled": false,
"inboundEnabled": true,
"outboundProtocol": "udp"
}
]
So:
* inbound + outbound are not both enabled on the same gateway
* the inbound gateway is an IPv4 address, not a domain
* the outbound gateway is the Claro domain
We also checked the Claro PCAP. The actual packet for the INVITE to Vapi appears to be:
text
IP source: 177.234.129.52
IP destination: 44.238.177.138
UDP: 5060 → 5060
This matches the SIP headers:
sip
Via: SIP/2.0/UDP 177.234.129.52:5060
Contact: <sip:177.234.129.52:5060...>
But Vapi still responds:
sip
SIP/2.0 401 Unauthorized
WWW-Authenticate: Digest realm="6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai", algorithm=MD5, qop="auth"
We also temporarily tested an inbound-only credential with only:
json
[
{
"ip": "177.234.129.52",
"port": 5060,
"inboundEnabled": true,
"outboundEnabled": false,
"outboundProtocol": "udp"
}
]
Same behavior.
So the remaining question is should this inbound call from 177.234.129.52 be accepted by IP allowlist, or does Vapi require SIP Digest authentication for inbound calls to <credential_id>.sip.vapi.ai?
If Digest is required, where exactly do we configure the inbound SIP username/password, and what credentials should Claro use?Gerónimo
06/05/2026, 9:06 PMGerónimo
06/05/2026, 9:18 PM“Inbound BYO SIP Trunk - 401 Unauthorized (IP-auth not working)”
The reported pattern is the same:
- carrier is IP-auth only
- INVITE reaches Vapi
- Vapi responds 401 Unauthorized / Digest challenge
- trusted peer IP is already configured
In that thread, a support reply stated that this is a known friction point with BYO SIP trunking when the carrier is IP-auth only, and that Vapi may default to Digest challenge even when a trusted peer IP is configured, requiring a backend flag to bypass Digest for the org / trusted peer.
Our case now matches same pattern. We also tested widening the inbound gateway netmask from /32 to /24 and it did not change the behavior.
Can you please confirm whether our org/credential needs the same backend trusted-peer / IP-auth bypass flag enabled?
If yes, please enable inbound IP-auth / no-Digest challenge for:
- orgId: 959b692f-b36c-4461-8335-c959c4290cad
- credentialId: 6ee8d2b3-5b51-47a5-a29f-af49b7db57b5
- trusted peer IP: 177.234.129.52Chiranjeet Mishra
06/08/2026, 5:56 PMChiranjeet Mishra
06/08/2026, 5:57 PMGerónimo
06/08/2026, 8:57 PMGerónimo
06/09/2026, 5:10 PMChiranjeet Mishra
06/09/2026, 6:46 PMGerónimo
06/09/2026, 10:12 PM[
{
"ip": "ollsbc.tramavirtclaro.com",
"port": 5060,
"inboundEnabled": false,
"outboundEnabled": true,
"outboundProtocol": "udp",
"netmask": 32
},
{
"ip": "177.234.129.52",
"port": 5060,
"inboundEnabled": true,
"outboundEnabled": false,
"outboundProtocol": "udp",
"netmask": 32
}
]
- PCAP confirms the actual packet source appears to be:
IP source: 177.234.129.52
IP destination: 44.238.177.138
UDP: 5060 → 5060
- We also tested "177.234.129.52/24" temporarily to rule out source-IP mismatch. Same behavior.
The current behavior is:
SIP/2.0 401 Unauthorized
WWW-Authenticate: Digest realm="6ee8d2b3-5b51-47a5-a29f-af49b7db57b5.sip.vapi.ai", algorithm=MD5, qop="auth"
So the external call is reaching Vapi, but Vapi is challenging with Digest before creating a call.
Can you please confirm what exact part of the required inbound routing setup is still missing?
If this route should work by IP allowlist, why is Vapi challenging an INVITE from "177.234.129.52"?
If this route requires Digest authentication, where do we configure the inbound SIP username/password and what username should Claro use?Chiranjeet Mishra
06/10/2026, 9:18 PMGerónimo
06/11/2026, 2:16 PM