API завантаження вихідного аудіо

Оновлено 2026-09-18 · команда Suno-API

Опис кінцевої точки

Завантаження вихідного аудіо перетворює локальний або віддалений аудіофайл на вихідний кліп, який можуть використовувати подальші можливості: кавер, подовження, заміна фрагмента, розділення на доріжки та інші.

Кінцева точка: POST /api/music/upload-source

Оплата: Безкоштовно. Ця кінцева точка лише завантажує вихідне аудіо й не запускає задачу генерації.

Рекомендоване використання: це крок 1 «двокрокового каверу». Спершу завантажте аудіо цією кінцевою точкою (безкоштовно, і в разі невдачі можна повторювати будь-коли) і збережіть отриманий clip_id; переконавшись, що завантаження успішне (status у завершеному стані), викличте API каверу з вихідного кліпу, щоб почати кавер — тіло того запиту лише кілька сотень байтів, тому воно не обірветься через завелике аудіо. Порівняно з одноразовим API «завантажити й зробити кавер» таке розділення надійніше, коли аудіо велике, мережа нестабільна або той самий матеріал потрібно використати кілька разів (подовження / заміна / розділення).

Поради щодо завантаження великих файлів

Ситуація Рекомендований підхід
Аудіо вже публічне (є пряме посилання https) Використовуйте file_url: тіло запиту лише кілька сотень байтів, найнадійніший варіант
Локальний файл (Node / Python / десктоп) Використовуйте multipart-завантаження (-F "file=@source.mp3") і не задавайте Content-Type вручну
Доступний лише JSON + base64 Зверніть увагу: Content-Length має бути кількістю байтів (Buffer.byteLength), інакше тіло запиту може обірватися

Після завершення завантаження завжди переконайтеся, що status у відповіді вже завершений, і збережіть clip_id, перш ніж переходити до кроку 2; невдале завантаження не тарифікується й не створює задачі генерації — просто повторіть спробу.

Параметри запиту

Headers

Для JSON-запитів:

Параметр Тип Обов'язково Примітки
Authorization string так Bearer YOUR_API_KEY
Content-Type string так application/json

Не задавайте Content-Type вручну в multipart-запитах; клієнт створює його автоматично.

Параметри тіла запиту

Параметр Тип Обов'язково Типово Примітки
model string ні suno-v6 Клієнтська назва моделі: suno-v6, suno-v6-wild або suno-v6-mini
file_url string ні - Адреса віддаленого аудіо
file_base64 string ні - Аудіо в Base64
file_name string ні - Ім'я файлу
upload_type string ні file_upload Тип завантаження

Приклад JSON-запиту

curl -X POST https://www.suno-api.io/api/music/upload-source \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "suno-v6",
    "file_url": "https://example.com/source.mp3",
    "file_name": "source.mp3",
    "upload_type": "file_upload"
  }'

Приклад multipart-запиту

curl -X POST https://www.suno-api.io/api/music/upload-source \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@source.mp3" \
  -F "file_name=source.mp3" \
  -F "upload_type=file_upload" \
  -F "model=suno-v6"

Відповідь

{
  "clip_id": "uploaded_clip_id",
  "status": "complete",
  "title": "source.mp3",
  "image_url": "https://...",
  "audio_url": "https://...",
  "display_tags": "pop, vocal",
  "inferred_description": "uploaded source audio",
  "clip_metadata": {}
}
ДаліAPI вдосконаленого завантаження

Отримати API-ключ

Створіть API-ключ у консолі після реєстрації. Одна генерація коштує 0,6 ¥ і повертає 2 треки, завантаження необмежені, номер телефону не потрібен.

Отримати API-ключ Повернутися до огляду