Skip to content
Lumean API

Descriptions are in English

The section interface is translated into your language, but descriptions of operations, schemas and errors exist only in Russian and English — the English version is shown here.
GET/voices/elevenlabs/library

ElevenLabs Voice Library

A proxied view of the public ElevenLabs voice library — the pool of voices that can be used for TTS beyond your own.

Filters are passed through to the provider, so their spelling is the provider's (american, young, narrative_story). Note that pages are numbered from zero.

The provider is external: on an outage the endpoint answers 503, and retrying later is the right response.

Required key permission: voices.read.

On this page(3)

Parameters

The inputs live inside the request line: fill in a value and you get a ready URL. Below are the type, whether it is required and the allowed values of every parameter.

GEThttps://api.lumean.app/api/public/voices/elevenlabs/library
  • stringin queryoptional≤ 255 caracteres

    Sort method of the ElevenLabs library, passed through to the provider as-is.

  • stringin queryoptional≤ 255 caracteres

    Keep only voices supporting the given languages. ISO-639-1 codes, comma-separated.

  • stringin queryoptional≤ 255 caracteres

    Voice accent (american, british, …).

  • stringin queryoptional≤ 255 caracteres

    Voice gender.

    Allowed values
  • stringin queryoptional≤ 255 caracteres

    Voice age group.

    Allowed values
  • integerin queryoptional≥ 0

    Page number. Note: external provider catalogues are numbered from zero.

  • integerin queryoptional1..50

    Page size. Defaults to 30, maximum 50.

  • stringin queryoptional≤ 255 caracteres

    Use cases (narrative_story, social_media, …), comma-separated.

Possible responses

200

Success. The payload is in data.

Body example
{
  "success": true,
  "message": "Success",
  "data": {
    "voices": [
      {
        "public_owner_id": "4c9a8e2f6b1d4a3c9f7e0b2d5a8c1f3e6b9d0a2c4e7f1b3d5a8c0e2f4b6d9a1c",
        "voice_id": "EXAVITQu4vr4xnSDxMaL",
        "name": "Bella Storyteller",
        "accent": "american",
        "gender": "female",
        "age": "young",
        "descriptive": "calm",
        "use_case": "narration",
        "category": "professional",
        "language": "en",
        "description": "Warm, calm narrator voice ideal for long-form audiobooks and meditation content.",
        "preview_url": "https://api.lumean.app/api/voice-preview?u=eyJpdiI6IjRjOWE4ZTJmNmIxZDRhM2MiLCJ2YWx1ZSI6ImZha2UifQ%3D%3D&signature=3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d",
        "usage_character_count_1y": 18234567,
        "usage_character_count_7d": 154302,
        "cloned_by_count": 3120,
        "free_users_allowed": true,
        "notice_period": 0,
        "instagram_username": null,
        "twitter_username": null,
        "youtube_username": null,
        "tiktok_username": null,
        "image_url": null,
        "is_added_by_user": false,
        "date_unix": 1748851200
      },
      {
        "public_owner_id": "9a1c3e5f7b0d2a4c6e8f1b3d5a7c9e0f2b4d6a8c0e2f4b6d8a0c2e4f6b8d0a2c",
        "voice_id": "yoZ06aMxZJJ28mfd3POQ",
        "name": "Sam Ad Voice",
        "accent": "british",
        "gender": "male",
        "age": "middle_aged",
        "descriptive": "energetic",
        "use_case": "advertisement",
        "category": "professional",
        "language": "en",
        "description": "Punchy, upbeat voice for commercials and promotional reads.",
        "preview_url": "https://api.lumean.app/api/voice-preview?u=eyJpdiI6IjlhMWMzZTVmN2IwZDJhNGMiLCJ2YWx1ZSI6ImZha2UifQ%3D%3D&signature=5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f",
        "usage_character_count_1y": 4021553,
        "usage_character_count_7d": 38210,
        "cloned_by_count": 512,
        "free_users_allowed": false,
        "notice_period": 0,
        "instagram_username": null,
        "twitter_username": null,
        "youtube_username": null,
        "tiktok_username": null,
        "image_url": null,
        "is_added_by_user": false,
        "date_unix": 1751328000
      }
    ],
    "total": 2,
    "page": 0,
    "page_size": 30,
    "has_more": false
  }
}
Response fields
successrequired

Success flag. Branch on the HTTP status code instead: any 2xx response carries true here, while an error comes back in a different shape that need not contain this field at all.

boolean
messagerequired

A human-readable note in the account language. Fine to show to a user; do not parse it — the wording changes without notice and is not an error code.

string
datarequired

The response payload.

object
voicesrequired

Voices from the library. The object is passed through from the provider as is, so the provider defines the key set and may change it. The one you need is voice_id: put it into an elevenlabs template’s config.voice_id.

array<object>
array item
*optional
claves arbitrarias
any
totalrequired

How many voices came back on this page.

integer
pagerequired

Page number, zero-based, echoing the request.

integer
page_sizerequired

Page size the server applied.

integer
has_morerequired

Whether another page exists. Rely on this flag rather than total, which counts only the current batch.

boolean
401

The key is missing, unknown, disabled or expired.

Analyse this response
Body example
{
  "success": false,
  "message": "API key is missing. Provide it in the X-API-KEY header.",
  "data": null
}
Response fields
successrequired

Always false in error responses.

boolean
messagerequired

Error text in the key's language (set through the X-Locale header).

string
datarequired

Always null when the request is rejected before processing.

nullable
null
403

The key lacks the required permission, or the object belongs to another user.

Analyse this response
Body example
{
  "success": false,
  "message": "This API key does not have permission to perform this action."
}
Response fields
successrequired

Always false in error responses.

boolean
messagerequired

Error text in the key's language (set through the X-Locale header).

string
422

Validation error. Offending fields are listed in errors.

Analyse this response
Body example
{
  "message": "string",
  "errors": {}
}
Response fields
messagerequired

Errors overview.

string
errorsrequired

A detailed description of each field that failed validation.

object
*optional
claves arbitrarias
array<string>
503

The external provider is temporarily unavailable. Retry later.

Body example
{
  "success": false,
  "message": "The voice provider is temporarily unavailable. Please try again later."
}
Response fields
successrequired

Always false in error responses.

boolean
messagerequired

Error text in the key's language (set through the X-Locale header).

string

Feed this page to an AI

Open .mdllm.md

spec 0.0.1