Extend API (продовження)
Опис кінцевої точки
Extend продовжує наявну пісню від обраного моменту часу й генерує наступний фрагмент.
Кінцева точка: POST /api/music/extend
Оплата: платно, наразі типово 0,6 ¥ за виклик. Фактично списана сума відповідає поточній конфігурації цін у бек-офісі.
Max Mode / Variety: ця кінцева точка підтримує необов'язкові параметри max_mode і variety (0-4). Коли
max_mode увімкнено, цей виклик тарифікується за подвійною ціною (0,6 → 1,2 ¥ за виклик); variety не коштує
нічого додатково. Що вони означають і як їх надсилати — у розділі «Розширені параметри»
Огляду нового API.
Час очікування та тайм-аути (важливо): це синхронна кінцева точка — замовлення приймають і передають у генерацію лише коли надходить відповідь. За вимірами більшість запитів відповідають за 1-3 секунди, близько 10% тривають понад 30 секунд, а найдовший — близько 230 секунд. Установіть тайм-аут клієнта 300 секунд або більше; відсутність відповіді не означає, що нічого не згенеровано, і не повторюйте запит одразу після тайм-ауту (це дублює замовлення й списує кошти вдруге). Якщо з'єднання обірвалося, перевірте пізніше через
GET /api/music/songs. Див. «Час очікування та налаштування тайм-ауту» в Огляді нового API.
Параметри запиту
Headers
| Параметр | Тип | Обов'язково | Примітки |
|---|---|---|---|
| Authorization | string | так | Bearer YOUR_API_KEY |
| Content-Type | string | так | application/json |
Параметри тіла
| Параметр | Тип | Обов'язково | Типово | Примітки |
|---|---|---|---|---|
| model | string | ні | suno-v6 | Клієнтська назва моделі: suno-v6, suno-v6-wild або suno-v6-mini |
| audioId | string | так | - | ID пісні, яку потрібно продовжити |
| prompt | string | так | - | Опис продовження |
| continueAt | number | так | - | Точка початку продовження в секундах. Має бути більшою за 0 і меншою за тривалість вихідної пісні; залиште щонайменше 10 секунд після точки початку, інакше результат буде лише ці кілька секунд |
| style | string | ні | - | Теги стилю |
| negativeTags | string | ні | - | Виключені стилі |
| title | string | ні | - | Назва |
| sourceAudioUrl | string | ні | - | URL вихідного аудіо |
| sourceFileName | string | ні | - | Назва вихідного файлу |
| waitAudio | boolean | ні | false | Чи чекати завершення аудіо |
Приклад запиту
curl -X POST https://www.suno-api.io/api/music/extend \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "suno-v6",
"audioId": "clip_id",
"prompt": "продовж приспів із сильнішими емоціями",
"continueAt": 60,
"style": "Mandopop, rock",
"negativeTags": "noise",
"title": "Продовжена версія",
"waitAudio": false
}'
Відповідь
{
"code": 200,
"message": "success",
"data": {
"clips": [
{
"song_id": "extended_clip_id",
"song_title": "Продовжена версія",
"status": "pending"
}
]
}
}
Сумісні поля
Старі назви полів досі приймаються:
| Нове поле | Сумісне старе поле |
|---|---|
| audioId | song_id, audio_id |
| prompt | description |
| continueAt | start_time, continue_at |
| style | style_tags, tags |
| negativeTags | negative_tags |
| waitAudio | wait_audio |
Примітки
- Не ставте точку початку впритул до кінця: довжина продовження приблизно дорівнює «тому, що залишилося після точки початку». Якщо точка початку надто близько до кінця, результат буде лише кілька секунд — за вимірами, пісня тривалістю 242 секунди, продовжена з 240-ї секунди, дала лише 2,7 секунди (і оплата за виклик усе одно списується). Залиште щонайменше 10 секунд після точки початку.
- У Extend немає порогу «джерело надто коротке»: за вимірами фрагмент 9,6 секунди, продовжений із 5-ї секунди, нормально дав пісню, тож коротке джерело чи короткий залишок не є причиною відмови.
- Точка початку має бути більшою за 0:
continueAt=0платформа приймає й потім анулює, не повертаючи причини збою, тож починайте одразу після першої секунди. - Один виклик повертає 2 результати (тарифікуються як 2 пісні); орієнтуйтеся на довжину масиву
clips. - Результат — нова робота; вихідна пісня не зачіпається.
Отримати API-ключ
Створіть API-ключ у консолі після реєстрації. Одна генерація коштує 0,6 ¥ і повертає 2 треки, завантаження необмежені, номер телефону не потрібен.
Отримати API-ключ Повернутися до огляду