Producer API

Producer AI (Riffusion) is an AI-powered music and audio generation tool that converts text descriptions into unique music clips or sound effects. Now you can use it in a simple way with TTAPI.

Generate Music

POST https://api.ttapi.io/producer/v1/music


Generate music through text prompts or custom lyrics. Task results is async

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
sound_promptstringtrueAudio prompt words, sound_prompt and lyrics_text cannot be empty at the same time
lyrics_textstringtrueLyrics, sound_prompt and lyrics_text cannot be empty at the same time
instrumentalbooleanfalseWhether to generate pure music. If true, pure music will be generated, and custom lyrics will be ignored.
Default is false
mvStringfalseThe model used to generate the music audio ,
FUZZ-2.0
FUZZ-2.0 Raw
FUZZ-1.1 Pro
FUZZ-1.0 Pro
FUZZ-1.0
FUZZ-1.1
FUZZ-0.8
default is FUZZ-2.0
titleStringfalseMusic title
cover_art_urlstringfalseCover image url
seedstringfalseRandom Seed
lyrics_strengthnumberfalseLyrics intensity, which indicates the influence of lyrics on audio generation. It can be selected between 0-1,
with a default of 0.5
sound_strengthnumberfalseSound intensity, can be selected between 0.2-1, the default is 0.5
weirdnessnumberfalseStyle uniqueness, optional between 0-1, default 0.5
is_storagebooleanfalsetrue or false
false Return to the official address,
default is false
hook_urlStringfalseSend a request to the address for task completion or failed notification. If not set you need to request fetch endpoint to get response

Example Response

{
    "status": "SUCCESS",
    "message": "",
    "data": {
        "jobId": "ed1a1b01-7d64-4c8a-acaa-71185d23a2f3"
    }
}

Generate Lyrics

POST https://api.ttapi.io/producer/v1/lyrics


Generate lyrics based on prompt words

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
promptStringtruePrompt word

Example Response

{
    "status": "SUCCESS",
    "message": "success",
    "data": {
        "jobId": "ffd6870b-9a83-47e6-9d57-601efced86b5",
        "title": "Work It Out",
        "lyrics": "[Verse 1]\nBeat beats beneath my breath\nSweat starts to show itself\nCan't catch a..."
    }
}

Extend Music

POST https://api.ttapi.io/producer/v1/extend


Extend the generated audio

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
music_idstringtruemusicId returned by the previous task
startsnumbertrueThe number of seconds to extend the original audio from the nth second.
Default: 30.00
sound_promptstringtrueAudio prompt words, sound_prompt and lyrics_text cannot be empty at the same time
lyrics_textstringtrueLyrics, sound_prompt and lyrics_text cannot be empty at the same time
instrumentalbooleanfalseWhether to generate pure music. If true, pure music will be generated, and custom lyrics will be ignored.
Default is false
mvStringfalseThe model used to generate the music audio ,
FUZZ-2.0
FUZZ-2.0 Raw
FUZZ-1.1 Pro
FUZZ-1.0 Pro
FUZZ-1.0
FUZZ-1.1
FUZZ-0.8
default is FUZZ-2.0
titleStringfalseMusic title
cover_art_urlstringfalseCover image url
seedstringfalseRandom Seed
lyrics_strengthnumberfalseLyrics intensity, which indicates the influence of lyrics on audio generation. It can be selected between 0-1,
with a default of 0.5
sound_strengthnumberfalseSound intensity, can be selected between 0.2-1, the default is 0.5
weirdnessnumberfalseStyle uniqueness, optional between 0-1, default 0.5
is_storagebooleanfalsetrue or false
false Return to the official address,
default is false
hook_urlStringfalseSend a request to the address for task completion or failed notification. If not set you need to request fetch endpoint to get response

Example Response

{
    "status": "SUCCESS",
    "message": "",
    "data": {
        "jobId": "ed1a1b01-7d64-4c8a-acaa-71185d23a2f3"
    }
}

Cover Music

POST https://api.ttapi.io/producer/v1/cover


Replicate the generated audio

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
music_idstringtruemusicId returned by the previous task
sound_promptstringtrueAudio prompt words, sound_prompt and lyrics_text cannot be empty at the same time
lyrics_textstringtrueLyrics, sound_prompt and lyrics_text cannot be empty at the same time
instrumentalbooleanfalseWhether to generate pure music. If true, pure music will be generated, and custom lyrics will be ignored.
Default is false
mvStringfalseThe model used to generate the music audio ,
FUZZ-2.0
FUZZ-2.0 Raw
FUZZ-1.1 Pro
FUZZ-1.0 Pro
FUZZ-1.0
FUZZ-1.1
FUZZ-0.8
default is FUZZ-2.0
titleStringfalseMusic title
cover_art_urlstringfalseCover image url
seedstringfalseRandom Seed
lyrics_strengthnumberfalseLyrics intensity, which indicates the influence of lyrics on audio generation. It can be selected between 0-1,
with a default of 0.5
sound_strengthnumberfalseSound intensity, can be selected between 0.2-1, the default is 0.5
weirdnessnumberfalseStyle uniqueness, optional between 0-1, default 0.5
is_storagebooleanfalsetrue or false
false Return to the official address,
default is false
hook_urlStringfalseSend a request to the address for task completion or failed notification. If not set you need to request fetch endpoint to get response

