Telnyx Voice
Overview
The Telnyx Voice integration enables your AI Agent to handle voice conversations over phone calls. By connecting your Telnyx account to Moveo, you can provide automated voice support that combines the power of AI with natural speech interaction.
This integration supports automated phone support through your Telnyx phone numbers, outbound calling through campaigns, natural voice interactions with text-to-speech and speech-to-text capabilities, and flexible configuration to optimize voice quality and recognition accuracy.
Prerequisites
Before setting up the Telnyx Voice integration, you'll need to configure both your Telnyx account and your Moveo setup.
Telnyx account
You'll need an active Telnyx account with voice capabilities enabled and sufficient balance to cover voice call costs. All Telnyx-side values are collected from the Mission Control Portal.
API key
Moveo uses a Telnyx API v2 key to place calls, control them, and provision the voice resources described in What Moveo configures in your Telnyx account. Create the key in the Telnyx portal under API Keys.
Copy the API key when it's created. Telnyx shows the value only once. The key also cannot be changed after you save the integration: to use a different key, delete the integration and create a new one.
Public key
Telnyx signs every webhook it sends to Moveo, and Moveo verifies that signature before acting on the call. Copy the public key from the Public Key page, in the same API Keys section of the Telnyx portal. Telnyx exposes a single public key for your organization.
Moveo checks your API key when you enter it, but it cannot check the public key. If the public key is wrong, the integration still saves, and Moveo then rejects every webhook Telnyx sends, so calls are never answered. Copy it exactly.
Account level
Telnyx applies limits per account level, and the lower levels are not usable for production voice. An account belongs to either the Pretrial to Verified ladder or the Level 1 and Level 2 framework, never both:
- Pretrial accounts have no access to Call Control Applications, which this integration requires. Upgrade before configuring the integration.
- Trial accounts are limited to a single outbound voice profile, restrict calls to a verified phone number, cap call duration at 10 minutes, and allow 2 concurrent outbound calls. See trial limitations.
- Paid accounts allow 5 concurrent outbound calls. Reaching 10 requires completing verification, and higher limits are available from Telnyx on request. See concurrent call limits.
- Level 1 accounts cap outbound calling at 100 calls per day and 10 calls per hour, which is not enough for a campaign. See L1 restrictions.
Below the Verified level, Telnyx prepends an automated-call announcement to machine-generated speech, so your callers hear a Telnyx fraud notice before the AI Agent. This applies to paid accounts too, not only trials. Completing verification also lifts the concurrency and destination limits.
Phone number
Connect a Telnyx number, or a number you've ported to Telnyx, to receive incoming calls and to place campaign calls. A Telnyx number can only be assigned to one connection at a time, so numbers already in use elsewhere in your Telnyx account cannot be selected in Moveo.
Without a phone number the integration cannot answer incoming calls or place campaign calls. Leave Phone set to None only if you plan to add the number later.
Moveo account
The configuration steps for connecting your AI Agent to Telnyx are handled through Moveo's platform. For a complete walkthrough of the Moveo-side setup including AI Agent selection, environment configuration, and rule creation, see the quick deployment guide.
How it works
The Telnyx Voice integration creates a bridge between callers and your Moveo AI Agent. When someone dials your Telnyx phone number, Telnyx notifies Moveo, Moveo answers the call, and Telnyx starts streaming the call audio. The speech-to-text engine converts spoken words into text, which your AI Agent processes to generate an appropriate response. That response is then converted back to natural voice through text-to-speech and streamed to the caller in real-time.
For outbound calls the flow is similar. A campaign asks Telnyx to dial the customer, and when the customer answers, the same speech processing and response cycle occurs. The conversation continues until the caller hangs up, or the AI Agent decides that the conversation has been resolved.
What Moveo configures in your Telnyx account
Once you save the integration with valid credentials, Moveo creates the Telnyx resources the AI Agent needs and keeps them in sync:
- An outbound voice profile that authorizes outbound calling.
- A voice API application whose webhook points at Moveo, so Telnyx notifies Moveo about incoming calls and call events.
- The connection resources used for call control.
- The phone number assignment that binds the number you selected to that application.
Moveo re-checks these resources periodically and removes them when you delete the integration.
Don't rename, delete, or repoint the Telnyx resources that Moveo creates. The integration stops working until the expected configuration is restored, so if one of them was changed, delete and save the integration again to have Moveo recreate it.
The outbound voice profile that Moveo creates covers the common destination countries. If your campaign targets a country that isn't enabled, contact Moveo support. Telnyx also gates many destinations behind account verification, so verify your Telnyx account before dialing outside the United States and Canada.
Reaching your AI Agent
Once the integration is configured, users can reach your AI Agent in two ways:
Inbound calls: Customers can call your Telnyx phone number directly to start a conversation with your AI Agent. This is particularly useful for customer support hotlines or IVR systems where users initiate contact.
Outbound calls: Your AI Agent can also call customers as part of a campaign. This enables proactive outreach for appointment reminders, notifications, surveys, or follow-ups, with the AI Agent handling the conversation when the customer answers.
Call termination and handover
Apart from the caller hanging up, a call ends in one of two ways, both controlled from the AI Agent's workflow. When the AI Agent resolves the conversation, the platform hangs up the call within a couple of seconds.
- Resolve: the
Resolveaction marks the conversation as completed. The call leg closes within a couple of seconds, whatever the environment's Keep alive value. - Handover: the
Handoveraction transfers the active call to a phone number or SIP URI, via a Standard transfer (Moveo stays on the call) or SIP REFER (Moveo hands off to your SIP system and drops off). Optional custom SIP headers can be attached for SIP destinations. See Voice call transfer.
To make voice calls behave predictably at the end of a conversation, apply the following checklist to every voice-enabled environment:
- Leave Keep alive as it is. It does not affect voice call termination. See Keep alive for voice integrations.
- Add a
Pauseaction of 1–2 seconds immediately before anyResolveorHandoveraction so the AI Agent's final sentence is not clipped.
Setup guide
Step 1: Prepare your Telnyx credentials
- Log in to the Mission Control Portal and open API Keys.
- On the API Keys page, click Create API Key and copy the key immediately.
- Open Public Key in the same section and copy the public key.

