mammoth-engine-9804
02/27/2026, 9:30 PMtall-airline-16756
02/27/2026, 9:31 PMtall-airline-16756
02/27/2026, 9:31 PMsip_trunk_id you’re sending in the CreateSIPParticipantRequest matches the outbound trunk ID shown on the dashboard (IDs are exact and case-sensitive).
• Make sure the trunk you’re using is an outbound trunk. Inbound-only trunks cannot be used to place outbound calls.
• Verify the trunk is fully configured with the provider settings required for outbound dialing (e.g., SIP URI/endpoint, auth_username, auth_password if required).
• Ensure your API credentials (LIVEKIT_API_KEY / LIVEKIT_API_SECRET) and the LiveKit project/environment you’re calling are the same project where the trunk exists (production vs staging or a different project would cause a mismatch).
• If you’re calling programmatically, list trunks to confirm the trunk is returned by the API (for example, use lkapi.sip.list_sip_trunk() or the SDK equivalent) and inspect the returned trunk IDs and types.
If you’ve already verified those and it’s still failing, please share the following so I can dig deeper:
1. The sip_trunk_id you’re passing (you can redact parts if you prefer; just include the ID prefix like ST_xxx).
2. Whether the trunk is configured as outbound (yes/no).
3. The environment/project you’re authenticating with (production/staging) or confirm the API key’s project if known.
4. A sanitized copy of the request that triggers the error (headers and secrets removed) and the full error log line if there’s more context.
With those details I can point to the exact cause or give specific next steps. If you’d like, I can also walk you through how to list trunks from your setup to confirm which trunk IDs are visible to your API credentials.
Sources: Agents telephony integration | LiveKit Documentation | sip | livekit/livekit_composite | DeepWiki | Outbound Calling Script | LiveKit Documentation | Making calls overview | LiveKit Documentation | Python SDKs | livekit/livekit_composite | DeepWikimammoth-engine-9804
02/27/2026, 9:34 PMtall-airline-16756
02/27/2026, 9:35 PM<http://sjc.pstn.twilio.com|sjc.pstn.twilio.com>
• Telnyx: <http://sip.telnyx.com|sip.telnyx.com>
• Plivo: <http://media.plivo.com|media.plivo.com>
How to find it:
1. Sign in to your SIP provider’s portal.
2. Open the trunk or outbound calling settings.
3. Copy the SIP hostname / outbound SIP server (a domain or IP) and paste it into LiveKit’s Address field.
Additional tips:
• If your provider requires authentication, ensure you also fill auth_username / auth_password in the trunk settings.
• Make sure any firewalls or network rules allow traffic between LiveKit and that SIP endpoint.
• Use the provider’s recommended SIP port (usually 5060 for UDP/TCP or 5061 for TLS) if the dashboard allows specifying a port; otherwise the default is used.
If you tell me which SIP provider you’re using, I can point to the exact hostname to use or where to find it in that provider’s dashboard.
Sources: sip | livekit/livekit_composite | DeepWikimammoth-engine-9804
02/27/2026, 9:53 PMtall-airline-16756
02/27/2026, 9:53 PMabc123.sip.livekit.cloud) as the Address when creating an outbound trunk.
You should not use the LiveKit SIP URL as the outbound trunk Address. The Address field must point to the external SIP provider endpoint (the hostname or IP) that will actually carry your outbound calls. LiveKit’s *.sip.livekit.cloud hostnames are used for inbound routing into your LiveKit project (receiving calls to LiveKit), not as the destination for outbound INVITEs.
What to put in the Address field
• The SIP hostname or IP provided by your SIP trunk vendor (the provider you want LiveKit to send outbound calls through). Examples:
◦ Twilio: <http://sjc.pstn.twilio.com|sjc.pstn.twilio.com>
◦ Telnyx: <http://sip.telnyx.com|sip.telnyx.com>
◦ Plivo: <http://media.plivo.com|media.plivo.com>
Why not use *.sip.livekit.cloud
• *.sip.livekit.cloud is for inbound reachability into LiveKit (so carriers or providers send calls INTO LiveKit). It does not serve as the upstream outbound SIP gateway where LiveKit should route outgoing calls.
If you want LiveKit to place outbound calls through a carrier, point the trunk Address to that carrier’s outbound SIP server and configure any required auth (username/password), port, and transport type.
If you tell me which SIP provider you plan to use, I can point to the exact hostname to enter and any provider-specific settings you should include.