Skip to main content
POST
cURL
Start here if you need the main endpoint for Suno API music generation. For the complete endpoint directory, workflow guidance, and related links, see the Suno API overview. Suno legacy models have all been discontinued. Only chirp-v6, chirp-v6-wild, and chirp-v6-mini are currently supported. If a discontinued legacy model name is still passed, it is automatically mapped to chirp-v6. See Model Mapping. After you create a custom model, set mv to chirp-custom:{model_id} to generate in that style. See Create Model. persona_id and chirp-custom cannot be used together.

Authorizations

TT-API-KEY
string
header
required

You can obtain your API key from the TTAPI Dashboard.

Body

application/json
custom
boolean
default:false
required

Whether to use custom mode.

  • true: Audio will be generated from lyrics
  • false: Audio will be generated based on inspiration mode prompts
instrumental
boolean
default:false
required

Whether to generate instrumental music.

  • true: Generate instrumental-only music
  • false: Generate a track with vocals and lyrics
    • In inspiration mode, the gpt_description_prompt parameter is required
    • In custom mode, the prompt parameter is required
mv
enum<string>
default:chirp-v6
required

Model to use. Available values: chirp-v6, chirp-v6-wild, chirp-v6-mini. Suno legacy models have all been discontinued; passing a legacy name maps it to chirp-v6. See Model Mapping. After creating a custom model, you can also pass chirp-custom:{model_id}. See Create Model. persona_id and chirp-custom cannot be used together.

Available options:
chirp-v6,
chirp-v6-wild,
chirp-v6-mini
gpt_description_prompt
string

Prompt for inspiration mode.

When not using custom mode (custom=false), this parameter is always required. Lyrics will be automatically generated from this prompt. Maximum length: 3000 characters.

Example:

"Night city lo-fi piano with rain ambience, soft vocal phrases, theme: \"Under the city lights\""

prompt
string

Lyrics.

Used in custom mode (custom=true). Required when instrumental is false. The lyrics will be used and sung in the generated track. Maximum length: 5000 characters.

title
string

Music title.

Used in custom mode (custom=true). Maximum length: 80 characters.

tags
string

Music style or genre.

Used in custom mode (custom=true). Maximum length: 1000 characters.

Example:

"rock, blues, hip-hop, r&b"

negative_tags
string

Music styles or genres that should be excluded from generation.

Used in custom mode (custom=true).

style_weight
number

Music style weight, range: 0.00–1.00.

Used in custom mode. Valid range: 0 <= x <= 1.

Example:

0.5

weirdness_constraint
number

Audio creativity (weirdness) weight, range: 0.00–1.00.

Used in custom mode. Valid range: 0 <= x <= 1.

Example:

0.5

audio_weight
number

Audio weight, range: 0.00–1.00.

Used in custom mode. Valid range: 0 <= x <= 1.

Example:

0.5

duration
int

Audio duration, in seconds

Used in custom mode. Valid range: 10 <= x <= 360.

Example:

120

auto_lyrics
boolean
default:false

Whether to automatically generate lyrics. Custom mode only.

  • true: The input lyrics will be creatively rewritten, similar to the inspiration mode prompt effect
  • false: Use the provided lyrics directly to generate the music
vocal_gender
enum<string>

Vocal gender.

  • Male: Male voice

  • Female: Female voice

Available options:
Male,
Female
persona_id
string

Music style ID. Custom mode only.

Use this parameter to generate music with a specific style. Cannot be used together with mv=chirp-custom:{model_id}.

variety
enum<string>

Style variety. Controls how much the generated result varies from the specified style.

  • off: Exact style
  • normal: Balanced variety
  • high: Distinct styles
  • extra: Bold exploration
  • max: Unreasonably varied
Available options:
off,
normal,
high,
extra,
max
max_mode
boolean
default:false

Whether to use more compute to maximize consistency throughout the song. Custom mode only.

  • false: No (default)
  • true: Yes. Credit consumption is doubled when enabled
audio_format
enum<string>

Audio format of audioUrl after the job succeeds.

Available options:
mp3,
m4a,
wav
Example:

"mp3"

hookUrl
string

Callback notification URL

isStorage
boolean
default:true
deprecated

Whether to store the generated audio.

  • true: The audio will be stored and a TTAPI CDN URL will be returned
  • false: The original source URL will be returned

Response

Request successful

status
string
required
Example:

"SUCCESS"

message
string
required
Example:

"success"

data
object
required
Example:
Last modified on September 9, 2026