Keep both values handy for the next step.
Step 2: Configure the integration in Moveo
Navigate to Connections in your Moveo account, select your environment, find the Telnyx Voice integration card, and click Connect.
Step 3: Enter your Telnyx account details
Enter your credentials in the Account section of the configuration panel:
API Key: the Telnyx API v2 key from the previous step. Moveo checks the key as you type and reports whether Telnyx accepts it.
Public Key: the public key of the same Telnyx account, used to verify webhook signatures. Moveo cannot validate this one, so copy it exactly.
Once the API key is verified, a Phone field appears so you can connect a number to the AI Agent. Numbers are grouped to show what you can pick:
| Group | Meaning |
|---|---|
| Available | Telnyx numbers in your account that aren't attached to another connection |
| Verified caller ID | Numbers you own elsewhere and have verified in Telnyx, usable for outbound calls only |
| In use | Already taken, so they can't be selected: a Telnyx number attached to another connection, or a verified caller ID used by another Moveo integration |
Only numbers that are active in Telnyx are listed, up to the first 250. Select a number to let the integration answer incoming calls to it and place campaign calls from it. A verified caller ID is the exception, since it works for outbound calls only, so read Choose the caller ID for outbound calls before picking one.

Step 4: Choose the caller ID for outbound calls
Which number your customers see on outbound campaign calls depends on the kind of number you selected:
A Telnyx number is the recommended option, because it handles incoming and outgoing calls. For calls to the United States and Canada, Telnyx also signs numbers you own at the highest STIR/SHAKEN attestation level, A, which lowers the chance that carriers block or label the call.
A verified caller ID is a number you own with another provider and have registered under Numbers → Verified numbers in the Telnyx portal. Keep two constraints in mind:
- It works for outbound campaigns only. Incoming calls to that number keep routing through your original provider.
- Some destination carriers screen calls that present a local number arriving from another carrier's network, and in-country calls to mobile numbers are the common failure case. Telnyx also signs these calls at attestation B rather than A. Prefer a Telnyx number for the market you dial most.
Your own SIP gateway is an optional advanced setup. Selecting a verified caller ID reveals a SIP gateway field in the Account section: enter a host there and Moveo sends outbound calls to that gateway, so your own carrier places the call to the recipient. Enter the host without a sip: prefix, for example sbc.example.com:5060. If the gateway authenticates, enter its credentials in SIP auth username and SIP auth password.
This setup requires your own SIP infrastructure and a carrier contract that allows presenting those numbers. Contact Moveo support to plan it.