> ## Documentation Index
> Fetch the complete documentation index at: https://docs.artificialstudio.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# ElevenLabs Music

> Generate music from text descriptions using ElevenLabs.

|             |                     |
| ----------- | ------------------- |
| **Credits** | 1 credit per second |
| **Tool**    | `create-music`      |

### Headers

| Name            | Type   | Required | Description        |
| --------------- | ------ | -------- | ------------------ |
| `Authorization` | string | Yes      | Your API key       |
| `Content-Type`  | string | Yes      | `application/json` |

### Body

| Parameter        | Type   | Required | Description                                                                                             |
| ---------------- | ------ | -------- | ------------------------------------------------------------------------------------------------------- |
| `tool`           | string | Yes      | `create-music`                                                                                          |
| `input.model`    | string | Yes      | `elevenlabs-music`                                                                                      |
| `input.prompt`   | string | Yes      | Description of the music to generate                                                                    |
| `input.duration` | number | No       | Duration in seconds. Options: `3`, `5`, `10`, `15`, `20`, `30`, `45`, `60`, `90`, `120` (default: `30`) |

<RequestExample>
  ```bash bash theme={null}
  curl -X POST https://api.artificialstudio.ai/api/run \
    -H "Content-Type: application/json" \
    -H "Authorization: YOUR_API_KEY" \
    -d '{
      "tool": "create-music",
      "input": {
        "model": "elevenlabs-music",
        "prompt": "An upbeat electronic track with a catchy melody",
        "duration": 30
      }
    }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch('https://api.artificialstudio.ai/api/run', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'YOUR_API_KEY'
    },
    body: JSON.stringify({
      tool: 'create-music',
      input: {
        model: 'elevenlabs-music',
        prompt: 'An upbeat electronic track with a catchy melody',
        duration: 30
      }
    })
  });

  const data = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      'https://api.artificialstudio.ai/api/run',
      headers={
          'Content-Type': 'application/json',
          'Authorization': 'YOUR_API_KEY'
      },
      json={
          'tool': 'create-music',
          'input': {
              'model': 'elevenlabs-music',
              'prompt': 'An upbeat electronic track with a catchy melody',
              'duration': 30
          }
      }
  )

  data = response.json()
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "507f1f77bcf86cd799439011",
    "status": "processing",
    "tool": "create-music",
    "createdAt": "2024-01-15T10:30:00.000Z"
  }
  ```

  ```json 400 theme={null}
  {
    "message": "Missing or invalid parameters"
  }
  ```

  ```json 401 theme={null}
  {
    "message": "Invalid or missing API key"
  }
  ```

  ```json 402 theme={null}
  {
    "message": "You do not have enough credits to perform this action"
  }
  ```

  ```json 429 theme={null}
  {
    "message": "Too many API requests, please try again later"
  }
  ```
</ResponseExample>
