API in One/Docs/Suno/Upload Cover
Suno API Reference

Upload Cover

Generate new music from uploaded audio and optionally steer the output with custom prompt, style, title, and callback controls.

Model page
Base URL
https://apiin.one/api/v1

Use the unified API in One gateway for all Suno routes.

Audio length
6-60 seconds

Uploaded source audio must fit the supported range.

Credits
5-12 credits

Cost depends on selected model variation.

POST/api/v1/audio/music/upload-cover/generate

Generate from Upload

Create a new music task from an uploaded audio source.

Use an uploaded audio ID as the source. You can continue it as-is or enable custom mode to control the generated track.

  • Upload audio first to obtain an audio_id.
  • Uploaded audio must be between 6 and 60 seconds.
  • callback_url can receive asynchronous result notifications.

Required Parameters

Body ParametersJSON
audio_id:string

The ID of the uploaded audio file.

Optional and Custom Mode Parameters

Body ParametersJSON
custom_mode:optional boolean

Set to true to use custom settings (prompt, style, title). Defaults to false.

prompt:optional string

Lyrics or detailed prompt. Required if custom_mode is true.

style:optional string

Musical style/genre for the generated track.

title:optional string

Title of the generated track.

callback_url:optional string

Webhook URL to get the result asynchronously.

cURL Example

bash
1curl -X POST "https://apiin.one/api/v1/audio/music/upload-cover/generate" \
2 -H "Authorization: Bearer aio_your_api_key_here" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "audio_id": "aud123456789",
6 "custom_mode": true,
7 "prompt": "Here are some new lyrics for the intro...",
8 "style": "acoustic pop"
9 }'

Task Response

json
1{
2 "code": 200,
3 "message": "success",
4 "data": {
5 "task_id": "upl987654321bksv"
6 }
7}
GET/api/v1/audio/music/upload-cover/status?task_id={task_id}

Check Upload Cover Status

Poll for generated music clips from an upload-cover task.

Use the task ID returned from the generation endpoint to fetch current status and final audio clips.

Query Parameters

Body ParametersJSON
task_id:string

The task ID returned from /upload-cover/generate.

cURL Example

bash
1curl -X GET "https://apiin.one/api/v1/audio/music/upload-cover/status?task_id=upl987654321bksv" \
2 -H "Authorization: Bearer aio_your_api_key_here"

Completed Response

json
1{
2 "code": 200,
3 "message": "success",
4 "data": {
5 "task_id": "upl987654321bksv",
6 "status": "complete",
7 "clips": [
8 {
9 "id": "song_abc",
10 "audio_url": "https://audiopipe.suno.ai/?item_id=song_abc",
11 "image_url": "https://cdn2.suno.ai/image_abc.jpeg"
12 }
13 ],
14 "created_at": "2026-02-24T12:00:30Z"
15 }
16}

Error Handling

API in One uses consistent authentication, credit, and validation errors across Suno endpoints.

Body ParametersJSON
400:optional invalid_request

Missing audio_id, or uploaded audio length does not meet guidelines (6-60s).

401:optional authentication_error

Invalid or missing API key.

404:optional not_found

Audio ID or task ID not found.