apicheats.dev elevenlabs/llms.txt Raw .md
GET

/v1/music/finetunes

ElevenLabs API

Get Music Finetunes

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
→ 203 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/music/finetunes?cursor=example-cursor&page_size=50&visibility=private&created_by=self&sort=created_at&sort_direction=desc' \  -H "xi-api-key: $ELEVENLABS_API_KEY"
Get a free ElevenLabs API key → sponsored

Parameters

Name In Type Required Description
cursor query string No Used for fetching the next page. Cursor is returned in the response.
page_size query integer No How many finetunes to return. Max 150, default 50.
visibility query string No Filter by visibility. 'private' returns private finetunes; 'workspace' returns workspace-shared finetunes; 'public' returns public finetunes, which are currently ElevenLabs curated finetunes. Omit to return all accessible finetunes.
created_by query string No Filter by creator. 'self' returns finetunes you created; 'workspace' returns finetunes created by workspace teammates; 'elevenlabs' returns ElevenLabs curated finetunes. Omit to return finetunes from all creators.
sort query string No Sort by field (created_at or name)
sort_direction query string No Sort direction (asc or desc)

Response 200 OK

{
  "finetunes": [
    {
      "id": "string",
      "name": "string",
      "tags": [
        "string"
      ],
      "primary_genre": "string",
      "model_id": "string",
      "created_at": "2026-09-03T00:00:00Z",
      "visibility": "private",
      "created_by": "self",
      "status": "pending",
      "training_progress": 0,
      "failure_reason": "audio_processing_failed"
    }
  ],
  "next_cursor": "string",
  "has_more": true
}