curl --request POST \
--url https://api.apimart.ai/v1/music/generations/uploadExtend \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "suno",
"version": "v6-mini",
"audio_url": "https://example.com/reference.wav",
"continue_at": 30,
"prompt": "[Outro]\nthe next journey, let's walk together",
"tags": "acoustic pop",
"duration_s": 60,
"max_mode": true,
"audio_format": "mp3"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/music/generations/uploadExtend",
headers={"Authorization": "Bearer <token>"},
json={
"model": "suno",
"version": "v6-mini",
"audio_url": "https://example.com/reference.wav",
"continue_at": 30,
"prompt": "[Outro]\nthe next leg of our journey, let's walk together",
"tags": "acoustic pop",
"duration_s": 60,
"max_mode": True,
"audio_format": "mp3",
},
)
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/music/generations/uploadExtend", {
method: "POST",
headers: {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "suno",
version: "v6-mini",
audio_url: "https://example.com/reference.wav",
continue_at: 30,
prompt: "[Outro]\nthe next leg of our journey, let's go together",
tags: "acoustic pop",
duration_s: 60,
max_mode: true,
audio_format: "mp3"
})
});
console.log(await response.json());
{
"code": 200,
"data": [
{"status": "submitted", "task_id": "task_01M24YMN4EV04M84R5QYM77R1E"}
]
}
Suno
Загрузка и продолжение аудио
Загрузите общедоступный URL аудио и продолжите песню с указанной позиции с помощью Suno V6
POST
/
v1
/
music
/
generations
/
uploadExtend
curl --request POST \
--url https://api.apimart.ai/v1/music/generations/uploadExtend \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "suno",
"version": "v6-mini",
"audio_url": "https://example.com/reference.wav",
"continue_at": 30,
"prompt": "[Outro]\nthe next journey, let's walk together",
"tags": "acoustic pop",
"duration_s": 60,
"max_mode": true,
"audio_format": "mp3"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/music/generations/uploadExtend",
headers={"Authorization": "Bearer <token>"},
json={
"model": "suno",
"version": "v6-mini",
"audio_url": "https://example.com/reference.wav",
"continue_at": 30,
"prompt": "[Outro]\nthe next leg of our journey, let's walk together",
"tags": "acoustic pop",
"duration_s": 60,
"max_mode": True,
"audio_format": "mp3",
},
)
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/music/generations/uploadExtend", {
method: "POST",
headers: {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "suno",
version: "v6-mini",
audio_url: "https://example.com/reference.wav",
continue_at: 30,
prompt: "[Outro]\nthe next leg of our journey, let's go together",
tags: "acoustic pop",
duration_s: 60,
max_mode: true,
audio_format: "mp3"
})
});
console.log(await response.json());
{
"code": 200,
"data": [
{"status": "submitted", "task_id": "task_01M24YMN4EV04M84R5QYM77R1E"}
]
}
Endpoint продлевает публичную URL аудио напрямую; предварительный
uploadTask не нужен. Всегда используется пользовательский режим; не отправляйте custom, instrumental и gpt_description.curl --request POST \
--url https://api.apimart.ai/v1/music/generations/uploadExtend \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "suno",
"version": "v6-mini",
"audio_url": "https://example.com/reference.wav",
"continue_at": 30,
"prompt": "[Outro]\nthe next journey, let's walk together",
"tags": "acoustic pop",
"duration_s": 60,
"max_mode": true,
"audio_format": "mp3"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/music/generations/uploadExtend",
headers={"Authorization": "Bearer <token>"},
json={
"model": "suno",
"version": "v6-mini",
"audio_url": "https://example.com/reference.wav",
"continue_at": 30,
"prompt": "[Outro]\nthe next leg of our journey, let's walk together",
"tags": "acoustic pop",
"duration_s": 60,
"max_mode": True,
"audio_format": "mp3",
},
)
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/music/generations/uploadExtend", {
method: "POST",
headers: {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "suno",
version: "v6-mini",
audio_url: "https://example.com/reference.wav",
continue_at: 30,
prompt: "[Outro]\nthe next leg of our journey, let's go together",
tags: "acoustic pop",
duration_s: 60,
max_mode: true,
audio_format: "mp3"
})
});
console.log(await response.json());
Authorizations
string
обязательно
Bearer Token. Получите ключ на странице управления API-ключами.
Body
string
по умолчанию:"suno"
Всегда используйте
suno.string
обязательно
Прямая общедоступная HTTP(S)-URL аудиофайла. Исходное аудио должно быть короче 8 минут. Локальные пути и URL
blob: не поддерживаются.number
обязательно
Начало продления. Не меньше 1 секунды и строго меньше фактической длительности исходного аудио.
string
по умолчанию:"v6"
Публичная версия:
v6 / v6-wild / v6-mini. По умолчанию v6; исключите при custom_model_id.string
Полный UUID, возвращённый задачей создания модели. Несовместим с
version и persona_id.string
Текст продолжения, до 5 000 символов. При отсутствии продолжение будет инструментальным.
string
Описание стиля, до 1 000 символов.
string
Название, до 80 символов.
string
Исключаемые стили.
number
Вес стиля от 0 до 1.
number
Вес креативности от 0 до 1.
number
Вес аудио от 0 до 1.
boolean
Создавать ли второй вариант исходного текста.
string
Пол голоса:
Male или Female.string
ID Persona, несовместим с
custom_model_id.integer
Целевая длительность от 10 до 360 секунд. Фактическая длительность определяется результатом задачи.
string
Вариативность стиля:
off / normal / high / extra / max.boolean
по умолчанию:"false"
Включает режим Max с оплатой по двойной стандартной цене.
string
Формат вывода:
mp3 / m4a / wav.Response
integer
Код статуса ответа.
array
Результат отправки. Прочитайте
data[0].task_id и опрашивайте API задач.{
"code": 200,
"data": [
{"status": "submitted", "task_id": "task_01M24YMN4EV04M84R5QYM77R1E"}
]
}