# GET /v2/voices (ElevenLabs API)
Base URL: https://api.elevenlabs.io
Auth: xi-api-key: <ELEVENLABS_API_KEY>
Last verified: 2026-09-03

> Get Voices V2

## Critical Gotchas
* Authentication uses the non-standard `xi-api-key` header, not `Authorization: Bearer`. Sending a Bearer token returns HTTP 401.
* Text-to-speech responses are raw binary audio, not JSON. Write the body to a file (`--output speech.mp3`) rather than parsing it.

## cURL
curl -X GET 'https://api.elevenlabs.io/v2/voices?next_page_token=example-next-page-token&page_size=10&search=example-search&sort=example-sort&sort_direction=example-sort-direction&voice_type=example-voice-type&category=example-category&fine_tuning_state=example-fine-tuning-state&collection_id=collection-id&gender=example-gender&age=example-age&language=example&accent=example-accent&use_cases=example&min_notice_period_days=10&include_custom_rates=true&include_live_moderated=true&high_quality=true&include_total_count=true&voice_ids=example' \
  -H "xi-api-key: $ELEVENLABS_API_KEY"

## Parameters
| Name | In | Type | Required | Description |
| :--- | :--- | :--- | :--- | :--- |
| next_page_token | query | string | No | The next page token to use for pagina... |
| page_size | query | integer | No | How many voices to return at maximum.... |
| search | query | string | No | Search term to filter voices by. Sear... |

## Response (200 OK)
{"voices":[{}],"has_more":true}

---
Need an API key? Get one at https://elevenlabs.io/app/sign-up