Skip to content

Suno Application Scenarios

  • 2025.07.17 Suno supports the new version v4.5+ with MV as chirp-bluejay
  • 2025.05.03 Suno supports the new version v4.5 with MV as chirp-auk
  • Suno can be applied to different scenarios by varying submission formats
  • Submissions are all POST to https://api.openai-hk.com/sunoapi/generate
  • Results are retrieved via GET at https://api.openai-hk.com/sunoapi/feed/clipsId1,clipsId2
  • Different effects can be achieved using the following request bodies
shell
curl --request POST \
  --url https://api.openai-hk.com/sunoapi/generate \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
    "gpt_description_prompt": "Nostalgia"
}'
curl --request POST \
  --url https://api.openai-hk.com/sunoapi/generate \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
    "gpt_description_prompt": "Nostalgia"
}'

1. Inspiration Mode

json
{
  "gpt_description_prompt": "Nostalgia"
}
{
  "gpt_description_prompt": "Nostalgia"
}

2. Custom Lyrics & Title

json
{
  "prompt": "[Verse]\nDays keep passing in a blur\nPiles of files never end\nDreams tucked deep inside a drawer\nCoffee cup gone cold again\n\n[Verse 2]\nClock in sharp at eight AM\nEyes so tired, barely there\nSmall talk feels so meaningless\nJust want time to disappear\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape\n\n[Verse 3]\nLunch break with a boxed meal\nSunshine bright outside the pane\nLife feels far from what I dreamed\nJust this desk and chair remain\n\n[Bridge]\nBoss's footsteps sound like thunder\nHeartbeats racing with the dread\nPapers stacked up to the ceiling\nGrumbles fade till all is said\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape",
  "mv": "chirp-v3-5",
  "title": "Work",
  "tags": " edm"
}
{
  "prompt": "[Verse]\nDays keep passing in a blur\nPiles of files never end\nDreams tucked deep inside a drawer\nCoffee cup gone cold again\n\n[Verse 2]\nClock in sharp at eight AM\nEyes so tired, barely there\nSmall talk feels so meaningless\nJust want time to disappear\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape\n\n[Verse 3]\nLunch break with a boxed meal\nSunshine bright outside the pane\nLife feels far from what I dreamed\nJust this desk and chair remain\n\n[Bridge]\nBoss's footsteps sound like thunder\nHeartbeats racing with the dread\nPapers stacked up to the ceiling\nGrumbles fade till all is said\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape",
  "mv": "chirp-v3-5",
  "title": "Work",
  "tags": " edm"
}

3. Instrumental - Custom

json
{
  "prompt": "",
  "tags": "heavy metal",
  "mv": "chirp-v3-5",
  "title": "Beijing",
  "continue_clip_id": null,
  "continue_at": null,
  "infill_start_s": null,
  "infill_end_s": null
}
{
  "prompt": "",
  "tags": "heavy metal",
  "mv": "chirp-v3-5",
  "title": "Beijing",
  "continue_clip_id": null,
  "continue_at": null,
  "infill_start_s": null,
  "infill_end_s": null
}

4. Instrumental - Inspiration Mode

json
{
  "gpt_description_prompt": "A national anthem-style dance pop song about dancing all night",
  "mv": "chirp-v3-5",
  "prompt": "",
  "make_instrumental": true
}
{
  "gpt_description_prompt": "A national anthem-style dance pop song about dancing all night",
  "mv": "chirp-v3-5",
  "prompt": "",
  "make_instrumental": true
}

5. Extend Custom Audio

A. Upload Music

First, obtain the clip_id (e.g., abcd-1234-1234-1234-abd) via the upload endpoint.

B. Extend Music (With Version Info)

  • MV: chirp-v4, chirp-auk, or chirp-bluejay
  • Task: upload_extend
json
{
  "prompt": "Lyrics",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-v4",
  "title": "Title",
  "continue_clip_id": "ca94a97d-d3f2-4a63-aeee-ba3a43384bcd",
  "continue_at": 10,
  "task": "upload_extend"
}
{
  "prompt": "Lyrics",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-v4",
  "title": "Title",
  "continue_clip_id": "ca94a97d-d3f2-4a63-aeee-ba3a43384bcd",
  "continue_at": 10,
  "task": "upload_extend"
}

C. Extend Music (Deprecated)

Note: Here, mv is either chirp-v3-5-upload or chirp-v4-upload.

json
{
  "prompt": "[Verse]\nDays keep passing in a blur\nPiles of files never end\nDreams tucked deep inside a drawer\nCoffee cup gone cold again\n\n[Verse 2]\nClock in sharp at eight AM\nEyes so tired, barely there\nSmall talk feels so meaningless\nJust want time to disappear\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape\n\n[Verse 3]\nLunch break with a boxed meal\nSunshine bright outside the pane\nLife feels far from what I dreamed\nJust this desk and chair remain\n\n[Bridge]\nBoss's footsteps sound like thunder\nHeartbeats racing with the dread\nPapers stacked up to the ceiling\nGrumbles fade till all is said\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape",
  "tags": "heavy metal",
  "mv": "chirp-v3-5-upload",
  "title": "Work",
  "continue_clip_id": "abcd-1234-1234-1234-abd",
  "continue_at": 30.792
}
{
  "prompt": "[Verse]\nDays keep passing in a blur\nPiles of files never end\nDreams tucked deep inside a drawer\nCoffee cup gone cold again\n\n[Verse 2]\nClock in sharp at eight AM\nEyes so tired, barely there\nSmall talk feels so meaningless\nJust want time to disappear\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape\n\n[Verse 3]\nLunch break with a boxed meal\nSunshine bright outside the pane\nLife feels far from what I dreamed\nJust this desk and chair remain\n\n[Bridge]\nBoss's footsteps sound like thunder\nHeartbeats racing with the dread\nPapers stacked up to the ceiling\nGrumbles fade till all is said\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape",
  "tags": "heavy metal",
  "mv": "chirp-v3-5-upload",
  "title": "Work",
  "continue_clip_id": "abcd-1234-1234-1234-abd",
  "continue_at": 30.792
}

D. Concatenate Full Music

  • Note: is_infill is false.
  • Obtain the new song ID after replacement and check status via the query endpoint.
  • Cost: Equivalent to one song.

    POST https://api.openai-hk.com/sunoapi/generate/concat

shell
curl --request POST \
  --url https://api.openai-hk.com/sunoapi/generate/concat \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": false
}'
curl --request POST \
  --url https://api.openai-hk.com/sunoapi/generate/concat \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": false
}'

Request Body:

json
{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": false
}
{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": false
}

6. Extend Music & Get Full Track

Note: Extending officially generated music only—custom uploads not supported.

A. Generate Music

Use scenarios 1, 2, or 3 to generate music and obtain a clip_id (e.g., abcd-1234-1234-1234-abd).

B. Extend Music

This will return 2 new clip_ids, one of which is newid-1234-1234-1234-one.

json
{
  "prompt": "[Verse]\nDays keep passing in a blur\nPiles of files never end\nDreams tucked deep inside a drawer\nCoffee cup gone cold again\n\n[Verse 2]\nClock in sharp at eight AM\nEyes so tired, barely there\nSmall talk feels so meaningless\nJust want time to disappear\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape\n\n[Verse 3]\nLunch break with a boxed meal\nSunshine bright outside the pane\nLife feels far from what I dreamed\nJust this desk and chair remain\n\n[Bridge]\nBoss's footsteps sound like thunder\nHeartbeats racing with the dread\nPapers stacked up to the ceiling\nGrumbles fade till all is said\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape",
  "tags": "heavy metal",
  "mv": "chirp-v3-5",
  "title": "Work",
  "continue_clip_id": "abcd-1234-1234-1234-abd",
  "continue_at": 30,
  "task": "extend"
}
{
  "prompt": "[Verse]\nDays keep passing in a blur\nPiles of files never end\nDreams tucked deep inside a drawer\nCoffee cup gone cold again\n\n[Verse 2]\nClock in sharp at eight AM\nEyes so tired, barely there\nSmall talk feels so meaningless\nJust want time to disappear\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape\n\n[Verse 3]\nLunch break with a boxed meal\nSunshine bright outside the pane\nLife feels far from what I dreamed\nJust this desk and chair remain\n\n[Bridge]\nBoss's footsteps sound like thunder\nHeartbeats racing with the dread\nPapers stacked up to the ceiling\nGrumbles fade till all is said\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape",
  "tags": "heavy metal",
  "mv": "chirp-v3-5",
  "title": "Work",
  "continue_clip_id": "abcd-1234-1234-1234-abd",
  "continue_at": 30,
  "task": "extend"
}

C. Concatenate Full Music

  • Note: is_infill is false.
  • Obtain the new song ID after replacement and check status via the query endpoint.
  • Cost: 100 credits (equivalent to $0.01).

    POST https://api.openai-hk.com/sunoapi/generate/concat

shell
curl --request POST \
  --url https://api.openai-hk.com/sunoapi/generate/concat \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": false
}'
curl --request POST \
  --url https://api.openai-hk.com/sunoapi/generate/concat \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": false
}'

Request Body:

json
{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": false
}
{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": false
}

7. Cover Music: Style Remix

A. Generate Music

