Generate sounds
This page is generated from the upstream official OpenAPI documentation. Endpoints, parameters and examples match the official docs; brand and API domain are replaced with ModelFold.
Endpoint
POST /jobs/createTask
Full URL: https://ai.modelfold.online/v1/jobs/createTask
Authentication: every request must include the
Authorization: Bearer <API_KEY>header.
Document updated
If you have already completed the integration process previously, you can still access the old version document at: Old version address (https://ai.modelfold.online/docs/en/suno-api/generate-sounds)
Used for creating a sound generation task (Sounds Task). It supports settings for looping, tempo (BPM), pitch (Key), as well as lyrics subtitle capture, etc.
🚀 User Guide
- By using this interface, you can generate corresponding audio content based on the input
prompt. - It supports setting up loop playback effect, which is suitable for background music, ambient sounds, and other scenarios.
- It allows specifying BPM (beats per minute) and pitch (Key) to facilitate control over the style of the generated result.
- Optional feature to enable lyric subtitle capture for easier display or processing of lyric content later.
- Supports asynchronous reception of task completion notifications through callBackUrl address.
📌 Usage Scenarios
- 🎧 Background music creation
- 🎮 Game sound effects or looped ambient sounds generation
- 🌐 Integration of audio content platforms and creative tools
When polling GET /api/v1/jobs/recordInfo, the clips are in data.response.data[] (audio_url, stream_audio_url, image_url, id, duration).
Request Parameters
Body (application/json)
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | Yes | The model name to use for generation. Required field. 示例:ai-music-api/sounds。 |
callBackUrl | string | No | The URL to receive generation task completion updates. Optional but recommended for production use. - System will POST task status and results to this URL when generation completes - Callback includes generated content URLs and task information - Your callback endpoint should accept POST requests with JSON payload containing results - Alternatively, use the Get Task Details endpoint to poll task status - To ensure callback security, see Webhook Verification Guide for signature verification implementation |
input | object | Yes | Input parameters for the generation task |
input.prompt | string | Yes | Description of the sound (max 500 characters). |
input.model | string | Yes | Required. Use V6, V6_MINI or V6_WILD. - V6_WILD: Pushes creative boundaries for bolder, more distinctive musical expression.- V6_MINI: Lightweight and fast, balancing quality and speed for effortless creation.- V6: Greater musical expression with more natural vocals and richer details. Allowed values:V5 / V5_5 / V6 / V6_WILD / V6_MINI。 示例:V5。 |
input.sound_loop | boolean | No | Whether the generated sound loops seamlessly. Default:false。 示例:false。 |
input.sound_tempo | integer | No | Tempo in BPM (1–300). Omit for automatic tempo. Default:null。 |
input.sound_key | string | No | Musical key. Default "Any" (automatic). Default:"Any"。 Allowed values:Any / Cm / C#m / Dm / D#m / Em / Fm / F#m / Gm / G#m / Am / A#m / Bm / C / C# / D / D# / E / F / F# / G / G# / A / A# / B。 示例:Any。 |
input.grab_lyrics | boolean | No | Whether to capture the lyrics subtitles Will the interface be called after completion to obtain the lyrics subtitles? Default: false。 示例:false。 |
Request Example
curl -X POST "https://ai.modelfold.online/v1/jobs/createTask" \
-H "Authorization: Bearer $MODELFOLD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "ai-music-api/sounds",
"callBackUrl": "https://api.example.com/callback",
"input": {
"prompt": "sint",
"model": "V6",
"sound_loop": true,
"sound_tempo": 166,
"sound_key": "D#m",
"grab_lyrics": true
}
}'{
"model": "ai-music-api/sounds",
"callBackUrl": "https://api.example.com/callback",
"input": {
"prompt": "sint",
"model": "V6",
"sound_loop": true,
"sound_tempo": 166,
"sound_key": "D#m",
"grab_lyrics": true
}
}Response
200 — Request successful
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
code | integer | 否 | Status code of the request. The HTTP status is 200 even when the request fails, so always check this field: 200 means success; any other value means the request failed and msg describes the reason. Common values: 401 invalid or missing API key; 402 insufficient credits; 429 rate limit exceeded; 422 or 500 the request could not be processed (read msg and check your parameters before retrying). 可选值:200 / 401 / 402 / 404 / 422 / 429 / 433 / 455 / 500 / 501 / 505。 示例:200。 |
msg | string | 否 | Response message, error description upon failure 示例:success。 |
data | object | 是 | — |
data.taskId | string | 是 | The task ID can be used with the "Get Task Details" endpoint to query the task status. 示例:dc1928bfcbc77cb6c85f3359a9c718b3。 |
{
"code": 200,
"msg": "success",
"data": {
"taskId": "task38695****935u9043u"
}
}