Skip to content

Сценарии использования Suno

  • 2026.08.01 Поддержка обхода определения авторских прав через nice upload
  • 2026.04.10 Suno прекратила поддержку версий ниже v3.5; в настоящее время версии ниже 3.5 принудительно конвертируются в v4.5-all с неизменными ценами
  • 2026.03.27 Suno поддерживает версию v5.5, mv это chirp-fenix
  • 2026.02.04 Suno поддерживает версию suno-v4.5-all, mv это chirp-auk-turbo, цена такая же как у suno-3.5
  • 2025.09.23 Suno поддерживает версию v5, mv это chirp-crow
  • 2025.07.17 Suno поддерживает версию v4.5+, mv это chirp-bluejay
  • 2025.05.03 Suno поддерживает версию v4.5, mv это chirp-auk
  • Suno поддерживает различные сценарии через разные форматы запросов
  • Все отправки выполняются через POST на https://api.openai-hk.com/sunoapi/generate
  • Все результаты получаются через GET https://api.openai-hk.com/sunoapi/feed/clipsId1,clipsId2
  • Следующие тела запросов производят различные эффекты
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. Режим вдохновения

json
{
  "gpt_description_prompt": "nostalgia"
}
{
  "gpt_description_prompt": "nostalgia"
}

2. Пользовательские текст и название

json
{
  "prompt": "[Verse]\nBusy days one after another\nFiles piling up with no end in sight\nDreams tucked away in a drawer\nCoffee cup already gone cold\n\n[Verse 2]\nClock in at eight every morning\nTired eyes with no spark left\nSmall talk with colleagues feels pointless\nJust waiting for time to speed by\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true\n\n[Verse 3]\nLunch break eating a bento box\nWatching sunshine pour through the window\nLife feels so far from the dream\nAll I see is the desk and chair\n\n[Bridge]\nThe boss's footsteps sound like thunder\nHeartbeat quickening with the rhythm\nA mountain of files on the desk\nThe sound of complaints slowly fades\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true",
  "mv": "chirp-v3-5",
  "title": "Work",
  "tags": " edm"
}
{
  "prompt": "[Verse]\nBusy days one after another\nFiles piling up with no end in sight\nDreams tucked away in a drawer\nCoffee cup already gone cold\n\n[Verse 2]\nClock in at eight every morning\nTired eyes with no spark left\nSmall talk with colleagues feels pointless\nJust waiting for time to speed by\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true\n\n[Verse 3]\nLunch break eating a bento box\nWatching sunshine pour through the window\nLife feels so far from the dream\nAll I see is the desk and chair\n\n[Bridge]\nThe boss's footsteps sound like thunder\nHeartbeat quickening with the rhythm\nA mountain of files on the desk\nThe sound of complaints slowly fades\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true",
  "mv": "chirp-v3-5",
  "title": "Work",
  "tags": " edm"
}

3. Инструментал (пользовательский)

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. Инструментал (режим вдохновения)

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

5. Расширение пользовательского аудио

A. Загрузка аудио

Сначала используйте API загрузки, чтобы получить clip_id со значением abcd-1234-1234-1234-abd

B. Расширение аудио (с версией)

  • mv может быть chirp-v4, chirp-auk или 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. Расширение аудио (устарело)

Примечание: mv здесь это chirp-v3-5-upload или chirp-v4-upload

json
{
  "prompt": "[Verse]\nBusy days one after another\nFiles piling up with no end in sight\nDreams tucked away in a drawer\nCoffee cup already gone cold\n\n[Verse 2]\nClock in at eight every morning\nTired eyes with no spark left\nSmall talk with colleagues feels pointless\nJust waiting for time to speed by\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true\n\n[Verse 3]\nLunch break eating a bento box\nWatching sunshine pour through the window\nLife feels so far from the dream\nAll I see is the desk and chair\n\n[Bridge]\nThe boss's footsteps sound like thunder\nHeartbeat quickening with the rhythm\nA mountain of files on the desk\nThe sound of complaints slowly fades\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true",
  "tags": "heavy metal",
  "mv": "chirp-v3-5-upload",
  "title": "Work",
  "continue_clip_id": "abcd-1234-1234-1234-abd",
  "continue_at": 30.792
}
{
  "prompt": "[Verse]\nBusy days one after another\nFiles piling up with no end in sight\nDreams tucked away in a drawer\nCoffee cup already gone cold\n\n[Verse 2]\nClock in at eight every morning\nTired eyes with no spark left\nSmall talk with colleagues feels pointless\nJust waiting for time to speed by\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true\n\n[Verse 3]\nLunch break eating a bento box\nWatching sunshine pour through the window\nLife feels so far from the dream\nAll I see is the desk and chair\n\n[Bridge]\nThe boss's footsteps sound like thunder\nHeartbeat quickening with the rhythm\nA mountain of files on the desk\nThe sound of complaints slowly fades\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true",
  "tags": "heavy metal",
  "mv": "chirp-v3-5-upload",
  "title": "Work",
  "continue_clip_id": "abcd-1234-1234-1234-abd",
  "continue_at": 30.792
}

D. Объединение полной песни

  • Примечание: is_infill должен быть false
  • После получения ID замененной песни используйте API запроса для проверки статуса
  • Оплата: стоимость одной песни

    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
}'

Тело запроса:

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

6. Расширение музыки и получение полной песни

Примечание: расширение только официально сгенерированной музыки; пользовательское расширение не поддерживается

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением abcd-1234-1234-1234-abd

B. Расширение музыки

Возвращает 2 новых значения clip_id; одно из них newid-1234-1234-1234-one

json
{
  "prompt": "[Verse]\nBusy days one after another\nFiles piling up with no end in sight\nDreams tucked away in a drawer\nCoffee cup already gone cold\n\n[Verse 2]\nClock in at eight every morning\nTired eyes with no spark left\nSmall talk with colleagues feels pointless\nJust waiting for time to speed by\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true\n\n[Verse 3]\nLunch break eating a bento box\nWatching sunshine pour through the window\nLife feels so far from the dream\nAll I see is the desk and chair\n\n[Bridge]\nThe boss's footsteps sound like thunder\nHeartbeat quickening with the rhythm\nA mountain of files on the desk\nThe sound of complaints slowly fades\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true",
  "tags": "heavy metal",
  "mv": "chirp-v3-5",
  "title": "Work",
  "continue_clip_id": "abcd-1234-1234-1234-abd",
  "continue_at": 30,
  "task": "extend"
}
{
  "prompt": "[Verse]\nBusy days one after another\nFiles piling up with no end in sight\nDreams tucked away in a drawer\nCoffee cup already gone cold\n\n[Verse 2]\nClock in at eight every morning\nTired eyes with no spark left\nSmall talk with colleagues feels pointless\nJust waiting for time to speed by\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true\n\n[Verse 3]\nLunch break eating a bento box\nWatching sunshine pour through the window\nLife feels so far from the dream\nAll I see is the desk and chair\n\n[Bridge]\nThe boss's footsteps sound like thunder\nHeartbeat quickening with the rhythm\nA mountain of files on the desk\nThe sound of complaints slowly fades\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true",
  "tags": "heavy metal",
  "mv": "chirp-v3-5",
  "title": "Work",
  "continue_clip_id": "abcd-1234-1234-1234-abd",
  "continue_at": 30,
  "task": "extend"
}

C. Объединение полной песни

  • Примечание: is_infill должен быть false
  • После получения ID замененной песни используйте API запроса для проверки статуса
  • Оплата: 100 кредитов (¥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
}'

Тело запроса:

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

7. Кавер-версия: ремейк / изменение стиля

A. Генерация музыки

  • Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением abcd-1234-1234-1234-abd
  • Вы также можете использовать API загрузки для получения clip_id для кавер-версии пользовательского аудио

B. Кавер-версия музыки

  • Примечание: mv должен быть chirp-v4, chirp-auk или chirp-bluejay
  • task должен быть cover
  • Поддерживается межаккаунтное использование — не нужно беспокоиться об истечении срока действия аккаунта
  • Если cover_clip_id является загруженным clip_id, межаккаунтное использование не поддерживается
  • mv больше не использует chirp-v3-5-tau или chirp-v4-tau