Use scenarios 1, 2, or 3 to generate music and obtain a clip_id (e.g., abcd-1234-1234-1234-abd).
Alternatively, upload a custom audio file to cover.

B. Cover Music

  • Note: mv is chirp-v4, chirp-auk, or chirp-bluejay.
  • task is cover.
  • Can be used across accounts—no worry about account deactivation.
  • If cover_clip_id is from an upload, it cannot be used across accounts.
  • mv no longer uses chirp-v3-5-tau or chirp-v4-tau.
json
{
  "prompt": "[Verse]\nDays keep passing in a blur\nPiles of files never end\nDreams tucked deep inside a drawer\nCoffee cup gone cold again\n\n[Verse 2]\nClock in sharp at eight AM\nEyes so tired, barely there\nSmall talk feels so meaningless\nJust want time to disappear\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape\n\n[Verse 3]\nLunch break with a boxed meal\nSunshine bright outside the pane\nLife feels far from what I dreamed\nJust this desk and chair remain\n\n[Bridge]\nBoss's footsteps sound like thunder\nHeartbeats racing with the dread\nPapers stacked up to the ceiling\nGrumbles fade till all is said\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape",
  "generation_type": "TEXT",
  "tags": "rock, punk",
  "negative_tags": "",
  "mv": "chirp-auk",
  "title": "Work (Cover)",
  "continue_clip_id": null,
  "continue_at": null,
  "continued_aligned_prompt": null,
  "infill_start_s": null,
  "infill_end_s": null,
  "task": "cover",
  "cover_clip_id": "abcd-1234-1234-1234-abd"
}
{
  "prompt": "[Verse]\nDays keep passing in a blur\nPiles of files never end\nDreams tucked deep inside a drawer\nCoffee cup gone cold again\n\n[Verse 2]\nClock in sharp at eight AM\nEyes so tired, barely there\nSmall talk feels so meaningless\nJust want time to disappear\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape\n\n[Verse 3]\nLunch break with a boxed meal\nSunshine bright outside the pane\nLife feels far from what I dreamed\nJust this desk and chair remain\n\n[Bridge]\nBoss's footsteps sound like thunder\nHeartbeats racing with the dread\nPapers stacked up to the ceiling\nGrumbles fade till all is said\n\n[Chorus]\nWork work, boss keeps calling\nFinish finish, then I'm safe\nOvertime just for some earnings\nDreams dreams when will they take shape",
  "generation_type": "TEXT",
  "tags": "rock, punk",
  "negative_tags": "",
  "mv": "chirp-auk",
  "title": "Work (Cover)",
  "continue_clip_id": null,
  "continue_at": null,
  "continued_aligned_prompt": null,
  "infill_start_s": null,
  "infill_end_s": null,
  "task": "cover",
  "cover_clip_id": "abcd-1234-1234-1234-abd"
}

8. Replace Section: Modify Segment

A. Generate Music

Use scenarios 1, 2, or 3 to generate music and obtain a clip_id (e.g., abcd-1234-1234-1234-abd).

B. Replace Section

  • task is infill.
  • Note: mv is chirp-v4, chirp-auk, or chirp-bluejay.
  • Tip: The replacement lyrics should overlap with the original, ideally matching timing.
  • infill_start_s: Start time, infill_end_s: End time, infill_dur_s = infill_end_s - infill_start_s.
  • Can be used across accounts.
  • Returns 2 new clip_ids—select one (newid-1234-1234-1234-one) for the next step.
  • mv no longer uses chirp-v3-5-tau or chirp-v4-tau.
json
{
  "task": "infill",
  "generation_type": "TEXT",
  "title": "Measure of Longing - Replace",
  "tags": "Sorrow/Sad,Female Vocals,Mandarin",
  "mv": "chirp-auk",
  "prompt": "《Measure of Longing》 \n \nLyrics: Aguo Yiluo\nTree rings mark the warmth of your stride. \nEvery fallen leaf calls your name,\nBut the wind scatters them like mist. \nYour guitar in the corner \nHolds all the rainy seasons,\nDampening the rosewood’s spine. \nIf longing could be wound into new strings,\nThey’d shatter at a touch \nInto echoes of the past. \nTime is a rewinding tape,\nYour laughter clearer as night deepens. \nIf tears could water a time tunnel,\nI’d cry my eyes into an ocean. \nWhen every spring reminds me of you,\nI learn to breathe through wounds. \nLoving you still,\nWith all",
  "metadata": {
    "infill_lyrics": ". \nYour guitar in the corner \nHolds all the rainy seasons,\nDampening the rosewood’s spine. \nIf longing could be wound into new strings,\nThey’d shatter at a touch \nInto echoes of the past"
  },
  "continue_clip_id": "8a858961-8831-4423-8ffb-2dec096aea0a",
  "continued_aligned_prompt": "《Measure of Longing》 \n \nLyrics: Aguo Yiluo\nTree rings mark the warmth of your stride. \nEvery fallen leaf calls your name,\nBut the wind scatters them like mist. \nYour guitar in the corner \nHolds all the rainy seasons,\nDampening the rosewood’s spine. \nIf longing could be wound into new strings,\nThey’d shatter at a touch \nInto echoes of the past. \nTime is a rewinding tape,\nYour laughter clearer as night deepens. \nIf tears could water a time tunnel,\nI’d cry my eyes into an ocean. \nWhen every spring reminds me of you,\nI learn to breathe through wounds. \nLoving you still,\nWith all \nMy lifeless heartbeat.\nYour guitar in the corner \nHolds all the rainy seasons,\nDampening the rosewood’s spine. \nIf longing could be wound into new strings,\nThey’d shatter at a touch \nInto echoes of the past. \nWhen every spring reminds me of you,\nI learn to breathe through wounds. \nLoving you still,\nWith all \nMy lifeless heartbeat.\n",
  "infill_context_start_s": 3.48,
  "infill_context_end_s": 109.96,
  "infill_start_s": 33.48,
  "infill_end_s": 79.96,
  "infill_dur_s": 46.48
}
{
  "task": "infill",
  "generation_type": "TEXT",
  "title": "Measure of Longing - Replace",
  "tags": "Sorrow/Sad,Female Vocals,Mandarin",
  "mv": "chirp-auk",
  "prompt": "《Measure of Longing》 \n \nLyrics: Aguo Yiluo\nTree rings mark the warmth of your stride. \nEvery fallen leaf calls your name,\nBut the wind scatters them like mist. \nYour guitar in the corner \nHolds all the rainy seasons,\nDampening the rosewood’s spine. \nIf longing could be wound into new strings,\nThey’d shatter at a touch \nInto echoes of the past. \nTime is a rewinding tape,\nYour laughter clearer as night deepens. \nIf tears could water a time tunnel,\nI’d cry my eyes into an ocean. \nWhen every spring reminds me of you,\nI learn to breathe through wounds. \nLoving you still,\nWith all",
  "metadata": {
    "infill_lyrics": ". \nYour guitar in the corner \nHolds all the rainy seasons,\nDampening the rosewood’s spine. \nIf longing could be wound into new strings,\nThey’d shatter at a touch \nInto echoes of the past"
  },
  "continue_clip_id": "8a858961-8831-4423-8ffb-2dec096aea0a",
  "continued_aligned_prompt": "《Measure of Longing》 \n \nLyrics: Aguo Yiluo\nTree rings mark the warmth of your stride. \nEvery fallen leaf calls your name,\nBut the wind scatters them like mist. \nYour guitar in the corner \nHolds all the rainy seasons,\nDampening the rosewood’s spine. \nIf longing could be wound into new strings,\nThey’d shatter at a touch \nInto echoes of the past. \nTime is a rewinding tape,\nYour laughter clearer as night deepens. \nIf tears could water a time tunnel,\nI’d cry my eyes into an ocean. \nWhen every spring reminds me of you,\nI learn to breathe through wounds. \nLoving you still,\nWith all \nMy lifeless heartbeat.\nYour guitar in the corner \nHolds all the rainy seasons,\nDampening the rosewood’s spine. \nIf longing could be wound into new strings,\nThey’d shatter at a touch \nInto echoes of the past. \nWhen every spring reminds me of you,\nI learn to breathe through wounds. \nLoving you still,\nWith all \nMy lifeless heartbeat.\n",
  "infill_context_start_s": 3.48,
  "infill_context_end_s": 109.96,
  "infill_start_s": 33.48,
  "infill_end_s": 79.96,
  "infill_dur_s": 46.48
}

C. Confirm & Concatenate Full Music

  • Note: is_infill is true.
  • Obtain the new song ID after replacement and check status via the query endpoint.
  • Cost: 100 credits (equivalent to $0.01).

    POST https://api.openai-hk.com/sunoapi/generate/concat

shell
curl --request POST \
  --url https://api.openai-hk.com/sunoapi/generate/concat \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": true
}'
curl --request POST \
  --url https://api.openai-hk.com/sunoapi/generate/concat \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": true
}'

Request Body:

json
{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": true
}
{
  "clip_id": "newid-1234-1234-1234-one",
  "is_infill": true
}

9. Persona: Artist Style

A. Generate Music

Use scenarios 1, 2, or 3 to generate music and obtain a clip_id (e.g., 54834687-5e79-4f08-8e14-cf188f15b598).

B. Create Persona

