Перейти к основному содержанию
POST
custom определяет, какие поля вступают в силу: поля, переданные не в том режиме, молча игнорируются вышестоящим сервисом (без ошибки). При custom=true (пользовательский режим) действуют prompt (текст песни), title, style, negative_tags, auto_lyrics, persona_id, style_weight, weirdness_constraint и audio_weight; при custom=false (режим вдохновения) prompt используется как описание-вдохновение, а title/style и перечисленные выше пользовательские поля игнорируются. vocal_gender работает в обоих режимах.
Этот эндпоинт использует отдельный маршрут, поэтому некоторые имена полей отличаются от других эндпоинтов: style (а не tags).

Authorizations

Authorization
string
обязательно
Все эндпоинты требуют аутентификации с использованием Bearer TokenПолучить API Key:Перейдите на страницу управления API Key, чтобы получить ваш API KeyПри использовании добавьте в заголовки запроса:

Body

model
string
по умолчанию:"suno"
Аудиомодель. Сейчас передавайте suno (если не указано, по умолчанию suno).
custom
boolean
по умолчанию:"false"
false = режим вдохновения; true = пользовательский режим (prompt используется как текст песни). По умолчанию false.
instrumental
boolean
по умолчанию:"false"
true = чистая музыка, без вокала. По умолчанию false.
version
string
обязательно
Версия генерации: v3.5 / v4 / v4.5 / v4.5+ / v4.5-all / v5 / v5.5, влияет на качество звука и тарификацию. Обязательна в обоих режимах; если она не передана, сразу возвращается 400.
prompt
string
Промпт-вдохновение / текст песни. Обязателен при custom=false (используется как описание-вдохновение). При custom=true: обязателен, если instrumental=false (используется как текст песни); необязателен, если instrumental=true. Если он отсутствует, на этапе отправки сразу возвращается 400 (без обращения к вышестоящему сервису и без списания средств).
title
string
Заголовок (пользовательский режим). Игнорируется при custom=false (режим вдохновения).
style
string
Теги стиля (пользовательский режим, соответствует полю tags вышестоящего сервиса). Игнорируется при custom=false (режим вдохновения).
negative_tags
string
Негативные теги стиля (стили, которых вы не хотите). Действует только при custom=true.
auto_lyrics
boolean
true = творчески переработать переданный текст песни. Действует только при custom=true.
persona_id
string
Идентификатор стиля Persona. Действует только при custom=true.
vocal_gender
string
Пол вокала: Male / Female (также принимаются m / f / male / female, бэкенд нормализует их автоматически). Работает в обоих режимах.
style_weight
number
Вес стиля, 0.001.00. Действует только при custom=true.
weirdness_constraint
number
Креативность, 0.001.00. Действует только при custom=true.
audio_weight
number
Вес аудио, 0.001.00. Действует только при custom=true.
Получение результата: этот эндпоинт является асинхронной задачей. После отправки вы получаете task_id; опрашивайте GET /v1/music/tasks/{task_id} с интервалом 3–5 с, пока status не станет completed или failed (генерация музыки обычно занимает 30–120 с; во время генерации status равен pending, а progress меняется: в очереди 10 → готово 50 → завершено 100). По завершении возьмите audio_url из data.result.music[] (там также есть image_url / video_url / title / duration и т. д.). При неудаче data.error.message содержит причину, а предварительно списанная квота автоматически возвращается.

Response

code
integer
Код статуса ответа
data
array
Массив возвращаемых данных