Discussions

Ask a Question
Back to all

Custom TTS Integration (ElevenLabs) — "Failed to bind ElevenLabs key" error (code 5000)

Hi,

I'm trying to integrate a custom ElevenLabs voice into my Android app using the FULL mode session, following the https://docs.liveavatar.com/docs/custom-tts-integration.

Step 1 — Register the secret

I call POST /v1/secrets with the following request:

POST https://api.liveavatar.com/v1/secrets
Headers:
X-API-KEY: <my_liveavatar_api_key>
Content-Type: application/json

Body:
{
"secret_type": "ELEVENLABS_API_KEY",
"secret_value": "<my_elevenlabs_api_key>",
"secret_name": "MyApp ElevenLabs Key"
}

Response (HTTP 500):
{
"code": 5000,
"data": null,
"message": "Failed to bind ElevenLabs key"
}

What I've verified:

  • The ElevenLabs API key is valid — calling GET https://api.elevenlabs.io/v1/user with xi-api-key returns a 200 with user data

  • The key has all permissions enabled (including user_read, TTS, and everything else available in the dashboard)

  • The device has internet connectivity (other API calls work fine)

  • The LiveAvatar API key works correctly for session creation (POST /v1/sessions/token)

    My question:

  1. Does the custom TTS integration require a paid ElevenLabs plan? My account is currently on the free tier ("tier": "free").
  2. Is there anything wrong with the request format above?
  3. What exactly does "Failed to bind ElevenLabs key" mean — is LiveAvatar making a specific call to ElevenLabs to validate the key, and if so, which endpoint?

Any help is appreciated. Thank you!