POST https://api.openai-hk.com/sunoapi/persona/create/

  • clip_id must exist in the system (not from upload).
  • Cannot be used across accounts—deactivated accounts lose access.
  • Costs 100 credits to prevent abuse.

Request Body:

json
{
  "root_clip_id": "54834687-5e79-4f08-8e14-cf188f15b598",
  "name": "Persona Title",
  "description": "Persona Description",
  "clips": ["54834687-5e79-4f08-8e14-cf188f15b598"],
  "is_public": true
}
{
  "root_clip_id": "54834687-5e79-4f08-8e14-cf188f15b598",
  "name": "Persona Title",
  "description": "Persona Description",
  "clips": ["54834687-5e79-4f08-8e14-cf188f15b598"],
  "is_public": true
}

Response: Key id (e.g., fd213afd-ac1c-4822-9802-c1c0ea45e77b) is set as persona_id for the next step.

json
{
  "id": "fd213afd-ac1c-4822-9802-c1c0ea45e77b",
  "name": "food",
  "description": "123",
  "root_clip_id": "54834687-5e79-4f08-8e14-cf188f15b598",
  "clip": {
    "id": "54834687-5e79-4f08-8e14-cf188f15b598",
    "video_url": "https://cdn1.suno.ai/54834687-5e79-4f08-8e14-cf188f15b598.mp4",
    "audio_url": "https://cdn1.suno.ai/54834687-5e79-4f08-8e14-cf188f15b598.mp3",
    "image_url": "https://cdn2.suno.ai/image_54834687-5e79-4f08-8e14-cf188f15b598.jpeg",
    "image_large_url": "https://cdn2.suno.ai/image_large_54834687-5e79-4f08-8e14-cf188f15b598.jpeg",
    "major_model_version": "v4",
    "model_name": "chirp-v4",
    "metadata": {
      "tags": "electronic pop, tropical house fusion",
      "prompt": "",
      "type": "gen",
      "duration": 190,
      "refund_credits": false,
      "stream": true
    },
    "is_liked": false,
    "user_id": "21de6d0f-398c-467c-9957-8fa9065f3ca6",
    "display_name": "SensoryRecorders4685",
    "handle": "sensoryrecorders4685",
    "is_handle_updated": false,
    "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
    "is_trashed": false,
    "created_at": "2024-12-23T10:34:30.144Z",
    "status": "complete",
    "title": "noks noko wane",
    "play_count": 0,
    "upvote_count": 0,
    "is_public": false
  },
  "user_display_name": "SensoryRecorders4685",
  "user_handle": "sensoryrecorders4685",
  "user_image_url": "https://cdn1.suno.ai/defaultPink.webp",
  "persona_clips": [
    {
      "clip": {
        "id": "54834687-5e79-4f08-8e14-cf188f15b598",
        "video_url": "https://cdn1.suno.ai/54834687-5e79-4f08-8e14-cf188f15b598.mp4",
        "audio_url": "https://cdn1.suno.ai/54834687-5e79-4f08-8e14-cf188f15b598.mp3",
        "image_url": "https://cdn2.suno.ai/image_54834687-5e79-4f08-8e14-cf188f15b598.jpeg",
        "image_large_url": "https://cdn2.suno.ai/image_large_54834687-5e79-4f08-8e14-cf188f15b598.jpeg",
        "major_model_version": "v4",
        "model_name": "chirp-v4",
        "metadata": {
          "tags": "electronic pop, tropical house fusion",
          "prompt": "",
          "type": "gen",
          "duration": 190,
          "refund_credits": false,
          "stream": true
        },
        "is_liked": false,
        "user_id": "21de6d0f-398c-467c-9957-8fa9065f3ca6",
        "display_name": "SensoryRecorders4685",
        "handle": "sensoryrecorders4685",
        "is_handle_updated": false,
        "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
        "is_trashed": false,
        "created_at": "2024-12-23T10:34:30.144Z",
        "status": "complete",
        "title": "noks noko wane",
        "play_count": 0,
        "upvote_count": 0,
        "is_public": false
      },
      "id": 11288925
    }
  ]
}
{
  "id": "fd213afd-ac1c-4822-9802-c1c0ea45e77b",
  "name": "food",
  "description": "123",
  "root_clip_id": "54834687-5e79-4f08-8e14-cf188f15b598",
  "clip": {
    "id": "54834687-5e79-4f08-8e14-cf188f15b598",
    "video_url": "https://cdn1.suno.ai/54834687-5e79-4f08-8e14-cf188f15b598.mp4",
    "audio_url": "https://cdn1.suno.ai/54834687-5e79-4f08-8e14-cf188f15b598.mp3",
    "image_url": "https://cdn2.suno.ai/image_54834687-5e79-4f08-8e14-cf188f15b598.jpeg",
    "image_large_url": "https://cdn2.suno.ai/image_large_54834687-5e79-4f08-8e14-cf188f15b598.jpeg",
    "major_model_version": "v4",
    "model_name": "chirp-v4",
    "metadata": {
      "tags": "electronic pop, tropical house fusion",
      "prompt": "",
      "type": "gen",
      "duration": 190,
      "refund_credits": false,
      "stream": true
    },
    "is_liked": false,
    "user_id": "21de6d0f-398c-467c-9957-8fa9065f3ca6",
    "display_name": "SensoryRecorders4685",
    "handle": "sensoryrecorders4685",
    "is_handle_updated": false,
    "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
    "is_trashed": false,
    "created_at": "2024-12-23T10:34:30.144Z",
    "status": "complete",
    "title": "noks noko wane",
    "play_count": 0,
    "upvote_count": 0,
    "is_public": false
  },
  "user_display_name": "SensoryRecorders4685",
  "user_handle": "sensoryrecorders4685",
  "user_image_url": "https://cdn1.suno.ai/defaultPink.webp",
  "persona_clips": [
    {
      "clip": {
        "id": "54834687-5e79-4f08-8e14-cf188f15b598",
        "video_url": "https://cdn1.suno.ai/54834687-5e79-4f08-8e14-cf188f15b598.mp4",
        "audio_url": "https://cdn1.suno.ai/54834687-5e79-4f08-8e14-cf188f15b598.mp3",
        "image_url": "https://cdn2.suno.ai/image_54834687-5e79-4f08-8e14-cf188f15b598.jpeg",
        "image_large_url": "https://cdn2.suno.ai/image_large_54834687-5e79-4f08-8e14-cf188f15b598.jpeg",
        "major_model_version": "v4",
        "model_name": "chirp-v4",
        "metadata": {
          "tags": "electronic pop, tropical house fusion",
          "prompt": "",
          "type": "gen",
          "duration": 190,
          "refund_credits": false,
          "stream": true
        },
        "is_liked": false,
        "user_id": "21de6d0f-398c-467c-9957-8fa9065f3ca6",
        "display_name": "SensoryRecorders4685",
        "handle": "sensoryrecorders4685",
        "is_handle_updated": false,
        "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
        "is_trashed": false,
        "created_at": "2024-12-23T10:34:30.144Z",
        "status": "complete",
        "title": "noks noko wane",
        "play_count": 0,
        "upvote_count": 0,
        "is_public": false
      },
      "id": 11288925
    }
  ]
}

C. Create Using persona_id

POST https://api.openai-hk.com/suno/generate

  • Note: mv is chirp-v4, chirp-auk, or chirp-bluejay.
  • task is artist_consistency.
  • persona_id is obtained from step B.
  • artist_clip_id is the clip_id from step A.
  • Can be used across accounts.
  • mv no longer uses chirp-v3-5-tau or chirp-v4-tau.
json
{
  "prompt": "[Verse]\nFrom dawn till dusk you're by my side\nWarming me through storm and tide\nNo fear when winds are wild and wide\nHand in hand we'll never divide\n\n[Verse 2]\nWith you I'm never left alone\nLike stars that guide me when I roam\nNo road too far, no path unknown\nYou're the light that leads me home\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Verse 3]\nYou're my shelter from the gale\nEvery night you fill my dreams\nThough life may test and trials assail\nWith you all things gleam\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Bridge]\nEvery moment life bestows\nWith you I learn and grow\nAll tomorrows brighter glow\nWith you I stand tall and know",
  "generation_type": "TEXT",
  "tags": "electronic, pop",
  "negative_tags": "",
  "mv": "chirp-v4",
  "title": "Darling",
  "task": "artist_consistency",
  "persona_id": "0f6e8077-a7ba-4fc8-8f60-de02c66e56ce",
  "artist_clip_id": "a5fa604c-18b8-4e7f-8d25-9412d4ba8163"
}
{
  "prompt": "[Verse]\nFrom dawn till dusk you're by my side\nWarming me through storm and tide\nNo fear when winds are wild and wide\nHand in hand we'll never divide\n\n[Verse 2]\nWith you I'm never left alone\nLike stars that guide me when I roam\nNo road too far, no path unknown\nYou're the light that leads me home\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Verse 3]\nYou're my shelter from the gale\nEvery night you fill my dreams\nThough life may test and trials assail\nWith you all things gleam\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Bridge]\nEvery moment life bestows\nWith you I learn and grow\nAll tomorrows brighter glow\nWith you I stand tall and know",
  "generation_type": "TEXT",
  "tags": "electronic, pop",
  "negative_tags": "",
  "mv": "chirp-v4",
  "title": "Darling",
  "task": "artist_consistency",
  "persona_id": "0f6e8077-a7ba-4fc8-8f60-de02c66e56ce",
  "artist_clip_id": "a5fa604c-18b8-4e7f-8d25-9412d4ba8163"
}

