Документация/Музыка/Текст в изображение
Suno Music· Текст в изображение
Текст в изображение
POST
https://api.sozdai.ai/v1/media/generationsМодель оплаты
Оплата за успешную генерацию. Подробнее на странице цен.
Как выполняется
Асинхронная модель: задача ставится в очередь, результат — по опросу.
#Создать задачу
Генерация медиа асинхронна: вы сразу получаете id задачи, без ожидания.
bash
curl https://api.sozdai.ai/v1/media/generations \
-H "Authorization: Bearer $CORRY_KEY" \
-H "Content-Type: application/json" \
-d '{ "model": "suno-music", "prompt": "calm ambient piano with soft melodies", "instrumental": true }'
# → { "id": "cmus7q0x9000108l3f5g2abcd", "status": "queued" }#Параметры запроса
| Параметр | Тип | Обязательный | По умолч. | Описание |
|---|---|---|---|---|
version | string | Нет | V5_5 | Версия движка Suno (модель — это параметр). По умолчанию V5_5 (новейшая). Значения: V5_5, V5, V4_5PLUS, V4_5, V4_5ALL, V4 |
prompt | string | Да | — | Обычный режим (по умолчанию): краткая идея — до 500 символов. Custom mode: точный текст — до 3000 (V4) / 5000 (остальные версии) символов. |
customMode | boolean | Нет | false | Расширенный режим. При true нужны style и title. |
instrumental | boolean | Нет | false | Инструментал без вокала. |
style | string | Нет | — | Жанр/настроение (обяз. в custom mode). До 200 (V4) / 1000 (остальные). |
title | string | Нет | — | Название трека (обяз. в custom mode, до 80). |
negativeTags | string | Нет | — | Стили, которых стоит избегать. |
vocalGender | string | Нет | — | Пол вокала (только custom mode). Значения: m, f |
styleWeight | number | Нет | — | Сила следования стилю. 0–1, до 2 знаков. |
weirdnessConstraint | number | Нет | — | Экспериментальность. 0–1, до 2 знаков. |
audioWeight | number | Нет | — | Вес аудио-признаков. 0–1, до 2 знаков. |
personaId | string | Нет | — | Применить Persona/Voice. Только custom mode. |
personaModel | string | Нет | — | Тип Persona. Только V5 и V5_5. Значения: style_persona, voice_persona |
callback_url | string | Нет | — | Опциональный публичный http(s) URL. Мы отправим результат POST-запросом сразу после завершения задачи. |
#Получение результата
Генерация асинхронная — submit сразу возвращает id задачи. Опрашивайте этот эндпоинт с этим id каждые несколько секунд, пока status не станет succeeded (готово) или ошибкой (failed / timeout).
GET
https://api.sozdai.ai/v1/media/generations/{id}bash
# take the id from the submit response, then poll every ~3s
curl https://api.sozdai.ai/v1/media/generations/cmus7q0x9000108l3f5g2abcd \
-H "Authorization: Bearer $CORRY_KEY"
# repeat until "status" is "succeeded" (or "failed" / "timeout")#Пример ответа
При создании
json
{
"id": "cmus7q0x9000108l3f5g2abcd",
"status": "queued",
"type": "music",
"model": "suno-music"
}При успехе (после опроса)
json
{
"id": "cmus7q0x9000108l3f5g2abcd",
"status": "succeeded",
"type": "music",
"model": "suno-music",
"tracks": [
{
"id": "cmus7q9p1000208l3h6j3efgh",
"title": "Paper Sunburn",
"tags": "pop, upbeat, bright synth, punchy",
"lyrics": "[Verse 1]\nCity lights on the dashboard glow\n...",
"duration": 139.92,
"streamUrl": "https://api.sozdai.ai/v1/media/stream/cmus7q9p1000208l3h6j3efgh/<token>",
"audioUrl": "https://cdn.sozdai.ai/music/1782583687607-75e9dd8e8b89.mp3",
"imageUrl": "https://cdn.sozdai.ai/music/cover/1782583641794-896ad6ebb572.jpeg"
},
{
"id": "cmus7qam2000308l3k7m4ijkl",
"title": "Paper Sunburn",
"tags": "pop, upbeat, bright synth, punchy",
"lyrics": "[Verse 1]\nCity lights on the dashboard glow\n...",
"duration": 176.88,
"streamUrl": "https://api.sozdai.ai/v1/media/stream/cmus7qam2000308l3k7m4ijkl/<token>",
"audioUrl": "https://cdn.sozdai.ai/music/1782583693241-bfbcad7cf9d8.mp3",
"imageUrl": "https://cdn.sozdai.ai/music/cover/1782583648301-bec46f245a73.jpeg"
}
],
"cost": "0.1200",
"currency": "USD"
}Поля ответа
| Поле | Тип | Описание |
|---|---|---|
status | string | Статус задачи: queued / submitted / succeeded / failed / timeout. |
type | string | Тип медиа: image / video / music. |
model | string | Запрошенная модель. |
tracks | array | Сгенерированные треки (обычно 2). |
error | string | Сообщение об ошибке при сбое. |
cost | string | Сумма списания за задачу — строка в USD (напр. "0.1200"). См. поле currency. |
currency | string | Валюта cost — всегда "USD". |
Объект трека
| Поле | Тип | Описание |
|---|---|---|
id | string | ID трека. |
title | string | Название. |
tags | string | Теги стиля через запятую. |
lyrics | string | Текст; "[Instrumental]" для инструментала. |
duration | number | Длительность (сек). |
streamUrl | string | Стрим во время генерации; затем CDN. |
audioUrl | string | Итоговый mp3 на нашем CDN. |
imageUrl | string | Обложка на нашем CDN. |
Слушайте во время генерации
Треки (streamUrl, обложка, текст) появляются через ~20–30с — начинайте играть streamUrl сразу. audioUrl добавится по завершении.