Skip to main content
POST
Suno V6

Headers

Authorization
string

Body

application/json
model
enum<string>
required

Model name. Must be suno-v6.

Available options:
suno-v6
custom_mode
boolean
default:false

false (default, simple mode): describe the song in prompt and the model writes the lyrics. true (custom mode): you provide title and lyrics (or instrumental: true) and can set duration and the fine-tuning parameters.

prompt
string

Simple mode only. What the song should be about and sound like. Max 3000 characters. Required in simple mode unless you give style, lyrics or reference media.

Maximum string length: 3000
instrumental
boolean
default:false

true = no vocals. When true, lyrics, vocal_gender and audio_weight must not be sent.

variant
enum<string>
default:standard

Suno V6 flavor. standard = V6 (natural vocals, rich detail), mini = V6 Mini (lighter and faster), wild = V6 Wild (bolder, more experimental). All three cost the same.

Available options:
standard,
mini,
wild
style
string

Optional. Music style, e.g. lofi hip hop, mellow piano, rainy night. Max 1000 characters.

Maximum string length: 1000
lyrics
string

Optional. In custom mode: the exact lyrics to sing (required unless instrumental is true). In simple mode: optional lyric material the model may draw from. Use section markers such as [Verse] and [Chorus]. Max 5000 characters.

Maximum string length: 5000
title
string

Custom mode only, and required there. Song title. Max 80 characters.

Maximum string length: 80
negative_tags
string

Custom mode only. Styles or traits to avoid. Max 200 characters.

Maximum string length: 200
duration
integer

Custom mode only. Target length in seconds, 10 to 360. Omit to let the model decide.

Required range: 10 <= x <= 360
vocal_gender
enum<string>

Custom mode only. Preferred singer gender (m / f also accepted). This raises the probability; it is not guaranteed.

Available options:
male,
female
style_weight
number

Custom mode only. How strictly to follow style, from 0 to 1 (rounded to 2 decimals).

Required range: 0 <= x <= 1
weirdness_constraint
number

Custom mode only. How experimental the result may be, from 0 to 1 (rounded to 2 decimals).

Required range: 0 <= x <= 1
audio_weight
number

Custom mode only. How much the result follows the audio features of the source, from 0 to 1 (rounded to 2 decimals). Not available when instrumental is true.

Required range: 0 <= x <= 1
variety
integer
default:1

Custom mode only. How different the versions are from each other: 0 off, 1 normal (default), 2 high, 3 extra, 4 max.

Required range: 0 <= x <= 4
image_urls
string<uri>[]

Simple mode only. Up to 5 reference images (jpeg / png / webp / bmp, each up to 10 MB) that the song should be inspired by (photo to music).

Maximum array length: 5
video_urls
string<uri>[]

Simple mode only. Up to 1 reference video (mp4 / mov / webm, up to 100 MB and 241 seconds).

Maximum array length: 1
audio_urls
string<uri>[]

Simple mode only. Reference audio (each 6 seconds to 30 minutes, up to 500 MB). style + lyrics + all reference media together must not exceed 10 items.

custom_callback_url
string<uri>

Optional. A publicly accessible HTTPS URL. When the task status changes (processing / success / failed), GoEnhance sends a POST request to this URL. The request body is identical to the response of GET /api/v1/jobs/detail. If your server does not respond with HTTP 200, the notification is retried up to 3 times, with a 3-second timeout per attempt.

Example:

"https://your-server.com/goenhance/callback"

Response

code
integer
required
msg
string
required
data
object
required