Response:

json
{
  "id": "2d453a5f-c539-4fe0-9a66-24058c5dfb6a",
  "clips": [
    {
      "id": "0e6937df-64d8-41f9-82c6-b6dadc4426a8",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "v4",
      "model_name": "chirp-v4",
      "metadata": {
        "tags": "electronic, pop",
        "prompt": "[Verse]\nFrom dawn till dusk you're by my side\nWarming me through storm and tide\nNo fear when winds are wild and wide\nHand in hand we'll never divide\n\n[Verse 2]\nWith you I'm never left alone\nLike stars that guide me when I roam\nNo road too far, no path unknown\nYou're the light that leads me home\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Verse 3]\nYou're my shelter from the gale\nEvery night you fill my dreams\nThough life may test and trials assail\nWith you all things gleam\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Bridge]\nEvery moment life bestows\nWith you I learn and grow\nAll tomorrows brighter glow\nWith you I stand tall and know",
        "type": "gen",
        "stream": true,
        "has_vocal": false,
        "artist_clip_id": "a5fa604c-18b8-4e7f-8d25-9412d4ba8163",
        "persona_id": "0f6e8077-a7ba-4fc8-8f60-de02c66e56ce",
        "task": "artist_consistency"
      },
      "is_liked": false,
      "user_id": "a3da04d5-0442-4bd3-b837-4c73ff600914",
      "display_name": "TwinklingVenue1595",
      "handle": "twinklingvenue1595",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
      "is_trashed": false,
      "created_at": "2024-12-23T10:37:43.596Z",
      "status": "submitted",
      "title": "Darling",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false
    },
    {
      "id": "fff58de4-7ccc-4b95-937b-3b66ec07cc65",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "v4",
      "model_name": "chirp-v4",
      "metadata": {
        "tags": "electronic, pop",
        "prompt": "[Verse]\nFrom dawn till dusk you're by my side\nWarming me through storm and tide\nNo fear when winds are wild and wide\nHand in hand we'll never divide\n\n[Verse 2]\nWith you I'm never left alone\nLike stars that guide me when I roam\nNo road too far, no path unknown\nYou're the light that leads me home\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Verse 3]\nYou're my shelter from the gale\nEvery night you fill my dreams\nThough life may test and trials assail\nWith you all things gleam\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Bridge]\nEvery moment life bestows\nWith you I learn and grow\nAll tomorrows brighter glow\nWith you I stand tall and know",
        "type": "gen",
        "stream": true,
        "has_vocal": false,
        "artist_clip_id": "a5fa604c-18b8-4e7f-8d25-9412d4ba8163",
        "persona_id": "0f6e8077-a7ba-4fc8-8f60-de02c66e56ce",
        "task": "artist_consistency"
      },
      "is_liked": false,
      "user_id": "a3da04d5-0442-4bd3-b837-4c73ff600914",
      "display_name": "TwinklingVenue1595",
      "handle": "twinklingvenue1595",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
      "is_trashed": false,
      "created_at": "2024-12-23T10:37:43.596Z",
      "status": "submitted",
      "title": "Darling",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false
    }
  ],
  "metadata": {
    "tags": "electronic, pop",
    "prompt": "[Verse]\nFrom dawn till dusk you're by my side\nWarming me through storm and tide\nNo fear when winds are wild and wide\nHand in hand we'll never divide\n\n[Verse 2]\nWith you I'm never left alone\nLike stars that guide me when I roam\nNo road too far, no path unknown\nYou're the light that leads me home\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Verse 3]\nYou're my shelter from the gale\nEvery night you fill my dreams\nThough life may test and trials assail\nWith you all things gleam\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Bridge]\nEvery moment life bestows\nWith you I learn and grow\nAll tomorrows brighter glow\nWith you I stand tall and know",
    "type": "gen",
    "stream": true,
    "has_vocal": false,
    "artist_clip_id": "a5fa604c-18b8-4e7f-8d25-9412d4ba8163",
    "persona_id": "0f6e8077-a7ba-4fc8-8f60-de02c66e56ce",
    "task": "artist_consistency"
  },
  "major_model_version": "v4",
  "status": "complete",
  "created_at": "2024-12-23T10:37:43.581Z",
  "batch_size": 1
}
{
  "id": "2d453a5f-c539-4fe0-9a66-24058c5dfb6a",
  "clips": [
    {
      "id": "0e6937df-64d8-41f9-82c6-b6dadc4426a8",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "v4",
      "model_name": "chirp-v4",
      "metadata": {
        "tags": "electronic, pop",
        "prompt": "[Verse]\nFrom dawn till dusk you're by my side\nWarming me through storm and tide\nNo fear when winds are wild and wide\nHand in hand we'll never divide\n\n[Verse 2]\nWith you I'm never left alone\nLike stars that guide me when I roam\nNo road too far, no path unknown\nYou're the light that leads me home\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Verse 3]\nYou're my shelter from the gale\nEvery night you fill my dreams\nThough life may test and trials assail\nWith you all things gleam\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Bridge]\nEvery moment life bestows\nWith you I learn and grow\nAll tomorrows brighter glow\nWith you I stand tall and know",
        "type": "gen",
        "stream": true,
        "has_vocal": false,
        "artist_clip_id": "a5fa604c-18b8-4e7f-8d25-9412d4ba8163",
        "persona_id": "0f6e8077-a7ba-4fc8-8f60-de02c66e56ce",
        "task": "artist_consistency"
      },
      "is_liked": false,
      "user_id": "a3da04d5-0442-4bd3-b837-4c73ff600914",
      "display_name": "TwinklingVenue1595",
      "handle": "twinklingvenue1595",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
      "is_trashed": false,
      "created_at": "2024-12-23T10:37:43.596Z",
      "status": "submitted",
      "title": "Darling",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false
    },
    {
      "id": "fff58de4-7ccc-4b95-937b-3b66ec07cc65",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "v4",
      "model_name": "chirp-v4",
      "metadata": {
        "tags": "electronic, pop",
        "prompt": "[Verse]\nFrom dawn till dusk you're by my side\nWarming me through storm and tide\nNo fear when winds are wild and wide\nHand in hand we'll never divide\n\n[Verse 2]\nWith you I'm never left alone\nLike stars that guide me when I roam\nNo road too far, no path unknown\nYou're the light that leads me home\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Verse 3]\nYou're my shelter from the gale\nEvery night you fill my dreams\nThough life may test and trials assail\nWith you all things gleam\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Bridge]\nEvery moment life bestows\nWith you I learn and grow\nAll tomorrows brighter glow\nWith you I stand tall and know",
        "type": "gen",
        "stream": true,
        "has_vocal": false,
        "artist_clip_id": "a5fa604c-18b8-4e7f-8d25-9412d4ba8163",
        "persona_id": "0f6e8077-a7ba-4fc8-8f60-de02c66e56ce",
        "task": "artist_consistency"
      },
      "is_liked": false,
      "user_id": "a3da04d5-0442-4bd3-b837-4c73ff600914",
      "display_name": "TwinklingVenue1595",
      "handle": "twinklingvenue1595",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
      "is_trashed": false,
      "created_at": "2024-12-23T10:37:43.596Z",
      "status": "submitted",
      "title": "Darling",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false
    }
  ],
  "metadata": {
    "tags": "electronic, pop",
    "prompt": "[Verse]\nFrom dawn till dusk you're by my side\nWarming me through storm and tide\nNo fear when winds are wild and wide\nHand in hand we'll never divide\n\n[Verse 2]\nWith you I'm never left alone\nLike stars that guide me when I roam\nNo road too far, no path unknown\nYou're the light that leads me home\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Verse 3]\nYou're my shelter from the gale\nEvery night you fill my dreams\nThough life may test and trials assail\nWith you all things gleam\n\n[Chorus]\nDarling darling I love you true\nYou're the only one I pursue\nNo matter where this world may take me\nMy heart will always follow you\n\n[Bridge]\nEvery moment life bestows\nWith you I learn and grow\nAll tomorrows brighter glow\nWith you I stand tall and know",
    "type": "gen",
    "stream": true,
    "has_vocal": false,
    "artist_clip_id": "a5fa604c-18b8-4e7f-8d25-9412d4ba8163",
    "persona_id": "0f6e8077-a7ba-4fc8-8f60-de02c66e56ce",
    "task": "artist_consistency"
  },
  "major_model_version": "v4",
  "status": "complete",
  "created_at": "2024-12-23T10:37:43.581Z",
  "batch_size": 1
}

10. Stems: Vocal & Instrumental Separation

  • Vocals: Isolated vocal track.
  • Instrumental: Backing track (no vocals).

A. Generate Music

Use scenarios 1, 2, or 3 to generate music and obtain a clip_id (e.g., a624123d-22cc-4d4d-bf28-78d312f61597).

B. Stem Separation (Deprecated)

  • Officially deprecated—use the new endpoint below.

    GET https://api.openai-hk.com/sunoapi/act/stems/a624123d-22cc-4d4d-bf28-78d312f61597

  • Costs 100 credits to prevent abuse.
  • Returns clip_1 and clip_2.
  • Cannot be used across accounts—deactivated accounts lose access.

