Skip to main content
POST
Model creation is asynchronous. After submission, poll the task with its task_id; when it completes, read the custom model ID from data.result.model_id.

Authorizations

string
required
Bearer Token. Obtain API Key from the API Key Management page.

Body

string
default:"suno"
Always use suno.
string
required
Custom model name. It cannot be empty after trimming leading and trailing whitespace.
string[]
required
From 6 to 24 publicly accessible direct HTTP(S) audio URLs. MP3, WAV, and M4A are recommended. Each URL must return an audio file directly, not a page that requires sign-in.
An invalid media file may cause the entire model-creation task to fail. Upload local files first and use their public URLs; do not send local paths or blob: URLs.

Response

integer
Response Status Codes.
array
Submission result. Read from data[0].task_id, then query the training status through GET /v1/music/tasks/{task_id}.

Use the created model

After completion, save result.model_id. Use it as custom_model_id in later custom-model requests, and omit version and persona_id.
Model creation may take several minutes, and can take about 20 minutes. Custom-model availability may vary, so do not promise a fixed expiration time. Model creation and each generation are billed separately.