avatar_settings. The assistant keeps its instructions, voice, tools and transcription configuration. Each WebRTC conversation opts into the saved avatar by offering a video track that can receive it; saving an avatar does not turn every conversation into a video session.
Voice compatibility
Telnyx avatars support Telnyx TTS and GPT Live speech-to-speech. For GPT Live, pair a supported GPT Live model with anOpenAILive. voice and an OpenAI integration secret; see GPT Live voice assistants.
When switching an existing assistant to GPT Live, update model and voice_settings.voice together. For example, pair openai/gpt-live-1 with OpenAILive.marin. Keep avatar_settings.provider set to telnyx and choose a stock or organization-owned custom avatar. The avatar rendering model remains separate from the GPT Live speaking model.
ElevenLabs and other third-party TTS providers are not supported with Telnyx avatars, including Portal avatar tests.
Configure the voice through voice_settings; avatar_settings.provider selects the avatar provider, not the TTS provider.
Pricing
During October 2026, Telnyx avatars are included in AI Assistant call pricing at no additional charge. Starting November 1, 2026, avatar usage costs $0.08 USD per minute, in addition to standard AI Assistant call charges. The same pricing applies to avatar tests in the Portal.Find available stock avatars
Use List avatars withfilter[avatar_type]=stock to discover the current stock catalog:
data includes its id, name, avatar_type, and preview image_url. Follow meta.total_pages to load all available stock avatars, and use the chosen entry’s id as avatar_settings.avatar_id. Discover available IDs through the API instead of maintaining a fixed list of avatar names or IDs in your application.
Create and use a custom avatar
Stock avatars are provided by Telnyx and are read-only. Custom avatars belong to the organization that uploads them and can be reused by its assistants. Creating an avatar stores the image; it does not change an assistant or select a rendering model, background, or voice.Prepare the image
Create a custom avatar enforces these upload requirements:
For better rendering results:
- Use a 16:9 landscape image, preferably 1920 × 1080 pixels and at least 1280 × 720 pixels.
- Show one centered, front-facing person from the shoulders up. Leave space around the full head and hair.
- Use a sharp, evenly lit image with unobstructed eyes and mouth. Avoid profile views, tight head crops, and group photos.
- Use a transparent PNG or WebP when combining the avatar with a selectable background.
Create and assign through the API
Upload the image and name asmultipart/form-data to POST /v2/ai/avatars. Use image_file for the file field. Let cURL set the multipart boundary.
data. Copy data.id; use the ID, not data.image_url, in the assistant configuration. Image URLs are for previews and may expire.
Send the following body to Update an assistant, POST /v2/ai/assistants/{assistant_id}, replacing the example avatar_id with the returned ID:
Create and assign in the Portal
- Open AI Suite → Avatars (Beta) in the sidebar, below Tools and above Missions.
- In Custom, choose Create avatar, enter a name, and drop or choose an image. Submit with Create avatar.
- Open the assistant’s Avatar tab, enable avatars, and select the custom avatar. Choose the rendering model and background, then save the assistant.
- Use Call your assistant → With avatar (BETA) to check the result. The Stock tab on the Avatars page is a read-only catalog.
List and manage avatars
List avatars,GET /v2/ai/avatars, returns stock avatars and custom avatars belonging to the authenticated organization. To list only custom avatars:
meta.total_pages when loading the full catalog. Filter with filter[avatar_type]=stock for stock avatars. Use image_url to display previews; list again or retrieve the avatar to refresh an expired URL. Store the avatar ID as the durable reference. Stock avatars may return a recommended Telnyx voice in suggested_voice_id. An omitted field or empty string means no recommendation is available; custom avatars have no suggested voice.
Update a custom avatar, PATCH /v2/ai/avatars/{avatar_id}, changes its name:
Configure an avatar
Send the following request body to Update an assistant,POST /v2/ai/assistants/{assistant_id}. The same avatar_settings object is accepted when creating an assistant.
avatar_settings.model is required. It selects the avatar rendering model, independently of the assistant’s top-level LLM model and voice_settings.
The Portal defaults new avatar configurations to
studio.
The avatar’s appearance and voice are configured separately. Select the voice through voice_settings. The Portal may offer a suggested Telnyx Ultra voice for stock avatars. Custom avatars have no suggested voice; selecting an avatar alone does not change the voice.
Start an avatar conversation
Avatar conversations run over WebRTC. The browser offers a video m-line that can receive VP8 alongside its microphone; the avatar’s synchronized video and voice arrive on the call’s video and audio tracks, and conversation events on theoai-events data channel.
- Configure the assistant’s
avatar_settingsand a compatible voice. - Create a WebRTC call whose offer includes a
recvonly(orsendrecv, to also send the camera) VP8 video transceiver. - Play the received video and audio tracks. The data channel reports
avatar.updatedwithstarting, thenactive.
avatar.updated reports unavailable and the conversation continues with the assistant’s voice on the same audio track. See Show an avatar for every state.
Test and choose a conversation mode
For an assistant with saved avatar settings, Call your assistant in the Portal offers With avatar (BETA) or Without avatar. The avatar option is selected by default. The voice-only option uses the existing voice call test. For With avatar (BETA), optional dynamic-variable test values apply to that conversation only. Nonempty test values override the same-named variables; blank fields leave saved defaults or webhook values in effect. Testing does not update the assistant configuration. Avatar tests follow the avatar pricing above. Phone-call tools such as transfer and DTMF are not supported in avatar conversations. PSTN calls remain voice-only. In a WebRTC client, omit the video m-line, or create the call with?avatar=false, to start a conversation without the avatar while keeping the saved avatar configuration.
For a local demo, enable Record locally in the call setup controls. After the call, preview and download the recording in the same browser tab before closing or refreshing it. This local recording is separate from the uploaded avatar image.
Add camera input with vision
Avatar video shows the assistant; thevision tool lets the assistant inspect images supplied by the user. Attach the tool and configure either a vision-capable base model or an enabled vision-capable delegation model. For S2S assistants, the delegation model can inspect the frames while the speaking model handles the conversation.
See Vision model support for configuration requirements. Over WebRTC, send the camera track on the same video m-line as the avatar; receiving an avatar alone does not provide camera input.
Remove the saved avatar
Update the assistant with:avatar_settings from an update leaves the current configuration unchanged.