B. Stem Separation (New)

post https://api.openai-hk.com/suno/generate

Request Body

  • Note: mv is chirp-auk
  • task is gen_stem
  • stem_task is two
  • stem_type_group_name is Two
  • continue_clip_id is the clip_id from Step A
  • Cross-account allowed
  • Billing: One generation fee
json
{
  "task": "gen_stem",
  "generation_type": "TEXT",
  "title": "String of Safety",
  "mv": "chirp-auk",
  "prompt": "",
  "make_instrumental": true,
  "continue_clip_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
  "continued_aligned_prompt": null,
  "continue_at": null,
  "stem_type_id": 91,
  "stem_type_group_name": "Two",
  "stem_task": "two"
}
{
  "task": "gen_stem",
  "generation_type": "TEXT",
  "title": "String of Safety",
  "mv": "chirp-auk",
  "prompt": "",
  "make_instrumental": true,
  "continue_clip_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
  "continued_aligned_prompt": null,
  "continue_at": null,
  "stem_type_id": 91,
  "stem_type_group_name": "Two",
  "stem_task": "two"
}

Response Body

json
{
  "clips": [
    {
      "id": "5f3587e2-75fb-4c36-84b3-3ec113897a4c",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "",
      "model_name": "",
      "metadata": {
        "tags": "Chinese",
        "prompt": "Under the distant starry sky, who still lingers in hesitation?\nLike a fish that cannot swim, I can only blame myself for not having strong fins.\nTurn hesitation into strength, take setbacks as your guide.\nUntil the dream comes true, I stand firm in waiting.\nYesterday’s time has slipped away, tomorrow I will follow the wind’s footsteps, climbing to the peak.\nCall out, let’s set off, riding on the back of the dream dragon, traversing the bumps of fate.\nBreak free from the shackles of hardship, even if everything is lost, people still yearn for a warm embrace.\nThe reason people can feel others’ joy is because of kindness in their hearts.\nTurn hesitation into strength, take setbacks as your guide.\nI’m still that fish that cannot swim, blaming myself for not having strong fins.",
        "stem_from_id": "a624123d-22cc-4d4d-bf28-78d312f61597",
        "type": "stem",
        "duration": 217.24
      },
      "is_liked": false,
      "user_id": "58387c47-dc80-466f-a7b1-a2eed61c24fb",
      "display_name": "FluidXylophone2289",
      "handle": "fluidxylophone2289",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
      "is_trashed": false,
      "created_at": "2024-12-25T16:51:36.619Z",
      "status": "queued",
      "title": "Riding the Dream Dragon - Vocals",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false
    },
    {
      "id": "9c85d619-4cac-4561-8fa3-604c116fa1c5",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "",
      "model_name": "",
      "metadata": {
        "tags": "Chinese",
        "prompt": "",
        "stem_from_id": "a624123d-22cc-4d4d-bf28-78d312f61597",
        "type": "stem",
        "duration": 217.24
      },
      "is_liked": false,
      "user_id": "58387c47-dc80-466f-a7b1-a2eed61c24fb",
      "display_name": "FluidXylophone2289",
      "handle": "fluidxylophone2289",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
      "is_trashed": false,
      "created_at": "2024-12-25T16:51:36.625Z",
      "status": "queued",
      "title": "Riding the Dream Dragon - Instrumental",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false
    }
  ]
}
{
  "clips": [
    {
      "id": "5f3587e2-75fb-4c36-84b3-3ec113897a4c",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "",
      "model_name": "",
      "metadata": {
        "tags": "Chinese",
        "prompt": "Under the distant starry sky, who still lingers in hesitation?\nLike a fish that cannot swim, I can only blame myself for not having strong fins.\nTurn hesitation into strength, take setbacks as your guide.\nUntil the dream comes true, I stand firm in waiting.\nYesterday’s time has slipped away, tomorrow I will follow the wind’s footsteps, climbing to the peak.\nCall out, let’s set off, riding on the back of the dream dragon, traversing the bumps of fate.\nBreak free from the shackles of hardship, even if everything is lost, people still yearn for a warm embrace.\nThe reason people can feel others’ joy is because of kindness in their hearts.\nTurn hesitation into strength, take setbacks as your guide.\nI’m still that fish that cannot swim, blaming myself for not having strong fins.",
        "stem_from_id": "a624123d-22cc-4d4d-bf28-78d312f61597",
        "type": "stem",
        "duration": 217.24
      },
      "is_liked": false,
      "user_id": "58387c47-dc80-466f-a7b1-a2eed61c24fb",
      "display_name": "FluidXylophone2289",
      "handle": "fluidxylophone2289",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
      "is_trashed": false,
      "created_at": "2024-12-25T16:51:36.619Z",
      "status": "queued",
      "title": "Riding the Dream Dragon - Vocals",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false
    },
    {
      "id": "9c85d619-4cac-4561-8fa3-604c116fa1c5",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "",
      "model_name": "",
      "metadata": {
        "tags": "Chinese",
        "prompt": "",
        "stem_from_id": "a624123d-22cc-4d4d-bf28-78d312f61597",
        "type": "stem",
        "duration": 217.24
      },
      "is_liked": false,
      "user_id": "58387c47-dc80-466f-a7b1-a2eed61c24fb",
      "display_name": "FluidXylophone2289",
      "handle": "fluidxylophone2289",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
      "is_trashed": false,
      "created_at": "2024-12-25T16:51:36.625Z",
      "status": "queued",
      "title": "Riding the Dream Dragon - Instrumental",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false
    }
  ]
}

C. Fetch Results

get https://api.openai-hk.com/sunoapi/feed/5f3587e2-75fb-4c36-84b3-3ec113897a4c,9c85d619-4cac-4561-8fa3-604c116fa1c5

Response Body

json
[
  {
    "audio_url": "https://cdn1.suno.ai/5f3587e2-75fb-4c36-84b3-3ec113897a4c.mp3",
    "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
    "created_at": "2024-12-25T16:51:36.619Z",
    "display_name": "FluidXylophone2289",
    "handle": "fluidxylophone2289",
    "id": "5f3587e2-75fb-4c36-84b3-3ec113897a4c",
    "image_large_url": "https://cdn2.suno.ai/image_large_5f3587e2-75fb-4c36-84b3-3ec113897a4c.jpeg",
    "image_url": "https://cdn2.suno.ai/image_5f3587e2-75fb-4c36-84b3-3ec113897a4c.jpeg",
    "is_handle_updated": false,
    "is_liked": false,
    "is_public": false,
    "is_trashed": false,
    "major_model_version": "",
    "metadata": {
      "duration": 217.24,
      "prompt": "Under the distant starry sky, who still lingers in hesitation?\nLike a fish that cannot swim, I can only blame myself for not having strong fins.\nTurn hesitation into strength, take setbacks as your guide.\nUntil the dream comes true, I stand firm in waiting.\nYesterday’s time has slipped away, tomorrow I will follow the wind’s footsteps, climbing to the peak.\nCall out, let’s set off, riding on the back of the dream dragon, traversing the bumps of fate.\nBreak free from the shackles of hardship, even if everything is lost, people still yearn for a warm embrace.\nThe reason people can feel others’ joy is because of kindness in their hearts.\nTurn hesitation into strength, take setbacks as your guide.\nI’m still that fish that cannot swim, blaming myself for not having strong fins.",
      "stem_from_id": "a624123d-22cc-4d4d-bf28-78d312f61597",
      "tags": "Chinese",
      "type": "stem"
    },
    "model_name": "",
    "play_count": 0,
    "status": "complete",
    "title": "Riding the Dream Dragon - Vocals",
    "upvote_count": 0,
    "video_url": "https://cdn1.suno.ai/5f3587e2-75fb-4c36-84b3-3ec113897a4c.mp4"
  },
  {
    "audio_url": "https://cdn1.suno.ai/9c85d619-4cac-4561-8fa3-604c116fa1c5.mp3",
    "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
    "created_at": "2024-12-25T16:51:36.625Z",
    "display_name": "FluidXylophone2289",
    "handle": "fluidxylophone2289",
    "id": "9c85d619-4cac-4561-8fa3-604c116fa1c5",
    "image_large_url": "https://cdn2.suno.ai/image_large_9c85d619-4cac-4561-8fa3-604c116fa1c5.jpeg",
    "image_url": "https://cdn2.suno.ai/image_9c85d619-4cac-4561-8fa3-604c116fa1c5.jpeg",
    "is_handle_updated": false,
    "is_liked": false,
    "is_public": false,
    "is_trashed": false,
    "major_model_version": "",
    "metadata": {
      "duration": 217.24,
      "prompt": "",
      "stem_from_id": "a624123d-22cc-4d4d-bf28-78d312f61597",
      "tags": "Chinese",
      "type": "stem"
    },
    "model_name": "",
    "play_count": 0,
    "status": "complete",
    "title": "Riding the Dream Dragon - Instrumental",
    "upvote_count": 0,
    "video_url": "https://cdn1.suno.ai/9c85d619-4cac-4561-8fa3-604c116fa1c5.mp4"
  }
]
[
  {
    "audio_url": "https://cdn1.suno.ai/5f3587e2-75fb-4c36-84b3-3ec113897a4c.mp3",
    "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
    "created_at": "2024-12-25T16:51:36.619Z",
    "display_name": "FluidXylophone2289",
    "handle": "fluidxylophone2289",
    "id": "5f3587e2-75fb-4c36-84b3-3ec113897a4c",
    "image_large_url": "https://cdn2.suno.ai/image_large_5f3587e2-75fb-4c36-84b3-3ec113897a4c.jpeg",
    "image_url": "https://cdn2.suno.ai/image_5f3587e2-75fb-4c36-84b3-3ec113897a4c.jpeg",
    "is_handle_updated": false,
    "is_liked": false,
    "is_public": false,
    "is_trashed": false,
    "major_model_version": "",
    "metadata": {
      "duration": 217.24,
      "prompt": "Under the distant starry sky, who still lingers in hesitation?\nLike a fish that cannot swim, I can only blame myself for not having strong fins.\nTurn hesitation into strength, take setbacks as your guide.\nUntil the dream comes true, I stand firm in waiting.\nYesterday’s time has slipped away, tomorrow I will follow the wind’s footsteps, climbing to the peak.\nCall out, let’s set off, riding on the back of the dream dragon, traversing the bumps of fate.\nBreak free from the shackles of hardship, even if everything is lost, people still yearn for a warm embrace.\nThe reason people can feel others’ joy is because of kindness in their hearts.\nTurn hesitation into strength, take setbacks as your guide.\nI’m still that fish that cannot swim, blaming myself for not having strong fins.",
      "stem_from_id": "a624123d-22cc-4d4d-bf28-78d312f61597",
      "tags": "Chinese",
      "type": "stem"
    },
    "model_name": "",
    "play_count": 0,
    "status": "complete",
    "title": "Riding the Dream Dragon - Vocals",
    "upvote_count": 0,
    "video_url": "https://cdn1.suno.ai/5f3587e2-75fb-4c36-84b3-3ec113897a4c.mp4"
  },
  {
    "audio_url": "https://cdn1.suno.ai/9c85d619-4cac-4561-8fa3-604c116fa1c5.mp3",
    "avatar_image_url": "https://cdn1.suno.ai/defaultPink.webp",
    "created_at": "2024-12-25T16:51:36.625Z",
    "display_name": "FluidXylophone2289",
    "handle": "fluidxylophone2289",
    "id": "9c85d619-4cac-4561-8fa3-604c116fa1c5",
    "image_large_url": "https://cdn2.suno.ai/image_large_9c85d619-4cac-4561-8fa3-604c116fa1c5.jpeg",
    "image_url": "https://cdn2.suno.ai/image_9c85d619-4cac-4561-8fa3-604c116fa1c5.jpeg",
    "is_handle_updated": false,
    "is_liked": false,
    "is_public": false,
    "is_trashed": false,
    "major_model_version": "",
    "metadata": {
      "duration": 217.24,
      "prompt": "",
      "stem_from_id": "a624123d-22cc-4d4d-bf28-78d312f61597",
      "tags": "Chinese",
      "type": "stem"
    },
    "model_name": "",
    "play_count": 0,
    "status": "complete",
    "title": "Riding the Dream Dragon - Instrumental",
    "upvote_count": 0,
    "video_url": "https://cdn1.suno.ai/9c85d619-4cac-4561-8fa3-604c116fa1c5.mp4"
  }
]

