Outbound calls fail with: "INVITE failed: sip status: 404: No trunk found"


Hi team, I’m using LiveKit Agents + LiveKit Telephony for an AI voice agent.

Working:

  • Purchased US number from LiveKit

  • Inbound trunk setup

  • Dispatch rules setup

  • Agent worker running

  • Inbound calls work

Problem:

Call stays in dialing and never reaches the phone.

LiveKit call logs show:

error: INVITE failed: sip status: 404: No trunk found
callStatus: SCS_ERROR

My outbound trunk config currently has:

  • Direction: Outbound

  • Number:

  • Address: xxxxxxxxxx.sip.livekit.cloud

Question:

Since I’m using a LiveKit-managed phone number, what should the outbound trunk configuration be?

  • Should Address be blank?

  • Should I use LiveKit SIP URI there?

  • Do I need any additional outbound config?

Inbound works fine — only outbound is failing with 404 No trunk found.

I was going to look into why this is happening but there is not really anything in that message that helps me identify what the issue may be.

SIP 404 The number is not found. Check the number, make sure the SIP provider is using the SIP URI and not just the IP address, etc.

If you have a packet capture, I may be able to give a more concrete idea of how it is misconfigured. Basically, to give a concrete answer, I need something I can use to look up the logs to see why it failed.

I think I found your account and see the 404. The number dialed is not the number in your inbound trunk. Also this is the first time I see someone using from start like *@domainThis may work but I’ve never tried it.

If you call the number that is set on your inbound trunk it should work, or at least get past the 404 error.

A 404 “No trunk found” on outbound almost always means the number you’re dialing doesn’t match what’s registered on the trunk.

Two things to check:

  1. The outbound trunk address should be your SIP provider’s termination URI not your LiveKit SIP host. Common mistake is putting the LiveKit cloud address there instead of the carrier’s outbound termination endpoint.

  2. Run this to verify your trunk is actually registered: lk sip outbound list

If the trunk shows up there, the next check is whether the number format matches exactly E.164 format
(+1XXXXXXXXXX) with no spaces or dashes.

We hit this exact issue on a production deployment. Inbound worked fine because the dispatch rules were correct, but outbound was pointing at the wrong address. Once we set the trunk address to the carrier’s termination URI and matched the number format, the 404 disappeared.

What does your outbound trunk address look like currently?