json
{
  "prompt": "[Verse]\nBusy days one after another\nFiles piling up with no end in sight\nDreams tucked away in a drawer\nCoffee cup already gone cold\n\n[Verse 2]\nClock in at eight every morning\nTired eyes with no spark left\nSmall talk with colleagues feels pointless\nJust waiting for time to speed by\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true\n\n[Verse 3]\nLunch break eating a bento box\nWatching sunshine pour through the window\nLife feels so far from the dream\nAll I see is the desk and chair\n\n[Bridge]\nThe boss's footsteps sound like thunder\nHeartbeat quickening with the rhythm\nA mountain of files on the desk\nThe sound of complaints slowly fades\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true",
  "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]\nBusy days one after another\nFiles piling up with no end in sight\nDreams tucked away in a drawer\nCoffee cup already gone cold\n\n[Verse 2]\nClock in at eight every morning\nTired eyes with no spark left\nSmall talk with colleagues feels pointless\nJust waiting for time to speed by\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true\n\n[Verse 3]\nLunch break eating a bento box\nWatching sunshine pour through the window\nLife feels so far from the dream\nAll I see is the desk and chair\n\n[Bridge]\nThe boss's footsteps sound like thunder\nHeartbeat quickening with the rhythm\nA mountain of files on the desk\nThe sound of complaints slowly fades\n\n[Chorus]\nWork work the boss keeps calling\nFinish up finish up then we're safe\nOvertime overtime just to earn a little\nDreams dreams when will they come true",
  "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. Замена фрагмента

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением abcd-1234-1234-1234-abd

B. Замена фрагмента

  • task должен быть infill
  • Примечание: mv должен быть chirp-v4, chirp-auk или chirp-bluejay
  • Напоминание: замененный текст должен перекрываться с оригинальным текстом; в идеале время должно соответствовать
  • infill_start_s время начала, infill_end_s время окончания, infill_dur_s = infill_end_s - infill_start_s
  • Поддерживается межаккаунтное использование — не нужно беспокоиться об истечении срока действия аккаунта
  • Возвращает 2 новых значения clip_id; выберите одно (newid-1234-1234-1234-one) для следующего шага
  • mv больше не использует chirp-v3-5-tau или chirp-v4-tau
json
{
  "task": "infill",
  "generation_type": "TEXT",
  "title": "Scale of Longing-replace",
  "tags": "Sorrow/Sad,Female Vocals,Mandarin",
  "mv": "chirp-auk",
  "prompt": "《Scale of Longing》 \n \nLyrics: A Guo Yi Luo\nThe rings of a tree hold the warmth of your running steps. \nEvery falling leaf calls out your name\nBut one gust of wind turns it to mist. \nTidying up your guitar in the corner \nThe case holds all the rainy seasons,\nSoaking the back of the rosewood. \nIf I wound my longing into new strings,\nI fear one touch would shatter them\nInto echoes of back then. \nTime is a rewound videotape,\nThe deeper the night, the clearer your laughter comes. \nIf tears could water a time tunnel,\nI'd cry my eyes into a sea. \nWhen every spring becomes about you,\nI learn to breathe through the wound. \nTo keep loving you,\nUsing up",
  "metadata": {
    "infill_lyrics": ". \nTidying up your guitar in the corner \nThe case holds all the rainy seasons,\nSoaking the back of the rosewood. \nIf I wound my longing into new strings,\nI fear one touch would shatter them\nInto echoes of back then"
  },
  "continue_clip_id": "8a858961-8831-4423-8ffb-2dec096aea0a",
  "continued_aligned_prompt": "《Scale of Longing》 \n \nLyrics: A Guo Yi Luo\nThe rings of a tree hold the warmth of your running steps. \nEvery falling leaf calls out your name\nBut one gust of wind turns it to mist. \nTidying up your guitar in the corner \nThe case holds all the rainy seasons,\nSoaking the back of the rosewood. \nIf I wound my longing into new strings,\nI fear one touch would shatter them\nInto echoes of back then. \nTime is a rewound videotape,\nThe deeper the night, the clearer your laughter comes. \nIf tears could water a time tunnel,\nI'd cry my eyes into a sea. \nWhen every spring becomes about you,\nI learn to breathe through the wound. \nTo keep loving you,\nUsing up everything\nA heartbeat that no longer beats.\nTidying up your guitar in the corner \nThe case holds all the rainy seasons,\nSoaking the back of the rosewood. \nIf I wound my longing into new strings,\nI fear one touch would shatter them\nInto echoes of back then. \nWhen every spring becomes about you,\nI learn to breathe through the wound. \nTo keep loving you,\nUsing up everything\nA heartbeat that no longer beats.\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": "Scale of Longing-replace",
  "tags": "Sorrow/Sad,Female Vocals,Mandarin",
  "mv": "chirp-auk",
  "prompt": "《Scale of Longing》 \n \nLyrics: A Guo Yi Luo\nThe rings of a tree hold the warmth of your running steps. \nEvery falling leaf calls out your name\nBut one gust of wind turns it to mist. \nTidying up your guitar in the corner \nThe case holds all the rainy seasons,\nSoaking the back of the rosewood. \nIf I wound my longing into new strings,\nI fear one touch would shatter them\nInto echoes of back then. \nTime is a rewound videotape,\nThe deeper the night, the clearer your laughter comes. \nIf tears could water a time tunnel,\nI'd cry my eyes into a sea. \nWhen every spring becomes about you,\nI learn to breathe through the wound. \nTo keep loving you,\nUsing up",
  "metadata": {
    "infill_lyrics": ". \nTidying up your guitar in the corner \nThe case holds all the rainy seasons,\nSoaking the back of the rosewood. \nIf I wound my longing into new strings,\nI fear one touch would shatter them\nInto echoes of back then"
  },
  "continue_clip_id": "8a858961-8831-4423-8ffb-2dec096aea0a",
  "continued_aligned_prompt": "《Scale of Longing》 \n \nLyrics: A Guo Yi Luo\nThe rings of a tree hold the warmth of your running steps. \nEvery falling leaf calls out your name\nBut one gust of wind turns it to mist. \nTidying up your guitar in the corner \nThe case holds all the rainy seasons,\nSoaking the back of the rosewood. \nIf I wound my longing into new strings,\nI fear one touch would shatter them\nInto echoes of back then. \nTime is a rewound videotape,\nThe deeper the night, the clearer your laughter comes. \nIf tears could water a time tunnel,\nI'd cry my eyes into a sea. \nWhen every spring becomes about you,\nI learn to breathe through the wound. \nTo keep loving you,\nUsing up everything\nA heartbeat that no longer beats.\nTidying up your guitar in the corner \nThe case holds all the rainy seasons,\nSoaking the back of the rosewood. \nIf I wound my longing into new strings,\nI fear one touch would shatter them\nInto echoes of back then. \nWhen every spring becomes about you,\nI learn to breathe through the wound. \nTo keep loving you,\nUsing up everything\nA heartbeat that no longer beats.\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. Подтверждение и объединение полной песни

  • Примечание: is_infill должен быть true
  • После получения ID замененной песни используйте API запроса для проверки статуса
  • Оплата: 100 кредитов (¥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
}'

Тело запроса:

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

8.V2 Замена фрагмента: V2 замена сегмента

  • Цель: заменить текст just missing your presence by my side в clip_id 4cd8a76f-802a-42a5-8064-3ba9c6138072 на just missing yesterday without you by my side
  • Фактически заменяется только by my sideyesterday

A. Получение временной шкалы

get https://api.openai-hk.com/suno/act/timing/4cd8a76f-802a-42a5-8064-3ba9c6138072

  • Параметры содержимого временной шкалы можно загрузить здесь: https://www.openai-hk.com/res/timing.json
  • Найдите целевое слово, чтобы найти его start_s из aligned_lyrics[8].words[8] = 60.6 как infill_context_start_s
json
{
  "text": "底",
  "start_s": 60.638297872340424,
  "end_s": 60.71808510638298
}
{
  "text": "底",
  "start_s": 60.638297872340424,
  "end_s": 60.71808510638298
}
  • Найдите конечное контекстное слово, чтобы найти aligned_lyrics[13].words[9].end_s = 90.6 как infill_context_end_s
json
{
  "text": "回",
  "start_s": 90.47872340425532,
  "end_s": 90.55851063829788
}
{
  "text": "回",
  "start_s": 90.47872340425532,
  "end_s": 90.55851063829788
}
  • Найдите слово для замены, найдите aligned_lyrics[11]
json
{
  "text": "just missing by my side,",

  "words": [
    ......
    {
      "text": "by",
      "start_s": 75.47872340425532, // используйте это как infill_start_s
      "end_s": 75.55851063829788
    },
    {
      "text": "side",
      "start_s": 75.71808510638299,
      "end_s": 75.79787234042553 // используйте это как infill_end_s
    },
   ......
  ]
}
{
  "text": "just missing by my side,",

  "words": [
    ......
    {
      "text": "by",
      "start_s": 75.47872340425532, // используйте это как infill_start_s
      "end_s": 75.55851063829788
    },
    {
      "text": "side",
      "start_s": 75.71808510638299,
      "end_s": 75.79787234042553 // используйте это как infill_end_s
    },
   ......
  ]
}

B. Замена сегмента

  • task должен быть fixed_infill
  • Примечание: mv поддерживает только chirp-carp
  • Как получить infill_context_start_s, infill_context_end_s, infill_start_s, infill_end_s — см. A. Получение временной шкалы
  • infill_dur_s = infill_end_s - infill_start_s
  • Поддерживается межаккаунтное использование — не нужно беспокоиться об истечении срока действия аккаунта
  • Возвращает 2 новых значения clip_id; выберите одно (newid-1234-1234-1234-one) для следующего шага
json
{
  "task": "fixed_infill",
  "generation_type": "TEXT",
  "title": "Replace 01:15-01:15 (06:25 AM Feb 04)",
  "tags": "Love Song,Rock,Acoustic Guitar,Piano,Strings,R&B",
  "negative_tags": "",
  "mv": "chirp-carp",
  "prompt": "底忘记。\n\n[Interlude]\n\n[Verse 2]\n街角的灯光依然那么熟悉,\n只是昨日再也没有你的气息,\n曾经的誓言如今变成了谜题,\n只剩下我在原地默默回",
  "metadata": {
    "create_mode": "custom",
    "infill_lyrics": "昨日",
    "is_remix": true,
    "lyrics_updated": true
  },

  "continue_clip_id": "4cd8a76f-802a-42a5-8064-3ba9c6138072",
  "continued_aligned_prompt": "底忘记。\n\n[Interlude]\n\n[Verse 2]\n街角的灯光依然那么熟悉,\n只是昨日再也没有你的气息,\n曾经的誓言如今变成了谜题,\n只剩下我在原地默默回",
  "continue_at": null,
  "infill_context_start_s": 60.6,
  "infill_context_end_s": 90.6,
  "infill_start_s": 75.44,
  "infill_end_s": 75.8,
  "infill_dur_s": 0.36
}
{
  "task": "fixed_infill",
  "generation_type": "TEXT",
  "title": "Replace 01:15-01:15 (06:25 AM Feb 04)",
  "tags": "Love Song,Rock,Acoustic Guitar,Piano,Strings,R&B",
  "negative_tags": "",
  "mv": "chirp-carp",
  "prompt": "底忘记。\n\n[Interlude]\n\n[Verse 2]\n街角的灯光依然那么熟悉,\n只是昨日再也没有你的气息,\n曾经的誓言如今变成了谜题,\n只剩下我在原地默默回",
  "metadata": {
    "create_mode": "custom",
    "infill_lyrics": "昨日",
    "is_remix": true,
    "lyrics_updated": true
  },

  "continue_clip_id": "4cd8a76f-802a-42a5-8064-3ba9c6138072",
  "continued_aligned_prompt": "底忘记。\n\n[Interlude]\n\n[Verse 2]\n街角的灯光依然那么熟悉,\n只是昨日再也没有你的气息,\n曾经的誓言如今变成了谜题,\n只剩下我在原地默默回",
  "continue_at": null,
  "infill_context_start_s": 60.6,
  "infill_context_end_s": 90.6,
  "infill_start_s": 75.44,
  "infill_end_s": 75.8,
  "infill_dur_s": 0.36
}

C. Подтверждение и объединение полной песни

  • Примечание: is_infill должен быть true
  • После получения ID замененной песни используйте API запроса для проверки статуса
  • Оплата: 100 кредитов (¥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
}'

Тело запроса:

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

9. Persona: Стиль исполнителя

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением 4cd8a76f-802a-42a5-8064-3ba9c6138072

B. Создание Persona

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

  • clip_id должен существовать в системе и не может быть загруженным клипом
  • Межаккаунтное использование не поддерживается — может быть недоступно в случае истечения срока действия аккаунта
  • Для предотвращения злоупотреблений будет снято 100 кредитов

Тело запроса:

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
}

Ответ: ключ id со значением fd213afd-ac1c-4822-9802-c1c0ea45e77b является persona_id для следующего шага

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. Создание с использованием persona_id

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

  • Примечание: mv должен быть chirp-v4, chirp-auk или chirp-bluejay
  • task должен быть artist_consistency
  • persona_id — это значение, полученное на шаге B
  • artist_clip_id — это clip_id из шага A
  • Поддерживается межаккаунтное использование
  • mv больше не использует chirp-v3-5-tau или chirp-v4-tau
json
{
  "prompt": "[Verse]\nFrom dawn to dusk you've been by my side so warm\nRain or shine I'm not afraid\nHolding hands we'll never part\n\n[Verse 2]\nWith you I'm never alone\nLike stars shining in the night\nNo road feels too long\nBecause you are my light\n\n[Chorus]\nDarling darling I love you\nYou're the only one in my world\nNo matter where we roam\nOur hearts will always follow\n\n[Verse 3]\nYou're my safe harbor\nEvery night my dreams are of you\nEven if the road ahead is hard\nWith you everything's beautiful\n\n[Chorus]\nDarling darling I love you\nYou're the only one in my world\nNo matter where we roam\nOur hearts will always follow\n\n[Bridge]\nEvery moment in this life\nWith you to share and feel\nAll tomorrows will be better\nBecause with you I'm invincible",
  "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 to dusk you've been by my side so warm\nRain or shine I'm not afraid\nHolding hands we'll never part\n\n[Verse 2]\nWith you I'm never alone\nLike stars shining in the night\nNo road feels too long\nBecause you are my light\n\n[Chorus]\nDarling darling I love you\nYou're the only one in my world\nNo matter where we roam\nOur hearts will always follow\n\n[Verse 3]\nYou're my safe harbor\nEvery night my dreams are of you\nEven if the road ahead is hard\nWith you everything's beautiful\n\n[Chorus]\nDarling darling I love you\nYou're the only one in my world\nNo matter where we roam\nOur hearts will always follow\n\n[Bridge]\nEvery moment in this life\nWith you to share and feel\nAll tomorrows will be better\nBecause with you I'm invincible",
  "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"
}

Ответ:

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": "...(lyrics)...",
        "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": "...(lyrics)...",
        "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": "...(lyrics)...",
    "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": "...(lyrics)...",
        "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": "...(lyrics)...",
        "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": "...(lyrics)...",
    "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: Разделение вокала/инструментала

  • После разделения: Vocals (вокальная дорожка)
  • После разделения: Instrumental (фоновая дорожка / чистая музыка)

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением a624123d-22cc-4d4d-bf28-78d312f61597

B. Разделение вокала/инструментала (устарело)

  • Официальный API устарел, используйте новый API ниже

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

  • Для предотвращения злоупотреблений будет снято 100 кредитов

  • Ответ возвращает clip_1 и clip_2

  • Межаккаунтное использование не поддерживается; недоступно в случае истечения срока действия аккаунта

B. Разделение вокала/инструментала (новый)

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

Тело запроса:

  • Примечание: mv должен быть chirp-auk
  • task должен быть gen_stem
  • stem_task должен быть two
  • stem_type_group_name должен быть Two
  • continue_clip_id — это clip_id из шага A
  • Поддерживается межаккаунтное использование
  • Оплата: стоимость одной генерации
json
{
  "task": "gen_stem",
  "generation_type": "TEXT",
  "title": "Safety String",
  "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": "Safety String",
  "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"
}
  • Ответ:
json
{
  "clips": [
    {
      "id": "5f3587e2-75fb-4c36-84b3-3ec113897a4c",
      "video_url": "",
      "audio_url": "",
      "major_model_version": "",
      "model_name": "",
      "metadata": {
        "tags": "Chinese",
        "prompt": "...(lyrics)...",
        "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": "...(lyrics)...",
        "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. Получение результатов

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

Ответ:

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": "...(lyrics)...",
      "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": "...(lyrics)...",
      "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: Временная шкала текста и аудио

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением 54834687-5e79-4f08-8e14-cf188f15b598

B. Получение текста

Ответ:

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: Получение файла в формате WAV

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением a624123d-22cc-4d4d-bf28-78d312f61597

B. Получение WAV-файла

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

  • Если wav_file_url в ответе null, попробуйте запросить снова
  • Для предотвращения злоупотреблений будет снято 100 кредитов
  • Межаккаунтное использование не поддерживается; недоступно в случае истечения срока действия аккаунта
  • Ответ:
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: Генерация MP4 MV видео

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением a624123d-22cc-4d4d-bf28-78d312f61597

B. Получение MP4-файла

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

  • Песня должна иметь статус complete для работы
  • После выполнения подождите ~30 секунд, прежде чем URL станет доступным
  • Для предотвращения злоупотреблений будет снято 100 кредитов
  • Межаккаунтное использование не поддерживается; недоступно в случае истечения срока действия аккаунта
  • Ответ:
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: Полное разделение дорожек

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением a624123d-22cc-4d4d-bf28-78d312f61597

B. Полное разделение дорожек

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

  • Примечание: mv должен быть chirp-auk
  • task должен быть gen_stem
  • stem_task должен быть twelve
  • stem_type_group_name должен быть Twelve
  • continue_clip_id — это clip_id из шага A
  • Поддерживается межаккаунтное использование
  • Оплата: 5× базовая цена — стоимость 5 запросов / 10 песен
json
{
  "task": "gen_stem",
  "generation_type": "TEXT",
  "title": "Safety String",
  "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": "Safety String",
  "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"
}
  • Возвращает 24 clip_ids

  • Запросите все 24 clip_ids одновременно

  • Пример ответа:

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": "Safety String (Vocals)",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false,
      "allow_comments": true
    },
    {
      "more": "24 similar items in total"
    }
  ],
  "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": "Safety String (Vocals)",
      "play_count": 0,
      "upvote_count": 0,
      "is_public": false,
      "allow_comments": true
    },
    {
      "more": "24 similar items in total"
    }
  ],
  "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. Получение результатов

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

  • Объедините все 24 clip_ids в один запрос

15. Расширенные параметры

  • В июне 2025 года Suno добавила 3 новых расширенных параметра
  • Параметры: weirdness_constraint, style_weight, audio_weight
  • audio_weight появляется только во время cover, Add Instrumental и Add Vocals
  • Все значения находятся в диапазоне от 0 до 1
  • В сентябре 2025 года был добавлен vocal_gender: женский f, мужской m

A. Стандартная генерация

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. Генерация кавер-версии

  • Во время кавер-версии есть дополнительный параметр audio_weight

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

json
{
  "prompt": "[Verse]\nNew Year's bell is ringing\nFireworks light up the night\nLaughter spreading everywhere\nGood fortune by your side\n\n[Chorus]\nHappy New Year joy and cheer\nRed lanterns glow along the street\nFamily reunion happiness blooms\nMay wishes come true and blessings meet\n\n[Verse 2]\nSpring breeze gently blowing\nBringing luck and flowers in bloom\nNew clothes new shoes new expectations\nDreams begin to unfold\n\n[Chorus]\nHappy New Year joy and cheer\nRed lanterns glow along the street\nFamily reunion happiness blooms\nMay wishes come true and blessings meet\n\n[Bridge]\nFirecracker sounds exploding\nWelcoming new opportunities\nEvery household filled with joy\nThe spirit of the new year spreading\n\n[Chorus]\nHappy New Year joy and cheer\nRed lanterns glow along the street\nFamily reunion happiness blooms\nMay wishes come true and blessings meet",
  "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 is ringing\nFireworks light up the night\nLaughter spreading everywhere\nGood fortune by your side\n\n[Chorus]\nHappy New Year joy and cheer\nRed lanterns glow along the street\nFamily reunion happiness blooms\nMay wishes come true and blessings meet\n\n[Verse 2]\nSpring breeze gently blowing\nBringing luck and flowers in bloom\nNew clothes new shoes new expectations\nDreams begin to unfold\n\n[Chorus]\nHappy New Year joy and cheer\nRed lanterns glow along the street\nFamily reunion happiness blooms\nMay wishes come true and blessings meet\n\n[Bridge]\nFirecracker sounds exploding\nWelcoming new opportunities\nEvery household filled with joy\nThe spirit of the new year spreading\n\n[Chorus]\nHappy New Year joy and cheer\nRed lanterns glow along the street\nFamily reunion happiness blooms\nMay wishes come true and blessings meet",
  "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. Добавление инструментала

  • Версия должна быть v4.5+ или выше
  • Представлено Suno в августе 2025 года
  • Загрузите трек a cappella (только вокал, без музыки), и позвольте Suno добавить инструментарий
  • task должен быть underpainting
  • underpainting_clip_id — это upload_clip_id
  • underpainting_end_s должен быть меньше или равен duration загруженного файла
  • Оплата: стоимость генерации одной песни
  • Межаккаунтное использование не разрешено

A. Загрузка трека A Cappella

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"
}'

Возвращает 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. Получение длительности песни и параметров

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

  • Используйте feed API для получения metadata.duration

C. Выполнение добавления инструментала

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

  • task должен быть underpainting
  • underpainting_clip_id — это upload_clip_id
  • underpainting_end_s должен быть меньше или равен duration загруженного файла
  • Лучше оставить текст пустым, так как это для добавления музыки
  • Тело запроса:
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. Добавление вокала

  • Версия должна быть v4.5+ или выше
  • Представлено Suno в августе 2025 года
  • Загрузите инструментальный трек и позвольте Suno написать текст и добавить вокал
  • task должен быть overpainting
  • overpainting_clip_id — это upload_clip_id
  • overpainting_end_s должен быть меньше или равен duration загруженного файла
  • Оплата: стоимость генерации одной песни
  • Межаккаунтное использование не разрешено

A. Загрузка инструментального трека

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"
}'

