# Suno

Музыка с вокалом по описанию или по своему тексту

## Обзор

- **Modality:** Музыка
- **Modes:** По описанию, Свой текст, По музыкальному референсу, Кавер своего аудио
- **Страница модели:** https://iskragen.ru/models/suno
- **`modelSlug` для API:** `suno-v5`, `suno-audio-reference`, `suno-upload-cover`

## Стоимость

- Базовая цена: 12–12 ₽ за `track`

| Операция | Цена | Примечание |
| --- | --- | --- |
| Сгенерировать музыку | 12 ₽ |  |

**Включено:**
- До 6 минут
- Вокал и инструментальная версия

## Сценарии и параметры

### По описанию

- Mode ID: `text-to-music`
- `modelSlug` для API: `suno-v5`

| Поле | Тип | По умолчанию | Диапазон / опции | Описание |
| --- | --- | --- | --- | --- |
| `model` | select | `V6` | `V6`, `V6_WILD`, `V6_MINI` | V6 — ровный предсказуемый результат, Wild — смелее и неожиданнее, Mini — быстрее. |
| `instrumental` | toggle | false | true / false | Генерировать только инструментальную версию, без голоса. |
| `styleWeight` | slider | — | 0–1, шаг 0.01 | Насколько строго держаться указанного стиля. Не трогали — решает модель. |
| `weirdnessConstraint` | slider | — | 0–1, шаг 0.01 | Насколько модель отходит от привычного звучания. Не трогали — решает модель. |
| `audioWeight` | slider | — | 0–1, шаг 0.01 | Баланс между звучанием и остальными признаками. Не трогали — решает модель. |
| `output_format` | select | `mp3` | `mp3`, `wav` | MP3 для прослушивания. WAV без сжатия — для монтажа и обработки. Доплата за два трека; за недоступный WAV вернём его долю. |

### Свой текст

- Mode ID: `lyrics-to-music`
- `modelSlug` для API: `suno-v5`

| Поле | Тип | По умолчанию | Диапазон / опции | Описание |
| --- | --- | --- | --- | --- |
| `model` | select | `V6` | `V6`, `V6_WILD`, `V6_MINI` | V6 — ровный предсказуемый результат, Wild — смелее и неожиданнее, Mini — быстрее. |
| `instrumental` | toggle | false | true / false | Генерировать только инструментальную версию, без голоса. |
| `styleWeight` | slider | — | 0–1, шаг 0.01 | Насколько строго держаться указанного стиля. Не трогали — решает модель. |
| `weirdnessConstraint` | slider | — | 0–1, шаг 0.01 | Насколько модель отходит от привычного звучания. Не трогали — решает модель. |
| `audioWeight` | slider | — | 0–1, шаг 0.01 | Баланс между звучанием и остальными признаками. Не трогали — решает модель. |
| `style` | text | — | до 1000 символов |  |
| `title` | text | — | до 80 символов |  |
| `vocalGender` | select | `auto` | `auto`, `m`, `f` |  |
| `negativeTags` | text | — | до 200 символов | Что не должно звучать: стили, инструменты |
| `duration` | number | — | 10–360 | Длина трека в секундах, от 10 до 360. Пусто — длину выбирает модель. Цена не зависит от длительности. |
| `output_format` | select | `mp3` | `mp3`, `wav` | MP3 для прослушивания. WAV без сжатия — для монтажа и обработки. Доплата за два трека; за недоступный WAV вернём его долю. |

### По музыкальному референсу

- Mode ID: `audio-reference-to-music`
- `modelSlug` для API: `suno-audio-reference`

| Поле | Тип | По умолчанию | Диапазон / опции | Описание |
| --- | --- | --- | --- | --- |
| `model` | select | `V6` | `V6`, `V6_WILD`, `V6_MINI` | V6 — ровный предсказуемый результат, Wild — смелее и неожиданнее, Mini — быстрее. |
| `instrumental` | toggle | false | true / false | Генерировать только инструментальную версию, без голоса. |
| `styleWeight` | slider | — | 0–1, шаг 0.01 | Насколько строго держаться указанного стиля. Не трогали — решает модель. |
| `weirdnessConstraint` | slider | — | 0–1, шаг 0.01 | Насколько модель отходит от привычного звучания. Не трогали — решает модель. |
| `audioWeight` | slider | — | 0–1, шаг 0.01 | Баланс между звучанием и остальными признаками. Не трогали — решает модель. |
| `source_audio` | file | — | audio, до 50 МБ | MP3 или WAV, от 6 секунд до 30 минут |
| `suno_version` | select | `V6` | `V6`, `V6_MINI`, `V6_WILD` |  |
| `instrumental` | toggle | false | true / false |  |
| `style` | text | — | до 1000 символов |  |
| `lyrics` | text | — | до 5000 символов | Необязательно. Пусто — текст выбирает модель. |
| `negative_tags` | text | — | строка | Стили и инструменты, которые не должны звучать |
| `output_format` | select | `mp3` | `mp3`, `wav` | MP3 для прослушивания. WAV без сжатия — для монтажа и обработки. Доплата за два трека; за недоступный WAV вернём его долю. |

