Upload And Cover Audio
POST/api/v1/generate/upload-cover
This API covers an audio track by transforming it into a new style while retaining its core melody. It incorporates Suno's upload capability, enabling users to upload an audio file for processing. The expected result is a refreshed audio track with a new style, keeping the original melody intact.
Parameter Usage Guide
-
When customMode is true (Custom Mode):
- If instrumental is true: style, title and uploadUrl are required
- If instrumental is false: style, prompt, title and uploadUrl are required
- prompt length limit: 3000 characters
- style length limit: 200 characters
- title length limit: 80 characters
- uploadUrl is used to specify the upload location of the audio file; ensure the uploaded audio does not exceed 2 minutes in length.
-
When customMode is false (Non-custom Mode):
- Only prompt and uploadUrl are required regardless of instrumental setting
- prompt length limit: 400 characters
- Other parameters should be left empty
Developer Notes
- Recommended settings for new users: Set customMode to false, instrumental to false, and only provide prompt and uploadUrl. This is the simplest configuration to quickly test the API and experience the results.
- Generated files will be deleted after 15 days
- Ensure all required parameters are provided based on customMode and instrumental settings to avoid errors
- Pay attention to character limits for prompt, style, and title to ensure successful processing
- Callback process has three stages: text (text generation complete), first (first track complete), complete (all tracks complete)
- You can use the Get Music Generation Details endpoint to actively check task status instead of waiting for callbacks
- The uploadUrl parameter is used to specify the upload location of the audio file; please provide a valid URL.
Request
Responses
- 200
- 500
Request successful
Server Error
Callbacks
- POST audioGenerated
POST{request.body#/callBackUrl}
System will call this callback when audio generation is complete.
Callback Example
{
"code": 200,
"msg": "All generated successfully.",
"data": {
"callbackType": "complete",
"task_id": "2fac****9f72",
"data": [
{
"id": "8551****662c",
"audio_url": "https://example.cn/****.mp3",
"source_audio_url": "https://example.cn/****.mp3",
"stream_audio_url": "https://example.cn/****",
"source_stream_audio_url": "https://example.cn/****",
"image_url": "https://example.cn/****.jpeg",
"source_image_url": "https://example.cn/****.jpeg",
"prompt": "[Verse] Night city lights shining bright",
"model_name": "chirp-v3-5",
"title": "Iron Man",
"tags": "electrifying, rock",
"createTime": "2025-01-01 00:00:00",
"duration": 198.44
},
{
"id": "bd15****1873",
"audio_url": "https://example.cn/****.mp3",
"source_audio_url": "https://example.cn/****.mp3",
"stream_audio_url": "https://example.cn/****",
"source_stream_audio_url": "https://example.cn/****",
"image_url": "https://example.cn/****.jpeg",
"source_image_url": "https://example.cn/****.jpeg",
"prompt": "[Verse] Night city lights shining bright",
"model_name": "chirp-v3-5",
"title": "Iron Man",
"tags": "electrifying, rock",
"createTime": "2025-01-01 00:00:00",
"duration": 228.28
}
]
}
}
Callbacks Responses
- 200
Callback received successfully