Возвращает 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. Получение длительности песни и параметров

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

  • Используйте feed API для получения metadata.duration
  • Также получите metadata.tags (теги)

C. Выполнение добавления вокала

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

  • task должен быть overpainting
  • overpainting_clip_id — это upload_clip_id
  • overpainting_end_s должен быть меньше или равен metadata.duration загруженного файла
  • tags должны соответствовать metadata.tags загруженного файла
  • Тело запроса:
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"]
}

18. Получение MIDI

A. clip_id с полным разделением дорожек

  • Получите clip_id из 14. all-stems: Полное разделение дорожек со значением a624123d-22cc-4d4d-bf28-78d312f61597
  • Примечание: обычный музыкальный clip_id также можно использовать, но на официальном сайте эта функция есть только у клипов с полным разделением дорожек
  • Оплата: 100 кредитов
  • Межаккаунтное использование не поддерживается; недоступно в случае истечения срока действия аккаунта

B. Получение MIDI

get https://api.openai-hk.com/suno/act/midi/c5bffd3a-96ad-4e83-9fbe-4720a5b9a664

  • Во время обработки:
json
{ "state": "running" }
{ "state": "running" }
  • По завершении:
json
{
    "state": "complete",
    "instruments": [
        {
            "name": "String Ensembles 1",
            "notes": [
             {
                    "pitch": 60,
                    "start": 1.1041666666666667,
                    "end": 1.9583333333333333,
                    "velocity": 0.7165354330708661
                },
               ......
            ]

        },
        ......
    ]
}
{
    "state": "complete",
    "instruments": [
        {
            "name": "String Ensembles 1",
            "notes": [
             {
                    "pitch": 60,
                    "start": 1.1041666666666667,
                    "end": 1.9583333333333333,
                    "velocity": 0.7165354330708661
                },
               ......
            ]

        },
        ......
    ]
}

19. Расширение тегов стиля

  • Теги такие же, как стиль
  • Если вы не знаете, как написать стиль, используйте этот API
  • Оплата: 100 кредитов

post https://api.openai-hk.com/suno/act/tags

shell
curl --request POST \
  --url https://api.openai-hk.com/suno/act/tags \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Connection: keep-alive' \
  --header 'Content-Type: application/json' \
  --header 'myuid: 123' \
  --data '{"original_tags":"student"}'
curl --request POST \
  --url https://api.openai-hk.com/suno/act/tags \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Connection: keep-alive' \
  --header 'Content-Type: application/json' \
  --header 'myuid: 123' \
  --data '{"original_tags":"student"}'
  • original_tags: передайте соответствующее ключевое слово подсказки

  • Ответ:

json
{
  "upsampled_tags": "Laid-back indie pop driven by a clean guitar riff, tight bass, and crisp drums. Verses feature subtle synth textures and gentle background vocals. A catchy chorus lifts with layered harmonies and handclaps. Bridge introduces a bright Rhodes piano before a dynamic final chorus.",
  "request_id": "507acd16-8b84-4e55-be2b-4329d82efb26"
}
{
  "upsampled_tags": "Laid-back indie pop driven by a clean guitar riff, tight bass, and crisp drums. Verses feature subtle synth textures and gentle background vocals. A catchy chorus lifts with layered harmonies and handclaps. Bridge introduces a bright Rhodes piano before a dynamic final chorus.",
  "request_id": "507acd16-8b84-4e55-be2b-4329d82efb26"
}