### Кавер своего аудио

- Mode ID: `audio-cover-to-music`
- `modelSlug` для API: `suno-upload-cover`

| Поле | Тип | По умолчанию | Диапазон / опции | Описание |
| --- | --- | --- | --- | --- |
| `model` | select | `V6` | `V6`, `V6_WILD`, `V6_MINI` | V6 — ровный предсказуемый результат, Wild — смелее и неожиданнее, Mini — быстрее. |
| `instrumental` | toggle | false | true / false | Генерировать только инструментальную версию, без голоса. |
| `styleWeight` | slider | — | 0–1, шаг 0.01 | Насколько строго держаться указанного стиля. Не трогали — решает модель. |
| `weirdnessConstraint` | slider | — | 0–1, шаг 0.01 | Насколько модель отходит от привычного звучания. Не трогали — решает модель. |
| `audioWeight` | slider | — | 0–1, шаг 0.01 | Баланс между звучанием и остальными признаками. Не трогали — решает модель. |
| `source_audio` | file | — | audio, до 50 МБ |  |
| `suno_version` | select | `V6` | `V6`, `V6_MINI`, `V6_WILD` |  |
| `instrumental` | toggle | false | true / false |  |
| `style` | text | — | до 1000 символов |  |
| `lyrics` | text | — | до 5000 символов | Необязательно. Пусто — текст выбирает модель. |
| `negative_tags` | text | — | строка | Стили и инструменты, которые не должны звучать |
| `title` | text | — | до 80 символов |  |
| `duration` | number | — | 10–360 | Необязательно: от 10 до 360 секунд |
| `vocal_gender` | select | `auto` | `auto`, `m`, `f` |  |
| `style_weight` | slider | — | 0–1, шаг 0.01 |  |
| `weirdness_constraint` | slider | — | 0–1, шаг 0.01 |  |
| `audio_weight` | slider | — | 0–1, шаг 0.01 |  |
| `variety` | select | `1` | `0`, `1`, `2`, `3`, `4` |  |
| `output_format` | select | `mp3` | `mp3`, `wav` | MP3 для прослушивания. WAV без сжатия — для монтажа и обработки. Доплата за два трека; за недоступный WAV вернём его долю. |

## Использование через API

Полный цикл интеграции: API-ключ → создание генерации → polling → результат. Базовый URL: `https://api.iskragen.ru/v1`.

### 1. Получите API-ключ

Личный кабинет → «API-ключи» (https://iskragen.ru/api-keys). Значение показывается один раз. Ключ передаётся в заголовке каждого запроса:

```
Authorization: Bearer iskr_live_<secret>
```

### 2. Создайте генерацию

```bash
curl -X POST https://api.iskragen.ru/v1/generations \
  -H "Authorization: Bearer $ISKRAGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "modelSlug": "suno-v5",
  "prompt": "Опишите, что вы хотите сгенерировать",
  "params": {
    "model": "V6",
    "instrumental": false
  }
}'
```

У каждого сценария свой `modelSlug` — возьмите значение из раздела «Сценарии и параметры» выше.

Генерация асинхронная: ответ — `202 Accepted`, задача ставится в очередь, стоимость удерживается с баланса.

```json
{
  "id": "0192f0c4-8a1e-7b3d-9f21-2c5e6a4b7d90",
  "status": "PENDING",
  "costRub": 12
}
```

### 3. Дождитесь результата (polling)

Опрашивайте `GET /v1/generations/{id}` раз в ~2 секунды, пока `status` не станет `SUCCEEDED` или `FAILED`:

```bash
curl https://api.iskragen.ru/v1/generations/$GENERATION_ID \
  -H "Authorization: Bearer $ISKRAGEN_API_KEY"
```

```json
{
  "id": "0192f0c4-8a1e-7b3d-9f21-2c5e6a4b7d90",
  "status": "SUCCEEDED",
  "outputUrls": ["https://s3.twcstorage.ru/.../result.webp"],
  "costRub": 12,
  "errorCode": null,
  "errorMessage": null
}
```

- `outputUrls` — ссылки на готовые файлы; заполняются при `SUCCEEDED`.
- При `FAILED` средства возвращаются на баланс автоматически, причина — в `errorCode` / `errorMessage`.
- Лимит: 5 одновременных генераций (`PENDING` + `PROCESSING`), при превышении — `429`.
- Для длинных задач (видео, музыка) вместо polling'а используйте [Webhooks](https://iskragen.ru/docs/webhooks.md).

### Полная документация

- Generations API (все поля, image-to-image, ошибки): https://iskragen.ru/docs/api-generations.md
- Аутентификация: https://iskragen.ru/docs/authentication.md
- Ошибки: https://iskragen.ru/docs/errors.md
- Лимиты: https://iskragen.ru/docs/rate-limits.md
- Индекс всей документации для LLM: https://iskragen.ru/llms.txt
- Машиночитаемый каталог моделей (slug, params, цены): https://api.iskragen.ru/v1/catalog