11. Timing: Lyrics & Audio Timeline

A. Generate Music

You can generate music using Scenarios 1, 2, or 3 and obtain the clip_id of one song, e.g., 54834687-5e79-4f08-8e14-cf188f15b598.

B. Fetch Lyrics

Response Body

json
{
  "aligned_words": [
    {
      "word": "[Verse]\nWinter ",
      "success": true,
      "start_s": 8.38,
      "end_s": 8.78,
      "p_align": 0.982
    },
    {
      "word": "winds ",
      "success": true,
      "start_s": 8.78,
      "end_s": 9.54,
      "p_align": 0.961
    },
    {
      "word": "they ",
      "success": true,
      "start_s": 9.54,
      "end_s": 9.93,
      "p_align": 0.99
    },
    {
      "word": "cut ",
      "success": true,
      "start_s": 9.93,
      "end_s": 10.41,
      "p_align": 0.998
    },
    {
      "word": "so ",
      "success": true,
      "start_s": 10.41,
      "end_s": 10.93,
      "p_align": 0.996
    },
    {
      "word": "deep\n",
      "success": true,
      "start_s": 10.93,
      "end_s": 11.93,
      "p_align": 0.997
    },
    ....
  ],
  "waveform_data": [
    0.001, 0.00109, 0.04219, 0.03597, ....
  ],
  "hoot_cer": 0.03556771545827633,
  "is_streamed": false
}
{
  "aligned_words": [
    {
      "word": "[Verse]\nWinter ",
      "success": true,
      "start_s": 8.38,
      "end_s": 8.78,
      "p_align": 0.982
    },
    {
      "word": "winds ",
      "success": true,
      "start_s": 8.78,
      "end_s": 9.54,
      "p_align": 0.961
    },
    {
      "word": "they ",
      "success": true,
      "start_s": 9.54,
      "end_s": 9.93,
      "p_align": 0.99
    },
    {
      "word": "cut ",
      "success": true,
      "start_s": 9.93,
      "end_s": 10.41,
      "p_align": 0.998
    },
    {
      "word": "so ",
      "success": true,
      "start_s": 10.41,
      "end_s": 10.93,
      "p_align": 0.996
    },
    {
      "word": "deep\n",
      "success": true,
      "start_s": 10.93,
      "end_s": 11.93,
      "p_align": 0.997
    },
    ....
  ],
  "waveform_data": [
    0.001, 0.00109, 0.04219, 0.03597, ....
  ],
  "hoot_cer": 0.03556771545827633,
  "is_streamed": false
}

12. WAV: Fetch WAV Format File

A. Generate Music

You can generate music using Scenarios 1, 2, or 3 and obtain the clip_id of one song, e.g., a624123d-22cc-4d4d-bf28-78d312f61597.

B. Fetch WAV File

get https://api.openai-hk.com/sunoapi/act/wav/a624123d-22cc-4d4d-bf28-78d312f61597

  • If the response wav_file_url is null, try fetching multiple times.
  • To prevent abuse, 100 credits will be deducted.
  • Cross-account not allowed; unavailable after account logout.

Response Body

json
{
  "wav_file_url": "https://cdn1.suno.ai/a624123d-22cc-4d4d-bf28-78d312f61597.wav"
}
{
  "wav_file_url": "https://cdn1.suno.ai/a624123d-22cc-4d4d-bf28-78d312f61597.wav"
}

13. MP4: Generate MP4 MV Video

A. Generate Music

You can generate music using Scenarios 1, 2, or 3 and obtain the clip_id of one song, e.g., a624123d-22cc-4d4d-bf28-78d312f61597.

B. Fetch MP4 File

get https://api.openai-hk.com/sunoapi/act/mp4/a624123d-22cc-4d4d-bf28-78d312f61597

  • The status must be complete for execution to take effect.
  • Wait 30 seconds after execution before the URL becomes accessible.
  • To prevent abuse, 100 credits will be deducted.
  • Cross-account not allowed; unavailable after account logout.

Response Body

json
{
  "mp4": "https://cdn1.suno.ai/a624123d-22cc-4d4d-bf28-78d312f61597.mp4"
}
{
  "mp4": "https://cdn1.suno.ai/a624123d-22cc-4d4d-bf28-78d312f61597.mp4"
}

14. All-Stems: Full-Track Stem Separation

A. Generate Music

You can generate music using Scenarios 1, 2, or 3 and obtain the clip_id of one song, e.g., a624123d-22cc-4d4d-bf28-78d312f61597.

B. Full-Track Stem Separation

post https://api.openai-hk.com/suno/generate

  • Note: mv is chirp-auk
  • task is gen_stem
  • stem_task is twelve
  • stem_type_group_name is Twelve
  • continue_clip_id is the clip_id from Step A
  • Cross-account allowed
  • Billing: 5x base price (equivalent to 5 generations, 10 songs).
json
{
  "task": "gen_stem",
  "generation_type": "TEXT",
  "title": "String of Safety",
  "mv": "chirp-auk",
  "prompt": "",
  "make_instrumental": true,
  "continue_clip_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
  "continued_aligned_prompt": null,
  "continue_at": null,
  "stem_type_id": 91,
  "stem_type_group_name": "Twelve",
  "stem_task": "twelve"
}
{
  "task": "gen_stem",
  "generation_type": "TEXT",
  "title": "String of Safety",
  "mv": "chirp-auk",
  "prompt": "",
  "make_instrumental": true,
  "continue_clip_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
  "continued_aligned_prompt": null,
  "continue_at": null,
  "stem_type_id": 91,
  "stem_type_group_name": "Twelve",
  "stem_task": "twelve"
}
  • Returns 24 clip_ids
  • Fetch all 24 clip_ids in one go.

Example Response Body

