voices
voices

Gets a list of all available voices for a user with search, filtering and pagination.

get/v2/voices

Request

  • Base URL
    https://api.elevenlabs.io (the document declares no server; this is the origin it was published from)
  • URL
    https://api.elevenlabs.io/v2/voices
  • Auth
    none declared

Query parameters

next_page_tokenstring nullable

The next page token to use for pagination. Returned from the previous request. Use this in combination with the has_more flag for reliable pagination.

Example:0
page_sizeinteger

How many voices to return at maximum. Can not exceed 100, defaults to 10. Page 0 may include more voices due to default voices being included.

searchstring nullable

Search term to filter voices by. Searches in name, description, labels, category.

sortstring nullable

Which field to sort by, one of 'created_at_unix' or 'name'. 'created_at_unix' may not be available for older voices.

Example:created_at_unix
sort_directionstring nullable

Which direction to sort the voices in. 'asc' or 'desc'.

Example:desc
voice_typestring nullable

Type of the voice to filter by. One of 'personal', 'community', 'default', 'workspace', 'non-default', 'non-community', 'saved'. 'non-default' is equal to all but 'default'. 'non-community' is equal to 'personal' and 'workspace' combined (excludes library copies). 'saved' is equal to non-default, but includes default voices if they have been added to a collection.

categorystring nullable

Category of the voice to filter by. One of 'premade', 'cloned', 'generated', 'professional'

fine_tuning_statestring nullable

State of the voice's fine tuning to filter by. Applicable only to professional voices clones. One of 'draft', 'not_verified', 'not_started', 'queued', 'fine_tuning', 'fine_tuned', 'failed', 'delayed'

collection_idstring nullable

Collection ID to filter voices by.

genderstring nullable

Gender used for filtering, based on the voice's 'gender' label.

Example:male
agestring nullable

Age used for filtering, based on the voice's 'age' label.

Example:young
languagestring[] nullable

Languages used for filtering, based on the voice's 'language' label. Voices matching any of the given languages are returned.

[
  "en",
  "es"
]
accentstring nullable

Accent used for filtering, based on the voice's 'accent' label.

Example:american
use_casesstring[] nullable

Use cases used for filtering, based on the voice's 'use_case' label. Voices matching any of the given use cases are returned.

[
  "conversational",
  "narrative_story"
]
min_notice_period_daysinteger nullable

Filter to voices whose sharing notice period is at least the given number of days.

Example:30
include_custom_ratesboolean nullable

Whether to include voices that have a custom sharing rate. Defaults to including them.

Example:true
include_live_moderatedboolean nullable

Whether to include voices that have live moderation enabled. Defaults to including them.

Example:true
high_qualityboolean nullable

When true, only return studio-quality voices (those whose category is 'high_quality').

Example:true
include_total_countboolean

Whether to include the total count of voices found in the response. NOTE: The total_count value is a live snapshot and may change between requests as users create, modify, or delete voices. For pagination, rely on the has_more flag instead. Only enable this when you actually need the total count (e.g., for display purposes), as it incurs a performance cost.

Example:true
voice_idsstring[] nullable

Voice IDs to lookup by. Maximum 100 voice IDs.

Headers

xi-api-keystring nullable

Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website.

Response

Successful Response

has_moreboolean required

Indicates whether there are more voices available in subsequent pages. Use this flag (and next_page_token) for reliable pagination instead of relying on total_count.

total_countinteger required

The total count of voices matching the query. This value is a live snapshot that reflects the current state of the database and may change between requests as users create, modify, or delete voices. For reliable pagination, use the has_more flag instead of relying on this value. Only request this field when you actually need the total count (e.g., for display purposes), as calculating it incurs a performance cost.

next_page_tokenstring nullable

Token to retrieve the next page of results. Pass this value to the next request to continue pagination. Null if there are no more results.

Example response

