GET
/v1/service-accounts/{service_account_user_id}/api-keys
ElevenLabs APIGet Service Account Api Keys Route
- Base URL
- https://api.elevenlabs.io
- Auth
- xi-api-key: <ELEVENLABS_API_KEY>
- Last verified
- 2026-09-03 · upstream hash matched
Actions
Agents: curl -H "Accept: text/markdown" this URL
→ 160 tokens · Vary: Accept
→ 160 tokens · Vary: Accept
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/v1/service-accounts/service-account-user-id/api-keys' \ -H "xi-api-key: $ELEVENLABS_API_KEY"Get a free ElevenLabs API key → sponsored
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| service_account_user_id | path | string | Yes | path parameter service_account_user_id. |
Response 200 OK
{
"api-keys": [
{
"name": "string",
"hint": "string",
"key_id": "string",
"service_account_user_id": "string",
"created_at_unix": 0,
"is_disabled": false,
"permissions": [
"text_to_speech"
],
"disable_reason": "trial_ended",
"character_limit": 0,
"character_count": 0,
"hashed_xi_api_key": "string",
"allowed_ips": [
"string"
],
"third_party_disable_allowed": true,
"platform_limits": {
"credits": {
"limit": 0,
"usage": 0
},
"pvc": {
"limit": 0
},
"concurrency": {
"limit": 0
},
"dubbing_concurrency": {
"limit": 0
},
"music_concurrency": {
"limit": 0
}
}
}
]
}