json
{
  "id": "b19ee87f-574d-42c7-9761-df6aafc0fd9c",
  "clips": [
    {
      "id": "0e5be1db-4834-4890-acfb-2fea7fd24eb9",
      "entity_type": "song_schema",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "",
      "model_name": "chirp-stem",
      "metadata": {
        "prompt": "",
        "history": [
          {
            "id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
            "type": "gen",
            "source": "web",
            "infill": false,
            "stem_type_id": 91,
            "stem_type_group_name": "Twelve",
            "stem_task": "twelve",
            "stem_from_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc"
          }
        ],
        "stem_from_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
        "stem_task": "twelve",
        "stem_type_id": 91,
        "stem_type_group_name": "Vocals",
        "edited_clip_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
        "type": "gen",
        "stream": true,
        "infill": false,
        "task": "gen_stem",
        "can_remix": true,
        "is_remix": false,
        "priority": 10
      },
      "is_liked": false,
      "user_id": "a8a4d117-d5aa-4a9f-ab5b-88cc2c2eb79d",
      "display_name": "ugknurymt91r",
      "handle": "ugknurymt91r",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/sAura20.jpg",
      "is_trashed": false,
      "flag_count": 0,
      "created_at": "2025-06-06T11:22:30.753Z",
      "status": "submitted",
      "title": "String of Safety (Vocals)",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false,
      "allow_comments": true
    },
    {
      "more": "There are 24 similar items"
    }
  ],
  "metadata": {
    "prompt": "",
    "history": [
      {
        "id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
        "type": "gen",
        "source": "web",
        "infill": false,
        "stem_type_id": 91,
        "stem_type_group_name": "Twelve",
        "stem_task": "twelve",
        "stem_from_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc"
      }
    ],
    "stem_from_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
    "stem_task": "twelve",
    "stem_type_id": 91,
    "stem_type_group_name": "Twelve",
    "edited_clip_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
    "type": "gen",
    "stream": true,
    "infill": false,
    "task": "gen_stem",
    "can_remix": true,
    "is_remix": false,
    "priority": 10
  },
  "major_model_version": "",
  "status": "complete",
  "created_at": "2025-06-06T11:22:30.737Z",
  "batch_size": 1
}
{
  "id": "b19ee87f-574d-42c7-9761-df6aafc0fd9c",
  "clips": [
    {
      "id": "0e5be1db-4834-4890-acfb-2fea7fd24eb9",
      "entity_type": "song_schema",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "",
      "model_name": "chirp-stem",
      "metadata": {
        "prompt": "",
        "history": [
          {
            "id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
            "type": "gen",
            "source": "web",
            "infill": false,
            "stem_type_id": 91,
            "stem_type_group_name": "Twelve",
            "stem_task": "twelve",
            "stem_from_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc"
          }
        ],
        "stem_from_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
        "stem_task": "twelve",
        "stem_type_id": 91,
        "stem_type_group_name": "Vocals",
        "edited_clip_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
        "type": "gen",
        "stream": true,
        "infill": false,
        "task": "gen_stem",
        "can_remix": true,
        "is_remix": false,
        "priority": 10
      },
      "is_liked": false,
      "user_id": "a8a4d117-d5aa-4a9f-ab5b-88cc2c2eb79d",
      "display_name": "ugknurymt91r",
      "handle": "ugknurymt91r",
      "is_handle_updated": false,
      "avatar_image_url": "https://cdn1.suno.ai/sAura20.jpg",
      "is_trashed": false,
      "flag_count": 0,
      "created_at": "2025-06-06T11:22:30.753Z",
      "status": "submitted",
      "title": "String of Safety (Vocals)",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false,
      "allow_comments": true
    },
    {
      "more": "There are 24 similar items"
    }
  ],
  "metadata": {
    "prompt": "",
    "history": [
      {
        "id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
        "type": "gen",
        "source": "web",
        "infill": false,
        "stem_type_id": 91,
        "stem_type_group_name": "Twelve",
        "stem_task": "twelve",
        "stem_from_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc"
      }
    ],
    "stem_from_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
    "stem_task": "twelve",
    "stem_type_id": 91,
    "stem_type_group_name": "Twelve",
    "edited_clip_id": "4720ad51-6d31-417c-a3a7-346b0b99abbc",
    "type": "gen",
    "stream": true,
    "infill": false,
    "task": "gen_stem",
    "can_remix": true,
    "is_remix": false,
    "priority": 10
  },
  "major_model_version": "",
  "status": "complete",
  "created_at": "2025-06-06T11:22:30.737Z",
  "batch_size": 1
}

C. Fetch Results

GET https://api.openai-hk.com/suno/feed/4f72cbf2-44ec-4afa-8e54-9ac1d8fad362,9d6b3790-e460-4d86-9dac-0f365de79a13,7bace6af-0424-481d-b11b-285d976a68bc,5edf410a-98bd-4d65-8b5d-85dc823c92d2,90fdb909-6e4c-4b84-950d-de0871ba5f8e,958cf624-4021-4c48-a455-7ef2471cbfb5,9b4e6452-d39b-4071-b25f-b3003058bd5f,d9f39a13-ba39-41d6-abaf-c7035535021d,09a6ad16-c5f7-4a24-9873-0d21d03324d3,6c1138ea-68f5-43fc-a34b-65f0bd7ca3a3,a7004238-4570-4480-8542-698131dcfd9a,9975eda4-551d-48c7-b840-490c59ac7fa1,88860fc9-b09e-44fc-acb8-9373885c0b6b,fa327c28-0468-4a6b-862b-c68e6929f002,300295af-b31a-41de-a21c-c8ed4af45d63,0c9de950-1fc2-44b5-ac1a-71605273ccfd,96c6b96e-a596-4c1c-bda5-bcdbc243030b,d2029f8e-e43a-4bbc-910f-7ca97903caa0,643cc7ee-5f14-47d3-889e-a27a6a764542,f5570d79-2a88-436e-8341-620b7594a47d,37a8686a-5269-46a5-ac9b-5c48486639f3,f6dda4cb-ba98-4498-9735-3fba4a4c1db0,20f6db47-429f-421a-a16c-1a9aeb3d5a98,d93cd7df-cf79-4eaa-8ab9-cbe6215c8b1d

  • Concatenate all 24 clip_ids and fetch in one request.

15. Premium Parameters

  • In June 2025, Suno introduced 3 premium parameters:
    • weirdness_constraint
    • style_weight
    • audio_weight (only appears in cover mode)
  • All values range between 0 and 1.
  • In September 2025, vocal_gender was added:
    • Female (f)
    • Male (m)

A. Standard Generation

post https://api.openai-hk.com/suno/generate

json
{
  "prompt": "[Verse]\nI got a plate of dreams piled high\nA world of flavors I wanna try\nSpices dancing under the sky\nTaste buds soaring I won’t deny\n\n[Chorus]\nCrunch and sizzle sweet and sour\nEvery bite holds a little power\nBite by bite I’m feeling bold\nLife’s a buffet can’t be controlled\n\n[Verse 2]\nFrom tacos wrapped so tight with love\nTo noodles swimming skies above\nPizza slices like a dove\nFlying straight to my tastebud glove\n\n[Bridge]\nOh the crunch of chips so loud\nPopcorn popping in a cloud\nChocolate melting makes me proud\nIn this feast I’m unbowed\n\n[Chorus]\nCrunch and sizzle sweet and sour\nEvery bite holds a little power\nBite by bite I’m feeling bold\nLife’s a buffet can’t be controlled\n\n[Verse 3]\nSaucy rivers on a plate\nFlavors whispering don’t be late\nEvery meal’s a twist of fate\nI’ll devour till it’s too great",
  "generation_type": "TEXT",
  "tags": "house, tight drums",
  "negative_tags": "Modern",
  "mv": "chirp-auk",
  "title": "Savor the Flavor",
  "metadata": {
    "create_mode": "custom",
    "control_sliders": {
      "style_weight": 0.4,
      "weirdness_constraint": 0.7
    },
    "can_control_sliders": ["weirdness_constraint", "style_weight"],
    "vocal_gender": "f"
  }
}
{
  "prompt": "[Verse]\nI got a plate of dreams piled high\nA world of flavors I wanna try\nSpices dancing under the sky\nTaste buds soaring I won’t deny\n\n[Chorus]\nCrunch and sizzle sweet and sour\nEvery bite holds a little power\nBite by bite I’m feeling bold\nLife’s a buffet can’t be controlled\n\n[Verse 2]\nFrom tacos wrapped so tight with love\nTo noodles swimming skies above\nPizza slices like a dove\nFlying straight to my tastebud glove\n\n[Bridge]\nOh the crunch of chips so loud\nPopcorn popping in a cloud\nChocolate melting makes me proud\nIn this feast I’m unbowed\n\n[Chorus]\nCrunch and sizzle sweet and sour\nEvery bite holds a little power\nBite by bite I’m feeling bold\nLife’s a buffet can’t be controlled\n\n[Verse 3]\nSaucy rivers on a plate\nFlavors whispering don’t be late\nEvery meal’s a twist of fate\nI’ll devour till it’s too great",
  "generation_type": "TEXT",
  "tags": "house, tight drums",
  "negative_tags": "Modern",
  "mv": "chirp-auk",
  "title": "Savor the Flavor",
  "metadata": {
    "create_mode": "custom",
    "control_sliders": {
      "style_weight": 0.4,
      "weirdness_constraint": 0.7
    },
    "can_control_sliders": ["weirdness_constraint", "style_weight"],
    "vocal_gender": "f"
  }
}