{
  "voices": [
    {
      "available_for_tiers": [
        "creator",
        "enterprise"
      ],
      "category": "professional",
      "description": "A warm, expressive voice with a touch of humor.",
      "fine_tuning": {
        "is_allowed_to_fine_tune": true,
        "manual_verification_requested": false,
        "state": {
          "eleven_multilingual_v2": "fine_tuned"
        },
        "verification_attempts_count": 2,
        "verification_failures": []
      },
      "high_quality_base_model_ids": [
        "eleven_v2_flash",
        "eleven_flash_v2",
        "eleven_turbo_v2_5",
        "eleven_multilingual_v2",
        "eleven_v2_5_flash",
        "eleven_flash_v2_5",
        "eleven_turbo_v2"
      ],
      "is_legacy": false,
      "is_mixed": false,
      "is_owner": false,
      "labels": {
        "accent": "American",
        "age": "middle-aged",
        "description": "expressive",
        "gender": "female",
        "use_case": "social media"
      },
      "name": "Rachel",
      "preview_url": "https://storage.googleapis.com/eleven-public-prod/premade/voices/9BWtsMINqrJLrRacOk9x/405766b8-1f4e-4d3c-aba1-6f25333823ec.mp3",
      "settings": {
        "similarity_boost": 1,
        "speed": 1,
        "stability": 1,
        "style": 0,
        "use_speaker_boost": true
      },
      "sharing": {
        "category": "professional",
        "cloned_by_count": 50,
        "date_unix": 1714204800,
        "description": "A female voice with a soft and friendly tone.",
        "disable_at_unix": 1714204800,
        "enabled_in_library": true,
        "featured": true,
        "financial_rewards_enabled": true,
        "free_users_allowed": true,
        "history_item_sample_id": "DCwhRBWXzGAHq8TQ4Fs18",
        "labels": {
          "accent": "American",
          "gender": "female"
        },
        "liked_by_count": 100,
        "live_moderation_enabled": true,
        "moderation_check": {
          "captcha_checks": [
            0.95,
            0.98
          ],
          "captcha_ids": [
            "captcha1",
            "captcha2"
          ],
          "date_checked_unix": 1714204800,
          "description_check": true,
          "description_value": "A female voice with a soft and friendly tone.",
          "name_check": true,
          "name_value": "Rachel",
          "sample_checks": [
            0.95,
            0.98
          ],
          "sample_ids": [
            "sample1",
            "sample2"
          ]
        },
        "name": "Rachel",
        "notice_period": 30,
        "original_voice_id": "DCwhRBWXzGAHq8TQ4Fs18",
        "public_owner_id": "DCwhRBWXzGAHq8TQ4Fs18",
        "rate": 0.05,
        "reader_app_enabled": true,
        "reader_restricted_on": [
          {
            "resource_id": "FCwhRBWXzGAHq8TQ4Fs18",
            "resource_type": "read"
          }
        ],
        "review_status": "allowed",
        "status": "enabled",
        "voice_mixing_allowed": false,
        "whitelisted_emails": [
          "example@example.com"
        ]
      },
      "verified_languages": [
        {
          "accent": "american",
          "language": "en",
          "locale": "en-US",
          "model_id": "eleven_multilingual_v2",
          "preview_url": "https://storage.googleapis.com/eleven-public-prod/premade/voices/9BWtsMINqrJLrRacOk9x/405766b8-1f4e-4d3c-aba1-6f25333823ec.mp3"
        }
      ],
      "voice_id": "21m00Tcm4TlvDq8ikWAM",
      "voice_verification": {
        "is_verified": true,
        "language": "en",
        "requires_verification": false,
        "verification_attempts": [
          {
            "accepted": true,
            "date_unix": 1714204800,
            "levenshtein_distance": 2,
            "recording": {
              "mime_type": "audio/mpeg",
              "recording_id": "CwhRBWXzGAHq8TQ4Fs17",
              "size_bytes": 1000000,
              "transcription": "Hello, how are you?",
              "upload_date_unix": 1714204800
            },
            "similarity": 0.95,
            "text": "Hello, how are you?"
          }
        ],
        "verification_attempts_count": 0,
        "verification_failures": []
      }
    }
  ]
}

Changes

    • info

      added the optional property //// to the response with the status

    • warning

      added the new declined_resubmittable enum value to the //// response property for the response status