20. Remaster

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

  • model_name: chirp-carp для v5, chirp-bass для v4.5+

  • clip_id: ID для ремастеринга

  • variation_category поддерживается только на v5+, и имеет только 3 значения: high, normal, subtle

  • Межаккаунтное использование не разрешено

  • Оплата: стоимость одной генерации

  • Тело запроса:

json
{
  "clip_id": "e8bd1ba8-63cd-45f9-b340-7d00f5cfd25b",
  "model_name": "chirp-carp",
  "variation_category": "high"
}
{
  "clip_id": "e8bd1ba8-63cd-45f9-b340-7d00f5cfd25b",
  "model_name": "chirp-carp",
  "variation_category": "high"
}

21. Persona-v2-vox: Стиль исполнителя

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением 7b5a87af-d567-4444-97c2-387ba5c816d5

B. Получение Vox

post https://api.openai-hk.com/suno/act/vox/{clip_id}

  • Межаккаунтное использование не поддерживается — может быть недоступно в случае истечения срока действия аккаунта
  • Для предотвращения злоупотреблений будет снято 100 кредитов
  • vocal_end_s - vocal_start_s должно быть меньше 30

    post https://api.openai-hk.com/suno/act/vox/7b5a87af-d567-4444-97c2-387ba5c816d5

json
{
  "vocal_start_s": 45,
  "vocal_end_s": 74
}
{
  "vocal_start_s": 45,
  "vocal_end_s": 74
}

Ответ: поле id это vox_audio_id = e044ac0d-7eb1-4014-b134-3ff7656886be

json
{
	"id": "e044ac0d-7eb1-4014-b134-3ff7656886be",
	"source_clip_id": "7b5a87af-d567-4444-97c2-387ba5c816d5",
	"status": "complete",
	"vocal_audio_url": "https://cdn1.suno.ai/processed_e044ac0d-7eb1-4014-b134-3ff7656886be_vocals.m4a",
	"vocal_end_s": 74,
	"vocal_start_s": 45,
	"wave_response": {
		"waveform_aggregates": [
			{
				"data": [
					[
						-54,
						60,
						-146,
            ...
          ]
        ]
      }
    ]
  }
}
{
	"id": "e044ac0d-7eb1-4014-b134-3ff7656886be",
	"source_clip_id": "7b5a87af-d567-4444-97c2-387ba5c816d5",
	"status": "complete",
	"vocal_audio_url": "https://cdn1.suno.ai/processed_e044ac0d-7eb1-4014-b134-3ff7656886be_vocals.m4a",
	"vocal_end_s": 74,
	"vocal_start_s": 45,
	"wave_response": {
		"waveform_aggregates": [
			{
				"data": [
					[
						-54,
						60,
						-146,
            ...
          ]
        ]
      }
    ]
  }
}

C. Создание Persona

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

  • root_clip_id должен существовать в системе и не может быть загруженным клипом; получен из шага A
  • Межаккаунтное использование не поддерживается — может быть недоступно в случае истечения срока действия аккаунта
  • Для предотвращения злоупотреблений будет снято 100 кредитов
  • vocal_end_s - vocal_start_s должно быть меньше 30
  • persona_type должен быть vox

Тело запроса:

json
{
  "root_clip_id": "7b5a87af-d567-4444-97c2-387ba5c816d5",
  "name": "food",
  "description": "123",
  "is_public": true,
  "persona_type": "vox",
  "vox_audio_id": "e044ac0d-7eb1-4014-b134-3ff7656886be",
  "vocal_start_s": 66.3,
  "vocal_end_s": 95.3,
  "user_input_styles": "Style: Verse—Chinese Folk narrative + Chorus—explosive rock + Hook—catchy, repetitive loop. A breezy guitar riff kicks in with building drum intensity, blended with \"keyboard typing sounds + faint vocal samples,\" followed by electronic effects layering after 15 seconds. The intro cuts abruptly into the verse with a sharp, punchy \"Lao Xu!\" to instantly grab attention."
}
{
  "root_clip_id": "7b5a87af-d567-4444-97c2-387ba5c816d5",
  "name": "food",
  "description": "123",
  "is_public": true,
  "persona_type": "vox",
  "vox_audio_id": "e044ac0d-7eb1-4014-b134-3ff7656886be",
  "vocal_start_s": 66.3,
  "vocal_end_s": 95.3,
  "user_input_styles": "Style: Verse—Chinese Folk narrative + Chorus—explosive rock + Hook—catchy, repetitive loop. A breezy guitar riff kicks in with building drum intensity, blended with \"keyboard typing sounds + faint vocal samples,\" followed by electronic effects layering after 15 seconds. The intro cuts abruptly into the verse with a sharp, punchy \"Lao Xu!\" to instantly grab attention."
}

Ответ: ключ id со значением fd213afd-ac1c-4822-9802-c1c0ea45e77b является persona_id для следующего шага

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"
  }
}
{
  "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"
  }
}

D. Создание с использованием persona_id

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

  • task должен быть vox (ранее artist_consistency)
  • Примечание: mv поддерживает только chirp-crow (v5+)
  • persona_id получен из шага C
  • artist_clip_id — это clip_id из шага A
  • Поддерживается межаккаунтное использование
  • Для использования chirp-v4-tau, chirp-auk или chirp-bluejay, task должен быть artist_consistency
json
{
  "prompt": "[Verse 1]\nThe noise finally steps aside,\nMoonlight quietly climbs the window frame.\nWeary soul, put down your disguise,\nHide in the soft world of dreams.\n[Chorus] (recommend soft breathy vocals, extremely gentle)\nGoodnight, starlight by the pillow,\nTake you drifting through the Milky Way.\nForget the panic of the daylight,\nSleep now, the night is long.",
  "generation_type": "TEXT",
  "tags": "Ethereal Lullaby, Acoustic Piano, Ambient, Healing, Slow Tempo",
  "negative_tags": "",
  "mv": "chirp-crow",
  "title": "Goodnight",
  "task": "vox",
  "persona_id": "88cca736-7263-4794-8480-360c0123b6fc",
  "artist_clip_id": "6c983654-7ee9-4e1f-b195-47259a5bed48"
}
{
  "prompt": "[Verse 1]\nThe noise finally steps aside,\nMoonlight quietly climbs the window frame.\nWeary soul, put down your disguise,\nHide in the soft world of dreams.\n[Chorus] (recommend soft breathy vocals, extremely gentle)\nGoodnight, starlight by the pillow,\nTake you drifting through the Milky Way.\nForget the panic of the daylight,\nSleep now, the night is long.",
  "generation_type": "TEXT",
  "tags": "Ethereal Lullaby, Acoustic Piano, Ambient, Healing, Slow Tempo",
  "negative_tags": "",
  "mv": "chirp-crow",
  "title": "Goodnight",
  "task": "vox",
  "persona_id": "88cca736-7263-4794-8480-360c0123b6fc",
  "artist_clip_id": "6c983654-7ee9-4e1f-b195-47259a5bed48"
}

22. Mashup

A. Генерация музыки

Используйте сценарии 1, 2 или 3 для генерации музыки и получения двух песен: clip_id_1 = 9f102969-0024-479e-b38f-c0c5db21383dclip_id_2 = 6aebb715-701c-433f-b976-a7ff5cf16255

B. Генерация Mashup

  • task должен быть mashup_condition
  • mashup_clip_ids — это массив ['clip_id_1', 'clip_id_2'] из шага A
  • prompt — это текст; если вы хотите смешать тексты обеих песен, см. 23. Lyrics Mashup
  • Оплата: базовая стоимость генерации одной песни

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

json
{
  "task": "mashup_condition",
  "generation_type": "TEXT",
  "title": "Banban83 vs bluespawn x Orphan of Guangzhou (Mashup)",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-crow",
  "prompt": "You keep turning back inside the station\nI can't bring myself to leave outside\nI have an ominous feeling\nToday's farewell feels like a breakup\n \nYou disappear into the crowd\nLike a dream scattered by the wind\nGuangzhou South Station, crowds surging\nWho cares about the pain in my heart\n \nI'm like an orphan of Guangzhou\nI'm like a superfluous orphan\nI'm like a helpless orphan\nAlone again now\n \nSafe travels my loved one\nTake care my loved one\nSafe travels the one who left\nTake care the one gone far away",

  "mashup_clip_ids": [
    "9f102969-0024-479e-b38f-c0c5db21383d",
    "6aebb715-701c-433f-b976-a7ff5cf16255"
  ]
}
{
  "task": "mashup_condition",
  "generation_type": "TEXT",
  "title": "Banban83 vs bluespawn x Orphan of Guangzhou (Mashup)",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-crow",
  "prompt": "You keep turning back inside the station\nI can't bring myself to leave outside\nI have an ominous feeling\nToday's farewell feels like a breakup\n \nYou disappear into the crowd\nLike a dream scattered by the wind\nGuangzhou South Station, crowds surging\nWho cares about the pain in my heart\n \nI'm like an orphan of Guangzhou\nI'm like a superfluous orphan\nI'm like a helpless orphan\nAlone again now\n \nSafe travels my loved one\nTake care my loved one\nSafe travels the one who left\nTake care the one gone far away",

  "mashup_clip_ids": [
    "9f102969-0024-479e-b38f-c0c5db21383d",
    "6aebb715-701c-433f-b976-a7ff5cf16255"
  ]
}

23. Lyrics Mashup: Микс текстов

json
{
  "lyrics_a": "Sambuy come back bluespawn greenspawn are making you a spawn",
  "lyrics_b": "You keep turning back inside the station\nI can't bring myself to leave outside\nI have an ominous feeling\nToday's farewell feels like a breakup\n \nYou disappear into the crowd\nLike a dream scattered by the wind\nGuangzhou South Station, crowds surging\nWho cares about the pain in my heart\n \nI'm like an orphan of Guangzhou\nI'm like a superfluous orphan\nI'm like a helpless orphan\nAlone again now\n \nSafe travels my loved one\nTake care my loved one\nSafe travels the one who left\nTake care the one gone far away"
}
{
  "lyrics_a": "Sambuy come back bluespawn greenspawn are making you a spawn",
  "lyrics_b": "You keep turning back inside the station\nI can't bring myself to leave outside\nI have an ominous feeling\nToday's farewell feels like a breakup\n \nYou disappear into the crowd\nLike a dream scattered by the wind\nGuangzhou South Station, crowds surging\nWho cares about the pain in my heart\n \nI'm like an orphan of Guangzhou\nI'm like a superfluous orphan\nI'm like a helpless orphan\nAlone again now\n \nSafe travels my loved one\nTake care my loved one\nSafe travels the one who left\nTake care the one gone far away"
}

Результат:

json
{
  "lyrics_request_id": "04edfa84-290e-4a08-bd35-73906079b26e",
  "mashup_id": "1c250665-a7c9-4852-97d1-3d291ebb9565",
  "response": {
    "error_message": "",
    "status": "complete",
    "tags": [],
    "text": "You keep turning back inside the station  \nI can't bring myself to leave outside  \nI have an ominous feeling  \nToday's farewell feels like a breakup  \n\nSambuy come back  \nbluespawn greenspawn are making you a spawn  \nSambuy come back  \nbluespawn greenspawn are making you a spawn  \n\nYou disappear into the crowd  \nLike a dream scattered by the wind  \nGuangzhou South Station, crowds surging  \nWho cares about the pain in my heart  \n\nSambuy come back  \nbluespawn greenspawn  \nare making you a spawn  \n\nI'm like an orphan of Guangzhou  \nI'm like a superfluous orphan  \nI'm like a helpless orphan  \nAlone again now  \n\nSafe travels my loved one  \nTake care my loved one  \nSafe travels the one who left  \nTake care the one gone far away  \n\nSambuy come back  \nbluespawn greenspawn are making you a spawn  \nSambuy don't go  \nbluespawn greenspawn are making you a spawn",
    "title": "Lyrics Mashup"
  }
}
{
  "lyrics_request_id": "04edfa84-290e-4a08-bd35-73906079b26e",
  "mashup_id": "1c250665-a7c9-4852-97d1-3d291ebb9565",
  "response": {
    "error_message": "",
    "status": "complete",
    "tags": [],
    "text": "You keep turning back inside the station  \nI can't bring myself to leave outside  \nI have an ominous feeling  \nToday's farewell feels like a breakup  \n\nSambuy come back  \nbluespawn greenspawn are making you a spawn  \nSambuy come back  \nbluespawn greenspawn are making you a spawn  \n\nYou disappear into the crowd  \nLike a dream scattered by the wind  \nGuangzhou South Station, crowds surging  \nWho cares about the pain in my heart  \n\nSambuy come back  \nbluespawn greenspawn  \nare making you a spawn  \n\nI'm like an orphan of Guangzhou  \nI'm like a superfluous orphan  \nI'm like a helpless orphan  \nAlone again now  \n\nSafe travels my loved one  \nTake care my loved one  \nSafe travels the one who left  \nTake care the one gone far away  \n\nSambuy come back  \nbluespawn greenspawn are making you a spawn  \nSambuy don't go  \nbluespawn greenspawn are making you a spawn",
    "title": "Lyrics Mashup"
  }
}

24. Samples: Генерация песни на основе сэмпла

A. Генерация музыки

  • Используйте сценарии 1, 2 или 3 для генерации музыки и получения clip_id одной песни со значением 0fa07665-6b8e-4a8b-8bd3-7e0cfcdada88
  • Или получите clip_id через API загрузки

B. Генерация сэмплов

  • task должен быть chop_sample_condition
  • chop_sample_clip_id — это clip_id из шага A
  • chop_sample_start_s: время начала сэмпла
  • chop_sample_end_s: время окончания сэмпла
  • Оплата: базовая стоимость генерации одной песни
  • Разрешено межаккаунтное использование

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

json
{
  "task": "chop_sample_condition",
  "generation_type": "TEXT",
  "title": "Breaking My Own News",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-crow",
  "prompt": "[Verse 1]\nPhone lit up\nHeadline in my hand\nFeels made up\nStill says "you won't understand"\nYour name\nMy name\nSide by side in the scroll\nCold black text\nOn a story I used to hold\n\n[Chorus]\nYou're breaking news\nAnd I'm just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou're a story now\nAnd I'm the one you broke it to\n\n[Verse 2]\nNeighbors talk\nThrough a half-closed door\nCoffee cools\nOn a cracked old floor\nYour suitcase snaps\nLike a camera flash\nOne last quote\nThen you cut to black\n\n[Chorus]\nYou're breaking news\nAnd I'm just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou're a story now\nAnd I'm the one you broke it to\n\n[Bridge]\nIs there a line\nWhere we rewind\nOr just a feed\nThat leaves us behind\nTell me\nWho gets\nThe final view\nWhen I stop trending\nWith you\n\n[Chorus]\nYou're breaking news\nAnd I'm just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou're a story now\nAnd I'm the one you broke it to (yeah)",
  "chop_sample_clip_id": "0fa07665-6b8e-4a8b-8bd3-7e0cfcdada88",
  "chop_sample_start_s": 59.88,
  "chop_sample_end_s": 102.16
}
{
  "task": "chop_sample_condition",
  "generation_type": "TEXT",
  "title": "Breaking My Own News",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-crow",
  "prompt": "[Verse 1]\nPhone lit up\nHeadline in my hand\nFeels made up\nStill says "you won't understand"\nYour name\nMy name\nSide by side in the scroll\nCold black text\nOn a story I used to hold\n\n[Chorus]\nYou're breaking news\nAnd I'm just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou're a story now\nAnd I'm the one you broke it to\n\n[Verse 2]\nNeighbors talk\nThrough a half-closed door\nCoffee cools\nOn a cracked old floor\nYour suitcase snaps\nLike a camera flash\nOne last quote\nThen you cut to black\n\n[Chorus]\nYou're breaking news\nAnd I'm just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou're a story now\nAnd I'm the one you broke it to\n\n[Bridge]\nIs there a line\nWhere we rewind\nOr just a feed\nThat leaves us behind\nTell me\nWho gets\nThe final view\nWhen I stop trending\nWith you\n\n[Chorus]\nYou're breaking news\nAnd I'm just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou're a story now\nAnd I'm the one you broke it to (yeah)",
  "chop_sample_clip_id": "0fa07665-6b8e-4a8b-8bd3-7e0cfcdada88",
  "chop_sample_start_s": 59.88,
  "chop_sample_end_s": 102.16
}

25. Sound: Звуковые задачи

  • Тип task это sound
  • mv в настоящее время поддерживает только chirp-crow
  • Параметры помещаются в tags, например loop, BPM 60 становится tempo: 60, G# становится key: G#
  • Оплата: базовая стоимость генерации одной песни

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

json
{
  "task": "sound",
  "generation_type": "TEXT",
  "title": "Ready To Drop Into Anything.",
  "tags": "loop, key: G#, tempo: 60, effects, loops, and one-shots. Ready to drop into anything.",
  "negative_tags": "",
  "mv": "chirp-crow",
  "prompt": "",
  "make_instrumental": true,
  "metadata": {
    "create_mode": "custom"
  }
}
{
  "task": "sound",
  "generation_type": "TEXT",
  "title": "Ready To Drop Into Anything.",
  "tags": "loop, key: G#, tempo: 60, effects, loops, and one-shots. Ready to drop into anything.",
  "negative_tags": "",
  "mv": "chirp-crow",
  "prompt": "",
  "make_instrumental": true,
  "metadata": {
    "create_mode": "custom"
  }
}

26. Inspo: Создание на основе вдохновения

  • Тип task это playlist_condition или vox_playlist_condition
  • playlist_id это inspiration
  • playlist_clip_ids — это значения clip_id эталонных песен, можно выбрать до 4 песен
  • Межаккаунтное использование не разрешено, значения clip_id в playlist_clip_ids должны быть из одного аккаунта
  • Для унификации playlist_clip_ids под одним аккаунтом используйте "указанный clip_id" загрузку
  • Когда task это vox_playlist_condition, persona_id не должен быть пустым
  • Оплата: базовая стоимость генерации одной песни

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

json
{
  "task": "playlist_condition",
  "generation_type": "TEXT",
  "title": "Dad, Are You Listening?",
  "tags": "deepstep, harmonizing vocals, improvisation",
  "negative_tags": "",
  "mv": "chirp-crow",
  "prompt": "[Verse 1]\nYou missed my birthday\nSaid you got the days all wrong\nI laughed and said it's okay\nBut it stung all day long\nYou call me \"kiddo\"\nLike I'm still eight years old\nI'm standing in the doorway\nYou're already grabbing your coat\n\n[Chorus]\nDad\nAre you listening?\nOr just hearing me talk?\nI'm standing right beside you\nStill feel across the block\nI'd trade every story\nYou tell about what you did\nFor five quiet minutes\nWhere you ask me how I am\n\n[Verse 2]\nYou fix the hallway light\nAsk if my car's been tuned\nYou never touch the photos\nStacked in the spare room\nYou say you're proud of me\nLike it's something to get through\nI keep saving all my questions\nFor a softer version of you\n\n[Chorus]\nDad\nAre you listening?\nOr just hearing me talk?\nI'm standing right beside you\nStill feel across the block\nI'd trade every story\nYou tell about what you did\nFor five quiet minutes\nWhere you ask me how I am\n\n[Bridge]\nWhat was it like to be your age?\nWho broke your heart\nWho slammed your door?\nDid you ever feel this small\nIn your own kitchen floor? (yeah)\n\n[Chorus]\nDad\nAre you listening?\nI'm not asking you to change\nJust sit here at this table\nSay my name like it's my name\nI'd trade every silence\nEvery shrug and every laugh\nFor one honest moment\nWhere you let me love you back",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "playlist_id": "inspiration",
  "playlist_clip_ids": [
    "150ff04a-496e-4425-9ad7-d878354129de",
    "b09ed072-04c2-485f-a925-9f0cc9db4e26"
  ]
}
{
  "task": "playlist_condition",
  "generation_type": "TEXT",
  "title": "Dad, Are You Listening?",
  "tags": "deepstep, harmonizing vocals, improvisation",
  "negative_tags": "",
  "mv": "chirp-crow",
  "prompt": "[Verse 1]\nYou missed my birthday\nSaid you got the days all wrong\nI laughed and said it's okay\nBut it stung all day long\nYou call me \"kiddo\"\nLike I'm still eight years old\nI'm standing in the doorway\nYou're already grabbing your coat\n\n[Chorus]\nDad\nAre you listening?\nOr just hearing me talk?\nI'm standing right beside you\nStill feel across the block\nI'd trade every story\nYou tell about what you did\nFor five quiet minutes\nWhere you ask me how I am\n\n[Verse 2]\nYou fix the hallway light\nAsk if my car's been tuned\nYou never touch the photos\nStacked in the spare room\nYou say you're proud of me\nLike it's something to get through\nI keep saving all my questions\nFor a softer version of you\n\n[Chorus]\nDad\nAre you listening?\nOr just hearing me talk?\nI'm standing right beside you\nStill feel across the block\nI'd trade every story\nYou tell about what you did\nFor five quiet minutes\nWhere you ask me how I am\n\n[Bridge]\nWhat was it like to be your age?\nWho broke your heart\nWho slammed your door?\nDid you ever feel this small\nIn your own kitchen floor? (yeah)\n\n[Chorus]\nDad\nAre you listening?\nI'm not asking you to change\nJust sit here at this table\nSay my name like it's my name\nI'd trade every silence\nEvery shrug and every laugh\nFor one honest moment\nWhere you let me love you back",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "playlist_id": "inspiration",
  "playlist_clip_ids": [
    "150ff04a-496e-4425-9ad7-d878354129de",
    "b09ed072-04c2-485f-a925-9f0cc9db4e26"
  ]
}
  • Тип task это vox_playlist_condition