B. Cover Generation

  • audio_weight is available in cover mode.

post https://api.openai-hk.com/suno/generate

json
{
  "prompt": "[Verse]\nNew Year’s bell rings loud\nFireworks light up the night\nLaughter spreads all around\nGood luck stays by our side\n\n[Chorus]\nHappy New Year, full of cheer\nRed lanterns shine so bright\nReunion brings joy so near\nWishes come true tonight\n\n[Verse 2]\nSpring breeze softly blows\nBringing flowers in bloom\nNew clothes, new hopes\nDreams begin to resume\n\n[Chorus]\nHappy New Year, full of cheer\nRed lanterns shine so bright\nReunion brings joy so near\nWishes come true tonight\n\n[Bridge]\nFirecrackers sound anew\nWelcoming chances so true\nEvery home feels the hue\nNew Year’s spirit shines through\n\n[Chorus]\nHappy New Year, full of cheer\nRed lanterns shine so bright\nReunion brings joy so near\nWishes come true tonight",
  "generation_type": "TEXT",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-auk",
  "title": "Happy New Year (Remix)",
  "task": "cover",
  "cover_clip_id": "f31754fc-2c83-4fc1-8a07-70ae218dd0a6",
  "metadata": {
    "create_mode": "custom",
    "control_sliders": {
      "style_weight": 0.68,
      "audio_weight": 0.48,
      "weirdness_constraint": 0.37
    },
    "can_control_sliders": [
      "weirdness_constraint",
      "style_weight",
      "audio_weight"
    ],
    "is_remix": true
  }
}
{
  "prompt": "[Verse]\nNew Year’s bell rings loud\nFireworks light up the night\nLaughter spreads all around\nGood luck stays by our side\n\n[Chorus]\nHappy New Year, full of cheer\nRed lanterns shine so bright\nReunion brings joy so near\nWishes come true tonight\n\n[Verse 2]\nSpring breeze softly blows\nBringing flowers in bloom\nNew clothes, new hopes\nDreams begin to resume\n\n[Chorus]\nHappy New Year, full of cheer\nRed lanterns shine so bright\nReunion brings joy so near\nWishes come true tonight\n\n[Bridge]\nFirecrackers sound anew\nWelcoming chances so true\nEvery home feels the hue\nNew Year’s spirit shines through\n\n[Chorus]\nHappy New Year, full of cheer\nRed lanterns shine so bright\nReunion brings joy so near\nWishes come true tonight",
  "generation_type": "TEXT",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-auk",
  "title": "Happy New Year (Remix)",
  "task": "cover",
  "cover_clip_id": "f31754fc-2c83-4fc1-8a07-70ae218dd0a6",
  "metadata": {
    "create_mode": "custom",
    "control_sliders": {
      "style_weight": 0.68,
      "audio_weight": 0.48,
      "weirdness_constraint": 0.37
    },
    "can_control_sliders": [
      "weirdness_constraint",
      "style_weight",
      "audio_weight"
    ],
    "is_remix": true
  }
}

16. Add Instrumental

  • Introduced in August 2025, Add Instrumental allows uploading an a cappella (vocals-only) track for Suno to add backing music.
  • task is underpainting
  • underpainting_clip_id is the upload_clip_id
  • underpainting_end_s must be ≤ the uploaded track’s duration
  • Billing: One song fee
  • No cross-account usage

A. Upload A Cappella Track

post https://api.openai-hk.com/suno/uploads/audio-url

shell
curl --request POST \
  --url https://api.openai-hk.com/suno/uploads/audio-url \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Connection: keep-alive' \
  --header 'Content-Type: application/json' \
  --data '{
  "url": "http://cdnimg.exbapp.com/ai/2024-06-18/d416d9c3c34eb22c7d8c094831d8dbd0.mp3"
}'
curl --request POST \
  --url https://api.openai-hk.com/suno/uploads/audio-url \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Connection: keep-alive' \
  --header 'Content-Type: application/json' \
  --data '{
  "url": "http://cdnimg.exbapp.com/ai/2024-06-18/d416d9c3c34eb22c7d8c094831d8dbd0.mp3"
}'

Response (clip_id: upload_clip_id)

json
{
  "clip_id": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "code": "success",
  "data": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "message": ""
}
{
  "clip_id": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "code": "success",
  "data": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "message": ""
}

B. Fetch Track Duration

get http://api.openai-hk.com/suno/feed/9b1d2e8d-a365-4bfd-8a18-8989e159b29f

  • Obtain metadata.duration (track length).

C. Execute Add Instrumental

post https://api.openai-hk.com/suno/generate

  • task is underpainting
  • underpainting_clip_id is the upload_clip_id
  • underpainting_end_s must be ≤ the uploaded track’s duration
  • Avoid lyrics (since this is for backing music).

Request Body

json
{
  "mv": "chirp-bluejay",
  "tags": "Pop rap, uplifting, magnetic male vocals, piano, synth, electric guitar, driving bass, clear structure",
  "title": "Hi Instrumental",
  "underpainting_clip_id": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "underpainting_start_s": 0,
  "underpainting_end_s": 57.9,
  "task": "underpainting",
  "prompt": "",
  "override_fields": ["prompt", "tags"]
}
{
  "mv": "chirp-bluejay",
  "tags": "Pop rap, uplifting, magnetic male vocals, piano, synth, electric guitar, driving bass, clear structure",
  "title": "Hi Instrumental",
  "underpainting_clip_id": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "underpainting_start_s": 0,
  "underpainting_end_s": 57.9,
  "task": "underpainting",
  "prompt": "",
  "override_fields": ["prompt", "tags"]
}

17. Add Vocals

  • Introduced in August 2025, Add Vocals allows uploading an instrumental track for Suno to add lyrics and vocals.
  • task is overpainting
  • overpainting_clip_id is the upload_clip_id
  • overpainting_end_s must be ≤ the uploaded track’s duration
  • Billing: One song fee
  • No cross-account usage

A. Upload Instrumental Track

post https://api.openai-hk.com/suno/uploads/audio-url

shell
curl --request POST \
  --url https://api.openai-hk.com/suno/uploads/audio-url \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Connection: keep-alive' \
  --header 'Content-Type: application/json' \
  --data '{
  "url": "http://cdnimg.exbapp.com/ai/2024-06-18/d416d9c3c34eb22c7d8c094831d8dbd0.mp3"
}'
curl --request POST \
  --url https://api.openai-hk.com/suno/uploads/audio-url \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Connection: keep-alive' \
  --header 'Content-Type: application/json' \
  --data '{
  "url": "http://cdnimg.exbapp.com/ai/2024-06-18/d416d9c3c34eb22c7d8c094831d8dbd0.mp3"
}'

Response (clip_id: upload_clip_id)

json
{
  "clip_id": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "code": "success",
  "data": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "message": ""
}
{
  "clip_id": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "code": "success",
  "data": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "message": ""
}

B. Fetch Track Duration & Tags

get http://api.openai-hk.com/suno/feed/9b1d2e8d-a365-4bfd-8a18-8989e159b29f

  • Obtain metadata.duration (track length) and metadata.tags.

C. Execute Add Vocals

post https://api.openai-hk.com/suno/generate

  • task is overpainting
  • overpainting_clip_id is the upload_clip_id
  • overpainting_end_s must be ≤ the uploaded track’s metadata.duration
  • tags should match the uploaded track’s metadata.tags.

Request Body

json
{
  "mv": "chirp-bluejay",
  "tags": "A smooth, soulful R&B track with a moderate tempo and a relaxed, laid-back feel. The instrumentation features a clean electric guitar playing arpeggiated chords, a prominent bass guitar providing a walking bass line, and a drum kit with a soft, brushed snare sound. The male lead vocal is smooth and melodic, with a baritone range and a slightly melancholic tone. The song is in a minor key, contributing to its introspective mood. Production elements include a subtle reverb on the vocals and guitar, creating a spacious and intimate atmosphere. The song structure follows a typical verse-chorus format with a clear melodic progression.",
  "title": "Hi Vocal",
  "overpainting_clip_id": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "overpainting_start_s": 0,
  "overpainting_end_s": 57.9,
  "task": "overpainting",
  "prompt": "Write the lyrics yourself",
  "override_fields": ["prompt", "tags"]
}
{
  "mv": "chirp-bluejay",
  "tags": "A smooth, soulful R&B track with a moderate tempo and a relaxed, laid-back feel. The instrumentation features a clean electric guitar playing arpeggiated chords, a prominent bass guitar providing a walking bass line, and a drum kit with a soft, brushed snare sound. The male lead vocal is smooth and melodic, with a baritone range and a slightly melancholic tone. The song is in a minor key, contributing to its introspective mood. Production elements include a subtle reverb on the vocals and guitar, creating a spacious and intimate atmosphere. The song structure follows a typical verse-chorus format with a clear melodic progression.",
  "title": "Hi Vocal",
  "overpainting_clip_id": "9b1d2e8d-a365-4bfd-8a18-8989e159b29f",
  "overpainting_start_s": 0,
  "overpainting_end_s": 57.9,
  "task": "overpainting",
  "prompt": "Write the lyrics yourself",
  "override_fields": ["prompt", "tags"]
}