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

# Стемы и добавление дорожек

> stems/stemsAll разделение; addStem/addVocals/addInstrumental генерация дорожек

```
POST https://toapis.com/v1/music/generations/{operation}
```

<ParamField body="model" type="string" required>Фиксированное `"suno"`</ParamField>
<ParamField body="task_id" type="string" required>ID исходной задачи</ParamField>
<ParamField body="audio_index" type="number">Номер трека</ParamField>

## Разделение стемов

| operation | Описание | Цена |
| - | - | - |
| `stems` | Вокал / минус | \$0.10 |
| `stemsAll` | Полное разделение по инструментам | \$0.24 |

Каждая дорожка возвращается как `audio_url` в `result.music[]`, зеркалится на CDN.

```bash theme={null}
curl --request POST \
  --url https://toapis.com/v1/music/generations/stemsAll \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{"model":"suno","task_id":"tsk_aud_xxx"}'
```

## Добавление дорожек(по $0.05, Max $0.10)

<Warning>`task_id` для `addVocals`/`addInstrumental`/`addStem` должен быть продуктом `uploadTask`.</Warning>

| operation | Описание |
| - | - |
| `addVocals` | Сгенерировать вокал на загрузке |
| `addInstrumental` | Сгенерировать минус на загрузке |
| `addStem` | Добавить одну инструментальную дорожку |

<ParamField body="gpt_description" type="string">Целевое описание(обязательно при custom=false)</ParamField>

<ParamField body="custom" type="boolean" />

<ParamField body="prompt" type="string">Слова при custom=true</ParamField>
<ParamField body="max_mode" type="boolean">Max-тариф</ParamField>

```bash theme={null}
curl --request POST \
  --url https://toapis.com/v1/music/generations/addVocals \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{"model":"suno","task_id":"tsk_aud_upload_task","gpt_description":"add dreamy female vocals"}'
```

## Response

<ResponseField name="task_id" type="string">ID новой задачи</ResponseField>
<ResponseField name="status" type="string">`submitted`</ResponseField>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.