Example Response

{
    "status": "SUCCESS",
    "message": "",
    "data": {
        "jobId": "ed1a1b01-7d64-4c8a-acaa-71185d23a2f3"
    }
}

Variation Music

POST https://api.ttapi.io/producer/v1/variation


Variation the generated audio

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
music_idstringtruemusicId returned by the previous task
is_storagebooleanfalsetrue or false
false Return to the official address,
default is false
hook_urlStringfalseSend a request to the address for task completion or failed notification. If not set you need to request fetch endpoint to get response

Example Response

{
    "status": "SUCCESS",
    "message": "",
    "data": {
        "jobId": "ed1a1b01-7d64-4c8a-acaa-71185d23a2f3"
    }
}

Music Clip Replacement

POST https://api.ttapi.io/producer/v1/replace


Replace parts of the generated audio

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
music_idstringtruemusicId returned by the previous task
sound_promptstringtrueAudio prompt words, sound_prompt and lyrics_text cannot be empty at the same time
lyrics_textstringtrueLyrics, sound_prompt and lyrics_text cannot be empty at the same time
instrumentalbooleanfalseWhether to generate pure music. If true, pure music will be generated, and custom lyrics will be ignored.
Default is false
startsnumberfalseReplace the original audio starting at x seconds. (Unit: seconds)
Example: 30.01
endsnumberfalseThe end time (in seconds) of the replacement segment. If it is empty, the replacement will continue until the end of the audio.
mvStringfalseThe model used to generate the music audio ,
FUZZ-2.0
FUZZ-2.0 Raw
FUZZ-1.1 Pro
FUZZ-1.0 Pro
FUZZ-1.0
FUZZ-1.1
FUZZ-0.8
default is FUZZ-2.0
titleStringfalseMusic title
cover_art_urlstringfalseCover image url
seedstringfalseRandom Seed
lyrics_strengthnumberfalseLyrics intensity, which indicates the influence of lyrics on audio generation. It can be selected between 0-1,
with a default of 0.5
sound_strengthnumberfalseSound intensity, can be selected between 0.2-1, the default is 0.5
weirdnessnumberfalseStyle uniqueness, optional between 0-1, default 0.5
is_storagebooleanfalsetrue or false
false Return to the official address,
default is false
hook_urlStringfalseSend a request to the address for task completion or failed notification. If not set you need to request fetch endpoint to get response

Example Response

{
    "status": "SUCCESS",
    "message": "",
    "data": {
        "jobId": "ed1a1b01-7d64-4c8a-acaa-71185d23a2f3"
    }
}

Vocal Cover

POST https://api.ttapi.io/producer/v1/vocals-swap


Perform vocal dubbing on generated audio

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
music_idstringtruemusicId returned by the previous task
sound_promptstringtrueAudio prompt words, sound_prompt and lyrics_text cannot be empty at the same time
lyrics_textstringtrueLyrics, sound_prompt and lyrics_text cannot be empty at the same time
instrumentalbooleanfalseWhether to generate pure music. If true, pure music will be generated, and custom lyrics will be ignored.
Default is false
mvStringfalseThe model used to generate the music audio ,
FUZZ-2.0
FUZZ-2.0 Raw
FUZZ-1.1 Pro
FUZZ-1.0 Pro
FUZZ-1.0
FUZZ-1.1
FUZZ-0.8
default is FUZZ-2.0
titleStringfalseMusic title
cover_art_urlstringfalseCover image url
seedstringfalseRandom Seed
lyrics_strengthnumberfalseLyrics intensity, which indicates the influence of lyrics on audio generation. It can be selected between 0-1,
with a default of 0.5
sound_strengthnumberfalseSound intensity, can be selected between 0.2-1, the default is 0.5
weirdnessnumberfalseStyle uniqueness, optional between 0-1, default 0.5
is_storagebooleanfalsetrue or false
false Return to the official address,
default is false
hook_urlStringfalseSend a request to the address for task completion or failed notification. If not set you need to request fetch endpoint to get response

Example Response

{
    "status": "SUCCESS",
    "message": "",
    "data": {
        "jobId": "ed1a1b01-7d64-4c8a-acaa-71185d23a2f3"
    }
}

Instrumentals Cover

POST https://api.ttapi.io/producer/v1/instrumentals-swap