json
{
  "task": "vox_playlist_condition",
  "generation_type": "TEXT",
  "title": "Wind and Rain",
  "tags": "dark orchestral, heavy dense percussion, suspenseful, intense, dynamic tempo, brass, strings, synths, D minor, 120 BPM, massive soundstage, no distortion",
  "mv": "chirp-fenix",
  "prompt": "[Verse 1]\nWater marks still on the windowsill\nYou left and I never wiped them dry\nI kept the umbrella by the door\nLike words taken back halfway\n\nThe tree on the corner keeps swaying\nLeaves answer for me first\nIf you're also on the road\nWould you look up at me?\n\n[Pre-Chorus]\nWind blows old letters open\nRain soaks the names\nI stand in place\nListening to thoughts drip one by one\n\n[Chorus]\nWind and rain, wind and rain\nBoth searching for you\nWind and rain, wind and rain\nTurning silence into memory\nIf you turn back and see me\nDon't hide in the past again\nWind and rain, wind and rain\nI'm still here",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "persona_id": "eaa7f82b-c617-4f1f-a5ec-5ce241b8845a",
  "playlist_clip_ids": [
    "b5af4274-52f9-44c7-b1a7-0fad16da7649",
    "bf6cb6a3-b71a-4680-8a1c-87361036b7b4"
  ]
}
{
  "task": "vox_playlist_condition",
  "generation_type": "TEXT",
  "title": "Wind and Rain",
  "tags": "dark orchestral, heavy dense percussion, suspenseful, intense, dynamic tempo, brass, strings, synths, D minor, 120 BPM, massive soundstage, no distortion",
  "mv": "chirp-fenix",
  "prompt": "[Verse 1]\nWater marks still on the windowsill\nYou left and I never wiped them dry\nI kept the umbrella by the door\nLike words taken back halfway\n\nThe tree on the corner keeps swaying\nLeaves answer for me first\nIf you're also on the road\nWould you look up at me?\n\n[Pre-Chorus]\nWind blows old letters open\nRain soaks the names\nI stand in place\nListening to thoughts drip one by one\n\n[Chorus]\nWind and rain, wind and rain\nBoth searching for you\nWind and rain, wind and rain\nTurning silence into memory\nIf you turn back and see me\nDon't hide in the past again\nWind and rain, wind and rain\nI'm still here",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "persona_id": "eaa7f82b-c617-4f1f-a5ec-5ce241b8845a",
  "playlist_clip_ids": [
    "b5af4274-52f9-44c7-b1a7-0fad16da7649",
    "bf6cb6a3-b71a-4680-8a1c-87361036b7b4"
  ]
}

27. Voice: Клонирование голоса

  • Клонирование голоса по сути создает личную библиотеку голоса (persona), которую можно использовать для генерации песен
  • Persona требуется только один аудиофайл, содержащий голос пользователя, должен иметь текст или текст песни
  • Вторичная проверка не требуется

A. Генерация Persona

  • Вторичная проверка не требуется
  • Оплата: 500 кредитов/запрос
  • Варианты singer_skill_level: Advanced Intermediate Beginner Professional
  • url запись пользователя, должна читать какой-то текст или петь, поддерживаемые форматы mp3 wav

post https://api.openai-hk.com/suno/persona/voice/one

json
{
  "url": "http://cos.aitutu.cc/mp4/ru-user-voice.mp3",
  "singer_skill_level": "Intermediate",
  "name": "mytitle",
  "vocal_end_s": 120,
  "vocal_start_s": 0
}
{
  "url": "http://cos.aitutu.cc/mp4/ru-user-voice.mp3",
  "singer_skill_level": "Intermediate",
  "name": "mytitle",
  "vocal_end_s": 120,
  "vocal_start_s": 0
}
  • Возвращает id как persona_id
json
{
  "id": "5d8772c3-f901-48b4-a966-96e360930351",
  "name": "mytitle",
  "description": "",
  "image_s3_id": "https://cdn1.suno.ai/d41a1c49.jpeg",
  "is_suno_persona": false,
  "is_trashed": false,
  "is_hidden": false,
  "is_owned": true,
  "is_public": false,
  "is_public_approved": false,
  "is_loved": false,
  "upvote_count": 0,
  "clip_count": 0,
  "is_following": false,
  "follower_count": 0,
  "persona_type": "vox",
  "source": "recording",
  "user_input_styles": "pop",
  "vocal_start_s": 0,
  "vocal_end_s": 120,
  "vocal_clip_id": "60c14c78-3aec-436e-b0bf-c8007c2653e9"
}
{
  "id": "5d8772c3-f901-48b4-a966-96e360930351",
  "name": "mytitle",
  "description": "",
  "image_s3_id": "https://cdn1.suno.ai/d41a1c49.jpeg",
  "is_suno_persona": false,
  "is_trashed": false,
  "is_hidden": false,
  "is_owned": true,
  "is_public": false,
  "is_public_approved": false,
  "is_loved": false,
  "upvote_count": 0,
  "clip_count": 0,
  "is_following": false,
  "follower_count": 0,
  "persona_type": "vox",
  "source": "recording",
  "user_input_styles": "pop",
  "vocal_start_s": 0,
  "vocal_end_s": 120,
  "vocal_clip_id": "60c14c78-3aec-436e-b0bf-c8007c2653e9"
}

B. Использование persona_id для генерации музыки

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

  • persona_id получен из шага A
  • Межаккаунтное использование не разрешено
json
{
  "task": "vox",
  "generation_type": "TEXT",
  "title": "New Year",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "prompt": "[Verse 1]\nRed paper on the old door frame\nSteam rising white from the pot\nMessages pouring into my phone\n'Coming back?' just like before, so eager\n\n[Chorus]\nHappy New Year joy all around\nRed lanterns hanging bright downtown\nFamily reunion happiness blooms\nWishes coming true blessings abound\nHappy New Year\n\n[Verse 2]\nSpring breeze gently blowing in\nBringing lucky flowers to bloom\nNew clothes new shoes new hopes\nDreams unfold from this room",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "persona_id": "5d8772c3-f901-48b4-a966-96e360930351"
}
{
  "task": "vox",
  "generation_type": "TEXT",
  "title": "New Year",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "prompt": "[Verse 1]\nRed paper on the old door frame\nSteam rising white from the pot\nMessages pouring into my phone\n'Coming back?' just like before, so eager\n\n[Chorus]\nHappy New Year joy all around\nRed lanterns hanging bright downtown\nFamily reunion happiness blooms\nWishes coming true blessings abound\nHappy New Year\n\n[Verse 2]\nSpring breeze gently blowing in\nBringing lucky flowers to bloom\nNew clothes new shoes new hopes\nDreams unfold from this room",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "persona_id": "5d8772c3-f901-48b4-a966-96e360930351"
}

27. Voice: Клонирование голоса - требуется вторичная проверка

  • Клонирование голоса по сути создает личную библиотеку голоса (persona), которую можно использовать для генерации песен
  • Persona требуется 2 аудиофайла: один с голосом пользователя, один проверочный голос
  • Проверка: прочитайте фрагмент текста для регистрации вашего голоса

A. Загрузка песни

post https://api.openai-hk.com/suno/persona/voice/vox

json
{
  "url": "http://cos.aitutu.cc/mp4/c4818ce3-37d6-4b45-8e01-58b750e5fe57.mp3",
  "vocal_end_s": 23.24,
  "vocal_start_s": 0
}
{
  "url": "http://cos.aitutu.cc/mp4/c4818ce3-37d6-4b45-8e01-58b750e5fe57.mp3",
  "vocal_end_s": 23.24,
  "vocal_start_s": 0
}
  • Возвращает:
json
{
  "id": "9e196fa1-20f3-43c1-8066-06a2a6b6bea9",
  "status": "submitted",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768"
}
{
  "id": "9e196fa1-20f3-43c1-8066-06a2a6b6bea9",
  "status": "submitted",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768"
}
  • Возвращенный id это vox_audio_id для следующего шага
  • Оплата: 100 кредитов/запрос

B. Получение примера предложения

post https://api.openai-hk.com/suno/act/phrase

  • Варианты language: zh en es fr pt de ja ko hi ru
  • voice_recording_id из возврата шага A
  • Межаккаунтное использование не разрешено
  • Оплата: 100 кредитов/запрос
shell
curl --request POST \
  --url https://api.openai-hk.com/suno/act/phrase \
  --header 'Authorization: Bearer sk-youkey' \
  --header 'Content-Type: application/json' \
  --data '{
	 "language":"zh","voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768"
}
'
curl --request POST \
  --url https://api.openai-hk.com/suno/act/phrase \
  --header 'Authorization: Bearer sk-youkey' \
  --header 'Content-Type: application/json' \
  --data '{
	 "language":"zh","voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768"
}
'
  • Тело:
json
{
  "language": "zh",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768"
}
{
  "language": "zh",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768"
}
  • Возвращает phrase_id ID предложения для следующего шага (можно использовать только один раз)
json
{
  "phrase_id": "45d639aa-ad8a-41cd-a356-f81207491d3a",
  "phrase_text": "轻快的歌声在空气中自由飘扬"
}
{
  "phrase_id": "45d639aa-ad8a-41cd-a356-f81207491d3a",
  "phrase_text": "轻快的歌声在空气中自由飘扬"
}

C. Проверка голоса

post https://api.openai-hk.com/suno/persona/voice/verify

  • url запись пользователя, попросите пользователя записать текст из phrase_text и загрузить как url, поддерживаемые форматы mp3 wav
  • voice_recording_id из возврата шага A
  • phrase_id из возврата шага B
  • Межаккаунтное использование не разрешено
  • Примечание: этот запрос можно использовать только один раз; если он не удается, нужно получить новый phrase
  • Оплата: 100 кредитов/запрос
json
{
  "url": "https://cdn1.suno.ai/28fc2b84-07d3-45d7-85f3-3db6684801aa.mp3",
  "phrase_id": "45d639aa-ad8a-41cd-a356-f81207491d3a",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768"
}
{
  "url": "https://cdn1.suno.ai/28fc2b84-07d3-45d7-85f3-3db6684801aa.mp3",
  "phrase_id": "45d639aa-ad8a-41cd-a356-f81207491d3a",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768"
}
  • Возвращает id как verification_id
json
{
  "id": "979282b1-8968-46bc-b599-ea14946be48e",
  "status": "approved",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768",
  "verification_recording_id": "286df4b3-c10d-42ab-b757-f6381ae34853",
  "verification_prompt_text": "轻快的歌声在空气中自由飘扬",
  "rejection_reason": "",
  "created_at": "2026-03-29T12:51:51.030983Z",
  "updated_at": "2026-03-29T12:51:52.016067Z"
}
{
  "id": "979282b1-8968-46bc-b599-ea14946be48e",
  "status": "approved",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768",
  "verification_recording_id": "286df4b3-c10d-42ab-b757-f6381ae34853",
  "verification_prompt_text": "轻快的歌声在空气中自由飘扬",
  "rejection_reason": "",
  "created_at": "2026-03-29T12:51:51.030983Z",
  "updated_at": "2026-03-29T12:51:52.016067Z"
}

D. Создание Persona

post https://api.openai-hk.com/suno/persona/voice/create

  • vox_audio_id из возврата шага A
  • voice_recording_id из возврата шага A
  • verification_id из возврата шага C
  • Варианты singer_skill_level: Advanced Intermediate Beginner Professional
  • image_s3_id должен быть в формате base64 изображения
  • Примечание: независимо от того, является ли is_public true или false, он автоматически устанавливается в false
  • is_public равный false означает, что созданный persona_id не может использоваться между аккаунтами
  • Межаккаунтное использование не разрешено
  • Оплата: 100 кредитов/запрос
