Start from the scene the track has to support, then pick a Suno v6 ID. chirp-v6 is the polished flagship, chirp-v6-wild explores more variation, and chirp-v6-mini is the faster sketch. A completed TTAPI job means audio is available—listen before it ships.
Start from the cue you need
This tutorial shows how to generate a scene score with the Suno v6 Music API through TTAPI. Write mood, tempo, vocals, and length so a reviewer can hear what the scene needs.
Suno launched v6 as a three-model family: a precise flagship, an exploratory wild variant, and a faster mini. TTAPI exposes those IDs as chirp-v6, chirp-v6-wild, and chirp-v6-mini.
- Keep your TTAPI API key in a server-side environment variable.
- Name mood, tempo, vocals, and length before you pick a model.
- Decide whether a hookUrl callback belongs in this product flow.
Pick v6, wild, or mini from the cue
Choose the model from the job, not from the version number. If the scene needs a reliable vocal, a clear arrangement, and a result you can review against a brief, start with chirp-v6.
Move to chirp-v6-wild when you want more surprise from the same cue and can reject takes. Use chirp-v6-mini when you need a faster sketch before a full generation. Keep the brief, vocal setting, and length stable when you compare IDs so the difference is the model, not a rewritten prompt.
- chirp-v6: polished, controllable flagship
- chirp-v6-wild: exploratory, more variation
- chirp-v6-mini: faster, lighter generations
Submit a Suno v6 Music API job
Send the style input to the Suno Music endpoint with mv set to chirp-v6, chirp-v6-wild, or chirp-v6-mini. Store the returned job identifier with the user's brief rather than relying on a page staying open.
The example below uses inspiration mode and chirp-v6. Switch only the mv field to try wild or mini. The Suno Fetch V2 endpoint reads that same job. Follow its documented identifier and response fields. Use the callback when your application should receive completion in the background.
curl --request POST \
--url 'https://api.ttapi.io/suno/v1/music' \
--header "TT-API-KEY: $TTAPI_KEY" \
--header 'Content-Type: application/json' \
--data '{
"custom": false,
"instrumental": false,
"mv": "chirp-v6",
"gpt_description_prompt": "slow cinematic electronic soul, 75 BPM, deep sub-bass, warm Rhodes piano, soft brushes, atmospheric pads, intimate low male vocal",
"audio_format": "mp3",
"variety": "normal",
"hookUrl": "https://example.com/webhooks/suno"
}'Listen to the generated Suno track
When the Suno result is ready, provide playback next to the original brief. Check atmosphere, vocal presence, and whether the cue suits the intended scene.
The Fetch example below is one status check. In an application, bound your retries and keep the brief visible while the job is pending.
curl --request GET \
--url "https://api.ttapi.io/suno/v2/fetch?jobId=$JOB_ID" \
--header "TT-API-KEY: $TTAPI_KEY"- Listen for the requested mood and instruments.
- Check whether vocals fit the scene.
- Approve the cue or record a clear revision.
- Retain the original brief, generation identifier, and mv value.
Recover a Suno job if the session ends
If the user leaves the page, make the saved Suno job available when they return. If a status check fails, keep the brief visible and offer a clear recovery path instead of immediately creating another generation.
Start with one complete request-to-listen flow. Suno's v6 product also describes section edits, mashups, and lyric-level changes. Add extend, replace, or stem operations only after checking the current TTAPI documentation.