Perform an instrumental version of the generated audio

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
music_idstringtruemusicId returned by the previous task
sound_promptstringtrueAudio prompt words, sound_prompt and lyrics_text cannot be empty at the same time
lyrics_textstringtrueLyrics, sound_prompt and lyrics_text cannot be empty at the same time
instrumentalbooleanfalseWhether to generate pure music. If true, pure music will be generated, and custom lyrics will be ignored.
Default is false
mvStringfalseThe model used to generate the music audio ,
FUZZ-2.0
FUZZ-2.0 Raw
FUZZ-1.1 Pro
FUZZ-1.0 Pro
FUZZ-1.0
FUZZ-1.1
FUZZ-0.8
default is FUZZ-2.0
titleStringfalseMusic title
cover_art_urlstringfalseCover image url
seedstringfalseRandom Seed
lyrics_strengthnumberfalseLyrics intensity, which indicates the influence of lyrics on audio generation. It can be selected between 0-1,
with a default of 0.5
sound_strengthnumberfalseSound intensity, can be selected between 0.2-1, the default is 0.5
weirdnessnumberfalseStyle uniqueness, optional between 0-1, default 0.5
is_storagebooleanfalsetrue or false
false Return to the official address,
default is false
hook_urlStringfalseSend a request to the address for task completion or failed notification. If not set you need to request fetch endpoint to get response

Example Response

{
    "status": "SUCCESS",
    "message": "",
    "data": {
        "jobId": "ed1a1b01-7d64-4c8a-acaa-71185d23a2f3"
    }
}

Generate Music Video

POST https://api.ttapi.io/producer/v1/generate-video


Generating audio video, free endpoint

Headers

NameTypeRequiredDescription
TT-API-KEYStringtrueYour API Key in TT API used for request authorization

Request Body

NameTypeRequiredDescription
music_idstringtruemusicId returned by the previous task
presetStringfalseThree preset types of generated videos: modern player simple
default is simple

Example Response

{
    "status": "SUCCESS",
    "message": "success",
    "data": {
        "videoUrl": "https://storage.googleapis.com/corpusant-app-public/song-videos/77ce096c-22c2-442b-a868-4100867a45df:0835e01ecc5ae00a000cc5a9b8f3035dea48508645a6142cbd1d7e5b72e0d4d7.mp4",
        "status": "complete"
    }
}

Fetch Job Result

GET https://api.ttapi.io/producer/v1/fetch


Query the job results by jobId, free endpoint

Headers

NameTypeDescription
TT-API-KEY*StringYour API Key in TT API used for request authorization

Query param

NameTypeRequiredDescription
jobIdStringtrueed1a1b01-7d64-4c8a-acaa-71185d23a2f3

Async callback & fetch json

{
    "status": "SUCCESS",
    "message": "success",
    "jobId": "ffd6870b-9a83-47e6-9d57-601efced86b5",
    "data": {
        "jobId": "ffd6870b-9a83-47e6-9d57-601efced86b5",
        "action": "lyrics",
        "progress": "100%",
        "mv": "FUZZ-2.0",
        "quota": "1",
        "hookUrl": null,
        "musics": [
            {
                "musicId": "07d737cf-9509-4132-99f5-a17339bd7462",
                "title": "Work It Out",
                "lyrics": "[Verse 1]\nBeat beats beneath my breath\nSweat starts to show itself\nCan't catch a quiet breath\nFeel the fire fight itself\n\n[Pre-Chorus]\nWork won't wait, won't waste away\nPush the pace, I play today\n\n[Chorus]\nMove my muscles, make it better\nFeel the freedom in my fever\nDance the duty, dance forever\nBeat the burden, be believer\nWork it out, work it out\nMove it now, move it now\n\n[Verse 2 - Barely introducing the topic]\nSomething's spinning in my soul\nPressure pressing, taking toll\nNeed to find another role\nBreak the weight and make me whole\n\n[Pre-Chorus]\nWork won't wait, won't waste away\nPush the pace, I play today\n\n[Chorus]\nMove my muscles, make it better\nFeel the freedom in my fever\nDance the duty, dance forever\nBeat the burden, be believer\nWork it out, work it out\nMove it now, move it now\n\n[Rap]\nStress is stacking, spine is aching, spirit's shaking daily\nBut I battle with my body when the bass begins to play me\nFeel the friction fade away when feet begin to fly free\nMusic makes the madness melt, my mind begins to find me\nLabor's loading on my lungs but love is lifting lightly\nBeat becomes my breathing, brings me back to being brightly\nSweat becomes my symphony, sync becomes my saving\nDancing through the difficulty, doubt becomes my craving\nMove until the morning makes me feel like I am flying\nWork without the worry, without walls that keep me crying\nFreedom in the frequency, feeling what I'm fighting\nBody beats the burden when the bass begins its biting\n\n[Bridge]\nStop the struggle, start to shake\nFeel the weight begin to break\nMotion makes the moment take\nAll the ache away\n\n[Final Chorus]\nMove my muscles, make it better\nFeel the freedom in my fever\nDance the duty, dance forever\nBeat the burden, be believer\nWork it out, work it out\nMove it now, move it now\nWork it out, work it out\nMove it now, move it now\n\n[Outro]\nBeat beats beneath my breath\nDance the weight right off my chest",
                "imageUrl": null,
                "audioUrl": null,
                "videoUrl": null,
                "imageId": null,
                "topic": null,
                "sound": null,
                "seed": null,
                "durations": null,
                "createdAt": null
            }
        ]
    }
}