json
{
  "name": "mytitle",
  "description": "god",
  "image_s3_id": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/ base64 image....",
  "is_public": true,
  "persona_type": "vox",
  "vocal_start_s": 0,
  "vocal_end_s": 23.24,
  "user_input_styles": "pop",
  "source": "random_song",
  "singer_skill_level": "Intermediate",
  "is_voice_recording": true,
  "vox_audio_id": "9e196fa1-20f3-43c1-8066-06a2a6b6bea9",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768",
  "verification_id": "979282b1-8968-46bc-b599-ea14946be48e"
}
{
  "name": "mytitle",
  "description": "god",
  "image_s3_id": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/ base64 image....",
  "is_public": true,
  "persona_type": "vox",
  "vocal_start_s": 0,
  "vocal_end_s": 23.24,
  "user_input_styles": "pop",
  "source": "random_song",
  "singer_skill_level": "Intermediate",
  "is_voice_recording": true,
  "vox_audio_id": "9e196fa1-20f3-43c1-8066-06a2a6b6bea9",
  "voice_recording_id": "575023b1-b071-4dbd-9f0d-176665c60768",
  "verification_id": "979282b1-8968-46bc-b599-ea14946be48e"
}
  • Возвращает id как persona_id
json
{
  "id": "dde0be60-5280-4bd2-89a0-4020ddd3db52",
  "name": "mytitle",
  "description": "god",
  "image_s3_id": "https://cdn1.suno.ai/d81b5898.jpeg",
  "is_suno_persona": false,
  "is_trashed": false,
  "is_hidden": false,
  "is_owned": true,
  "is_public": false,
  "is_public_approved": false,
  "is_loved": false,
  "upvote_count": 0,
  "clip_count": 0,
  "is_following": false,
  "follower_count": 0,
  "persona_type": "vox",
  "source": "recording",
  "user_input_styles": "pop",
  "vocal_start_s": 0,
  "vocal_end_s": 23.24,
  "vocal_clip_id": "9e196fa1-20f3-43c1-8066-06a2a6b6bea9"
}
{
  "id": "dde0be60-5280-4bd2-89a0-4020ddd3db52",
  "name": "mytitle",
  "description": "god",
  "image_s3_id": "https://cdn1.suno.ai/d81b5898.jpeg",
  "is_suno_persona": false,
  "is_trashed": false,
  "is_hidden": false,
  "is_owned": true,
  "is_public": false,
  "is_public_approved": false,
  "is_loved": false,
  "upvote_count": 0,
  "clip_count": 0,
  "is_following": false,
  "follower_count": 0,
  "persona_type": "vox",
  "source": "recording",
  "user_input_styles": "pop",
  "vocal_start_s": 0,
  "vocal_end_s": 23.24,
  "vocal_clip_id": "9e196fa1-20f3-43c1-8066-06a2a6b6bea9"
}

E. Использование persona_id для генерации музыки

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

  • persona_id получен из шага D
  • Межаккаунтное использование не разрешено
json
{
  "task": "vox",
  "generation_type": "TEXT",
  "title": "New Year",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "prompt": "[Verse 1]\nRed paper on the old door frame\nSteam rising white from the pot\nMessages pouring into my phone\n'Coming back?' just like before, so eager",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "persona_id": "dde0be60-5280-4bd2-89a0-4020ddd3db52"
}
{
  "task": "vox",
  "generation_type": "TEXT",
  "title": "New Year",
  "tags": "",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "prompt": "[Verse 1]\nRed paper on the old door frame\nSteam rising white from the pot\nMessages pouring into my phone\n'Coming back?' just like before, so eager",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "persona_id": "dde0be60-5280-4bd2-89a0-4020ddd3db52"
}

28. Custom-Model: Пользовательская модель

  • 2026.03.28 Suno представила custom-model
  • Загрузите минимум 6 своих песен для создания пользовательской модели
  • Ограничение: один аккаунт может создать только 3 модели

A. Загрузка музыки

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

  • Тело:
json
{
  "url": "http://cdnimg.exbapp.com/ai/2024-06-18/d416d9c3c34eb22c7d8c094831d8dbd0.mp3"
}
{
  "url": "http://cdnimg.exbapp.com/ai/2024-06-18/d416d9c3c34eb22c7d8c094831d8dbd0.mp3"
}
  • Сначала получите значение clip_id 7173c086-844d-4b9e-9cee-e771f7ded3eb через API загрузки

  • Начиная со второй загрузки, нужно включить clip_id для унификации под одним аккаунтом

  • Тело для второй загрузки и далее:

json
{
  "url": "http://cdnimg.exbapp.com/ai/2024-06-18/d416d9c3c34eb22c7d8c094831d8dbd0.mp3",
  "clip_id": "7173c086-844d-4b9e-9cee-e771f7ded3eb"
}
{
  "url": "http://cdnimg.exbapp.com/ai/2024-06-18/d416d9c3c34eb22c7d8c094831d8dbd0.mp3",
  "clip_id": "7173c086-844d-4b9e-9cee-e771f7ded3eb"
}
  • Загрузите минимум 6 песен

B. Создание Custom-Model

post https://api.openai-hk.com/suno/custom-model

  • clip_ids — это значения clip_id загруженных песен, должны быть под одним аккаунтом, минимум 6 загрузок, оптимально 24
  • Оплата: 10× стоимость генерации песни
  • Тело:
json
{
  "clip_ids": [
    "7173c086-844d-4b9e-9cee-e771f7ded3eb",
    "c87451ec-8e09-4358-b93b-99a0f59374b3",
    "9c58ae41-4364-4995-827c-8033109abb5d",
    "92022750-af59-44e1-a559-74d6f2503f5e",
    "06215aa7-7725-4741-91d2-cc316e2454fe",
    "f7a1e392-e659-4376-8b24-f267ba4f6e30"
  ],
  "name": "Your Model Name"
}
{
  "clip_ids": [
    "7173c086-844d-4b9e-9cee-e771f7ded3eb",
    "c87451ec-8e09-4358-b93b-99a0f59374b3",
    "9c58ae41-4364-4995-827c-8033109abb5d",
    "92022750-af59-44e1-a559-74d6f2503f5e",
    "06215aa7-7725-4741-91d2-cc316e2454fe",
    "f7a1e392-e659-4376-8b24-f267ba4f6e30"
  ],
  "name": "Your Model Name"
}
  • Возвращает id как model_id
json
{
  "id": "3f788ae1-4646-4d20-aa76-c33035bf12e6",
  "status": "pending"
}
{
  "id": "3f788ae1-4646-4d20-aa76-c33035bf12e6",
  "status": "pending"
}

C. Запрос задачи Custom-Model

get https://api.openai-hk.com/suno/custom-model/feed/{model_id}

  • model_id — это возвращенный id выше
  • При успехе возвращает:
json
{
  "id": "3f788ae1-4646-4d20-aa76-c33035bf12e6",
  "status": "complete"
}
{
  "id": "3f788ae1-4646-4d20-aa76-c33035bf12e6",
  "status": "complete"
}

D. Использование Custom-Model

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

  • mv это chirp-custom:{model_id}, т.е. chirp-custom:3f788ae1-4646-4d20-aa76-c33035bf12e6
  • Межаккаунтное использование не поддерживается, будет запрашивать аккаунт на основе model_id
  • Тело:
json
{
  "generation_type": "TEXT",
  "title": "Dook",
  "tags": "dungeon neo soul, bass music",
  "negative_tags": "",
  "mv": "chirp-custom:3f788ae1-4646-4d20-aa76-c33035bf12e6",
  "prompt": "[Verse]\nSunrise creepin' up again\nAnother day another spin\nMy head is buzzin' like a wire\nFuelin' up this inner fire",
  "metadata": {
    "create_mode": "custom"
  }
}
{
  "generation_type": "TEXT",
  "title": "Dook",
  "tags": "dungeon neo soul, bass music",
  "negative_tags": "",
  "mv": "chirp-custom:3f788ae1-4646-4d20-aa76-c33035bf12e6",
  "prompt": "[Verse]\nSunrise creepin' up again\nAnother day another spin\nMy head is buzzin' like a wire\nFuelin' up this inner fire",
  "metadata": {
    "create_mode": "custom"
  }
}

29. Speed: Изменение скорости

  • Получите clip_id через создание или загрузку

post https://api.openai-hk.com/suno/act/speed/{clip_id}

A. Создание изменения скорости

  • speed_multiplier — это множитель скорости, диапазон значений 0.25~4.0
  • keep_pitch когда true сохраняет высоту тона, когда false изменяет высоту тона
  • title — это название после изменения скорости
shell
curl --request POST \
  --url https://api.openai-hk.com/suno/act/speed/6718cf1e-fa9f-433f-b859-a71f994cd3b8 \
  --header 'Accept: */*' \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
    "speed_multiplier": 0.9439,
    "keep_pitch": false,
    "title": "Good News (0.94x)"
}'
curl --request POST \
  --url https://api.openai-hk.com/suno/act/speed/6718cf1e-fa9f-433f-b859-a71f994cd3b8 \
  --header 'Accept: */*' \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
    "speed_multiplier": 0.9439,
    "keep_pitch": false,
    "title": "Good News (0.94x)"
}'

Возвращает id как новый clip_id для последующих запросов:

json
{
  "id": "01a4c72b-db63-4be2-a0db-008fe0f105a4",
  "status": "processing",
  "title": "Good News (0.94x)",
  "play_count": 0,
  "upvote_count": 0
}
{
  "id": "01a4c72b-db63-4be2-a0db-008fe0f105a4",
  "status": "processing",
  "title": "Good News (0.94x)",
  "play_count": 0,
  "upvote_count": 0
}

B. Запрос изменения скорости

get https://api.openai-hk.com/suno/feed/{clip_id}

shell
curl --request GET \
  --url https://api.openai-hk.com/suno/feed/01a4c72b-db63-4be2-a0db-008fe0f105a4 \
  --header 'Accept: */*' \
  --header 'Authorization: Bearer hk-your-key'
curl --request GET \
  --url https://api.openai-hk.com/suno/feed/01a4c72b-db63-4be2-a0db-008fe0f105a4 \
  --header 'Accept: */*' \
  --header 'Authorization: Bearer hk-your-key'

30. Add Stem: Добавление инструмента

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

json
{
  "task": "stem_condition",
  "generation_type": "TEXT",
  "title": "Good News",
  "tags": "Pop with bright four-on-the-floor drums",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "prompt": "[Verse 1]\nI got a note in my hand",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom",
    "is_remix": true
  },
  "stem_condition_clip_id": "d4b0af45-c974-4197-abdf-d51f6619ab6d",
  "stem_control_tags": "add Drums",
  "batch_size": 2
}
{
  "task": "stem_condition",
  "generation_type": "TEXT",
  "title": "Good News",
  "tags": "Pop with bright four-on-the-floor drums",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "prompt": "[Verse 1]\nI got a note in my hand",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom",
    "is_remix": true
  },
  "stem_condition_clip_id": "d4b0af45-c974-4197-abdf-d51f6619ab6d",
  "stem_control_tags": "add Drums",
  "batch_size": 2
}
  • Разрешено межаккаунтное использование

  • Примечания к параметрам:

    • make_instrumental должен быть true, если это инструментальная музыка
    • task должен быть stem_condition
    • stem_condition_clip_id — это загруженный или обычный сгенерированный Suno clip_id
    • stem_control_tags это add Strings, также add Drums add Bass и т.д., см. suno-studio
    • batch_size это 2
  • Оплата: 1.2× базовая стоимость из-за контроля рисков Suno на stem_condition

  • Возвращает стандартные данные API создания

