Skip to content
Telnyx integration

Connect a Telnyx SIP trunk to Wixzel Voice

To run an AI voice agent on a Telnyx number, connect Telnyx SIP Connections to Wixzel Voice: add the platform_ip your trunk returns to the authorised addresses on an IP-authenticated SIP Connection so outbound calls are accepted, and send inbound calls to its origination_uri so inbound calls arrive. Telnyx keeps billing you for the line at your rates; Wixzel Voice bills the voice engine per second from a prepaid balance.

Last updated

Published

Telnyx is the carrier; Wixzel Voice is the voice AI API that runs the agent on top of it. They work together over standard SIP. Telnyx is a trademark of its owner, and Wixzel Voice is not affiliated with or endorsed by Telnyx.

What do you need before you start?

  • A Telnyx account with SIP Connections, and the host and credentials of the trunk.
  • A phone number you own at Telnyx, attached to that trunk. Wixzel Voice does not sell or port numbers.
  • A Wixzel Voice API key and some prepaid credit. The minimum top-up is $5; there is no free tier.
  • Wixzel Voice is in alpha and runs 5 concurrent calls per account by default, raised on request; web and app sessions count toward the same limit.

How do you create the Telnyx trunk in Wixzel Voice?

The SIP address Mission Control shows for your connection. The setup guide does not print a Telnyx host, so copy it from the console rather than from here.

cURL
curl https://api.voice.wixzel.com/v1/sip-trunks \
  -H "Authorization: Bearer $WIXZEL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Telnyx",
    "host": "<the SIP host Telnyx shows for the connection>",
    "transport": "udp"
  }'

Add username and password to the body if Telnyx authenticates by credentials rather than IP. The password is encrypted at rest and never returned by the API again. The response carries platform_ip and origination_uri: the two values the next step needs.

What do you set at Telnyx?

SettingWhat Telnyx calls itValue
Allowlist calls from Wixzel Voiceauthorised addresses on an IP-authenticated SIP Connection95.216.218.102
Send inbound calls to Wixzel VoiceThe destination for inbound calls; the setup steps name the fieldsip:95.216.218.102:5090

Both values are today's: read platform_ip and origination_uri from GET /v1/sip-trunks rather than copying them from a page. Then register each number on the trunk with POST /v1/phone-numbers and give it an inbound_agent_id, so an agent answers it. The AI phone call API walkthrough has those requests, and the full setup steps for Telnyx go through the console field by field.

What goes wrong on Telnyx?

  • A transport mismatch looks like the carrier ignoring you. Keep the connection and the trunk on the same transport; UDP on both is the default.
  • Telnyx expects the leading +, so leave send_plus at its default of true.

Why did a call over Telnyx not connect?

The failure code most often seen on Telnyx:

failure_codeCarrier saidWhat it meansWhat to do
102408The carrier did not respond in time.Verify the trunk host and port, and that the carrier accepts SIP from platform_ip. If the carrier shows the call as received but never answered, set send_plus to false.

A call Telnyx refused has status: "failed", a failure_code (the Q.850 cause from the carrier) and a failure_reason saying what to do, and it costs nothing. Every failure code, every refusal and how to debug a trunk are on the integrations page.

What does an AI call over Telnyx cost?

Telnyx bills you for the line at your rates; Wixzel Voice bills only the voice engine, per second of actual usage, from $0.0466 per connected minute on gemini-live to $0.1851 on deepgram-agent. Every engine's price.

Frequently asked questions

Which Telnyx connection type works with Wixzel Voice?
IP authentication. Create the SIP Connection in Mission Control with the connection type set to IP authentication rather than credentials or FQDN registration, and add the platform_ip your Wixzel Voice trunk returns as an authorised address.
Why do my Telnyx calls not connect after I changed the transport?
Telnyx delivers over UDP by default. If the Wixzel Voice trunk's transport is tcp or tls, the SIP Transport Protocol on the Telnyx connection has to be changed to match, or the two ends will not agree.

Other carriers