json
{
  "id": "8fb0a232-aef3-4f8a-82ad-72a3fde0bcc6",
  "clips": [
    {
      "id": "clipsId1"
    },
    {
      "id": "clipsId2"
    }
  ]
}
{
  "id": "8fb0a232-aef3-4f8a-82ad-72a3fde0bcc6",
  "clips": [
    {
      "id": "clipsId1"
    },
    {
      "id": "clipsId2"
    }
  ]
}

31. Extract Stems and MIDI: Извлечение дорожек и MIDI

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

  • Межаккаунтное использование не разрешено
  • Примечания к параметрам:
    • task должен быть gen_stem
    • stem_task должен быть extract
    • stem_type_id должен быть 91
    • stem_type_group_name и stem_name имеют одинаковое значение, эталонные значения: Lead Vocal Drum Kit Kick Snare Risers Bass Backing Vocals Piano Electric Guitar Percussion String Section Synth Acoustic Guitar Sound Effects Synth Pad Synth Bass Guitar Brass Section Organ Electronic Drum Kit Lead Electric Guitar Synth Keys Rhythm Electric Guitar Electric Piano Upright Bass Keyboards Distorted Electric Guitar Synth Strings Synth Lead Woodwinds Rhythm Acoustic Guitar Flute Harp Tambourine Trumpet Arpeggiator Accordion Fiddle Pedal Steel Guitar Synth Voice Violin Digital Piano Synth Brass Mandolin Choir Banjo Bells Clarinet Tenor Saxophone Trombone Shaker French Horn Glockenspiel Electric Bass Cello Timpani Harmonica Marimba Vibraphone Lap Steel Guitar Saxophone Orchestra Horns Cymbals Hand Clap Oboe Celesta Congas Drone Alto Saxophone Double Bass Ukulele Harpsichord Baritone Saxophone Xylophone Tuba Bass Guitar Whistle Lead Guitar Rhodes 808 Bongos Bassoon Cowbell Viola Sitar Steel Drums Piccolo Theremin Bagpipes Hi-Hat Music Box Melodica Tabla Koto Djembe Taiko Didgeridoo
  • Оплата: 1× базовая стоимость
json
{
  "task": "gen_stem",
  "generation_type": "TEXT",
  "title": "my title",
  "tags": "pop",
  "negative_tags": "",
  "mv": "chirp-v3-0",
  "prompt": "",
  "make_instrumental": true,
  "metadata": {
    "create_mode": "custom",
    "is_remix": true
  },
  "continue_clip_id": "fcd7be5e-f907-4fce-a47f-f0784a139be3",
  "stem_type_id": 91,
  "stem_type_group_name": "Piano",
  "stem_task": "extract",
  "stem_name": "Piano"
}
{
  "task": "gen_stem",
  "generation_type": "TEXT",
  "title": "my title",
  "tags": "pop",
  "negative_tags": "",
  "mv": "chirp-v3-0",
  "prompt": "",
  "make_instrumental": true,
  "metadata": {
    "create_mode": "custom",
    "is_remix": true
  },
  "continue_clip_id": "fcd7be5e-f907-4fce-a47f-f0784a139be3",
  "stem_type_id": 91,
  "stem_type_group_name": "Piano",
  "stem_task": "extract",
  "stem_name": "Piano"
}
  • Возвращает 4 clip_ids
  • Используйте эти 4 clip_ids для получения MIDI, см. 18. Получение MIDI

32. Параметр длительности

  • duration это 10~360 секунд
  • Поддерживается только на v5.5+, mv должен быть chirp-fenix

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

json
{
  "generation_type": "TEXT",
  "title": "Good news",
  "tags": "syncopated basslines, modal",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "prompt": "[Verse]\nSunrise creepin\nGold on the floor",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "duration": 330
}
{
  "generation_type": "TEXT",
  "title": "Good news",
  "tags": "syncopated basslines, modal",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "prompt": "[Verse]\nSunrise creepin\nGold on the floor",
  "make_instrumental": false,
  "metadata": {
    "create_mode": "custom"
  },
  "duration": 330
}

33. Nice Upload

  • Для решения проблем с авторскими правами на загруженные песни можно использовать API nice upload
  • После загрузки вы можете делать кавер-версии/ремиксы между аккаунтами без беспокойства об истечении срока действия аккаунта
  • Длительность: занимает более 2 минут, реализовано как асинхронная задача
  • Оплата: 10,000 кредитов/запрос
  • Более короткая длительность имеет более высокую вероятность успеха
  • Сгенерированный clip_id в настоящее время поддерживает:

A. Создание задачи загрузки

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

  • name название песни, обязательно
  • url ссылка на песню, обязательно
shell
curl --request POST \
  --url https://api.openai-hk.com/suno/uploads/nice \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
    "url": "https://myfile.aibeke.com/dong-feng-po.mp3",
    "name":"Dong Feng Po"
} '
curl --request POST \
  --url https://api.openai-hk.com/suno/uploads/nice \
  --header 'Authorization: Bearer hk-your-key' \
  --header 'Content-Type: application/json' \
  --data '{
    "url": "https://myfile.aibeke.com/dong-feng-po.mp3",
    "name":"Dong Feng Po"
} '
  • Возвращает:
json
{
  "clip_id": "",
  "id": "hkfc3337-8e41-4d30-9fd9-55bfe352876c",
  "message": "",
  "status": "submitted"
}
{
  "clip_id": "",
  "id": "hkfc3337-8e41-4d30-9fd9-55bfe352876c",
  "message": "",
  "status": "submitted"
}

B. Получение статуса задачи загрузки

get https://api.openai-hk.com/suno/uploads/nice/{id}

shell
curl --request GET \
  --url https://api.openai-hk.com/suno/uploads/nice/hkfc3337-8e41-4d30-9fd9-55bfe352876c \
  --header 'Authorization: Bearer hk-your-key'
curl --request GET \
  --url https://api.openai-hk.com/suno/uploads/nice/hkfc3337-8e41-4d30-9fd9-55bfe352876c \
  --header 'Authorization: Bearer hk-your-key'
  • Успешный ответ: clip_id — это ID песни Suno
json
{
  "id": "hkfc3337-8e41-4d30-9fd9-55bfe352876c",
  "status": "complete",
  "clip_id": "e5021b7a-6f9f-4eed-8690-448126593d1f",
  "message": ""
}
{
  "id": "hkfc3337-8e41-4d30-9fd9-55bfe352876c",
  "status": "complete",
  "clip_id": "e5021b7a-6f9f-4eed-8690-448126593d1f",
  "message": ""
}
  • Ответ при ошибке:
json
{
  "id": "hkfc3337-8e41-4d30-9fd9-55bfe352876c",
  "status": "error",
  "clip_id": "",
  "message": "Song download failed: HTTP Error 404: Not Found"
}
{
  "id": "hkfc3337-8e41-4d30-9fd9-55bfe352876c",
  "status": "error",
  "clip_id": "",
  "message": "Song download failed: HTTP Error 404: Not Found"
}

C. Использование clip_id для кавер-версии/ремикса

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

  • cover_clip_id — это clip_id для кавер-версии
  • prompt текст требует преобразования китайского в пиньинь, иначе могут быть проблемы с авторскими правами
  • tags может контролировать различные стили
  • Тело запроса:
json
{
  "prompt": "[Intro]\n[arpeggiated clean electric guitar riff, piano chords]\n\n[Verse 1]\n[breathy male vocals]\nyī zhǎn lí chóu gū dān zhù lì zài chuāng kǒu\nwǒ zài mén hòu jiǎ zhuāng nǐ rén hái méi zǒu\njiù dì rú zhòng yóu yuè yuán gèng jì mò\nyè bàn qīng xǐng de zhú huǒ bù rěn kē zé wǒ\nyī hú piāo pō làng jī tiān yá nán rù hóu\nnǐ zǒu zhī hòu jiǔ nuǎn huí yì sī niàn shòu\nshuǐ xiàng dōng liú shí jiān zěn me tōu\nhuā kāi jiù yī cì chéng shú wǒ què cuò guò\n\n[Chorus]\n[drums and bass enter, full band arrangement]\nshuí zài yòng pí pá dàn zòu yī qū dōng fēng pò\nfēng yè jiāng gù shì rǎn sè jié jú wǒ kàn tòu\nlí bā wài de gǔ dào wǒ qiān zhù nǐ zǒu guò\nhuāng yān màn cǎo de nián tóu jiù lián fēn shǒu dōu hěn shěn mò\nshuí zài yòng pí pá dàn zòu yī qū dōng fēng pò\nfēng yè jiāng gù shì rǎn sè jié jú wǒ kàn tòu\nlí bā wài de gǔ dào wǒ qiān zhù nǐ zǒu guò\nhuāng yān màn cǎo de nián tóu jiù lián fēn shǒu dōu hěn shěn mò",
  "generation_type": "TEXT",
  "tags": "rock, punk",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "title": "My Dong Feng Po",
  "continue_clip_id": null,
  "continue_at": null,
  "continued_aligned_prompt": null,
  "infill_start_s": null,
  "infill_end_s": null,
  "task": "cover",
  "cover_clip_id": "e5021b7a-6f9f-4eed-8690-448126593d1f"
}
{
  "prompt": "[Intro]\n[arpeggiated clean electric guitar riff, piano chords]\n\n[Verse 1]\n[breathy male vocals]\nyī zhǎn lí chóu gū dān zhù lì zài chuāng kǒu\nwǒ zài mén hòu jiǎ zhuāng nǐ rén hái méi zǒu\njiù dì rú zhòng yóu yuè yuán gèng jì mò\nyè bàn qīng xǐng de zhú huǒ bù rěn kē zé wǒ\nyī hú piāo pō làng jī tiān yá nán rù hóu\nnǐ zǒu zhī hòu jiǔ nuǎn huí yì sī niàn shòu\nshuǐ xiàng dōng liú shí jiān zěn me tōu\nhuā kāi jiù yī cì chéng shú wǒ què cuò guò\n\n[Chorus]\n[drums and bass enter, full band arrangement]\nshuí zài yòng pí pá dàn zòu yī qū dōng fēng pò\nfēng yè jiāng gù shì rǎn sè jié jú wǒ kàn tòu\nlí bā wài de gǔ dào wǒ qiān zhù nǐ zǒu guò\nhuāng yān màn cǎo de nián tóu jiù lián fēn shǒu dōu hěn shěn mò\nshuí zài yòng pí pá dàn zòu yī qū dōng fēng pò\nfēng yè jiāng gù shì rǎn sè jié jú wǒ kàn tòu\nlí bā wài de gǔ dào wǒ qiān zhù nǐ zǒu guò\nhuāng yān màn cǎo de nián tóu jiù lián fēn shǒu dōu hěn shěn mò",
  "generation_type": "TEXT",
  "tags": "rock, punk",
  "negative_tags": "",
  "mv": "chirp-fenix",
  "title": "My Dong Feng Po",
  "continue_clip_id": null,
  "continue_at": null,
  "continued_aligned_prompt": null,
  "infill_start_s": null,
  "infill_end_s": null,
  "task": "cover",
  "cover_clip_id": "e5021b7a-6f9f-4eed-8690-448126593d1f"
}