curl --request POST \
--url https://api.apimart.ai/v1/music/generations/uploadCover \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "suno",
"version": "v6",
"audio_url": "https://example.com/reference.mp3",
"custom": true,
"instrumental": true,
"tags": "piano, ambient",
"duration_s": 120,
"variety": "normal",
"audio_format": "m4a"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/music/generations/uploadCover",
headers={"Authorization": "Bearer <token>"},
json={
"model": "suno",
"version": "v6",
"audio_url": "https://example.com/reference.mp3",
"custom": True,
"instrumental": True,
"tags": "piano, ambient",
"duration_s": 120,
"audio_format": "m4a",
},
)
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/music/generations/uploadCover", {
method: "POST",
headers: {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "suno",
version: "v6",
audio_url: "https://example.com/reference.mp3",
custom: true,
instrumental: true,
tags: "piano, ambient",
duration_s: 120,
audio_format: "m4a"
})
});
console.log(await response.json());
{
"code": 200,
"data": [
{"status": "submitted", "task_id": "task_01M24YMN4EV04M84R5QYM77R1E"}
]
}
Suno
Загрузка аудио и создание кавера
Загрузите общедоступный URL аудио и создайте кавер с помощью Suno V6
POST
/
v1
/
music
/
generations
/
uploadCover
curl --request POST \
--url https://api.apimart.ai/v1/music/generations/uploadCover \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "suno",
"version": "v6",
"audio_url": "https://example.com/reference.mp3",
"custom": true,
"instrumental": true,
"tags": "piano, ambient",
"duration_s": 120,
"variety": "normal",
"audio_format": "m4a"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/music/generations/uploadCover",
headers={"Authorization": "Bearer <token>"},
json={
"model": "suno",
"version": "v6",
"audio_url": "https://example.com/reference.mp3",
"custom": True,
"instrumental": True,
"tags": "piano, ambient",
"duration_s": 120,
"audio_format": "m4a",
},
)
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/music/generations/uploadCover", {
method: "POST",
headers: {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "suno",
version: "v6",
audio_url: "https://example.com/reference.mp3",
custom: true,
instrumental: true,
tags: "piano, ambient",
duration_s: 120,
audio_format: "m4a"
})
});
console.log(await response.json());
{
"code": 200,
"data": [
{"status": "submitted", "task_id": "task_01M24YMN4EV04M84R5QYM77R1E"}
]
}
Этот endpoint создаёт кавер прямо из публичной URL аудио; предварительный
uploadTask не нужен. Он возвращает task_id; опрашивайте GET /v1/music/tasks/{task_id}.curl --request POST \
--url https://api.apimart.ai/v1/music/generations/uploadCover \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "suno",
"version": "v6",
"audio_url": "https://example.com/reference.mp3",
"custom": true,
"instrumental": true,
"tags": "piano, ambient",
"duration_s": 120,
"variety": "normal",
"audio_format": "m4a"
}'
import requests
response = requests.post(
"https://api.apimart.ai/v1/music/generations/uploadCover",
headers={"Authorization": "Bearer <token>"},
json={
"model": "suno",
"version": "v6",
"audio_url": "https://example.com/reference.mp3",
"custom": True,
"instrumental": True,
"tags": "piano, ambient",
"duration_s": 120,
"audio_format": "m4a",
},
)
print(response.json())
const response = await fetch("https://api.apimart.ai/v1/music/generations/uploadCover", {
method: "POST",
headers: {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "suno",
version: "v6",
audio_url: "https://example.com/reference.mp3",
custom: true,
instrumental: true,
tags: "piano, ambient",
duration_s: 120,
audio_format: "m4a"
})
});
console.log(await response.json());
Authorizations
string
обязательно
Bearer Token. Получите ключ на странице управления API-ключами.
Body
string
по умолчанию:"suno"
Всегда используйте
suno.string
обязательно
Прямая общедоступная HTTP(S)-URL аудиофайла. Исходное аудио должно быть короче 8 минут. Локальные пути, URL
blob: и ссылки с авторизацией не поддерживаются.string
по умолчанию:"v6"
Публичная версия:
v6 / v6-wild / v6-mini. По умолчанию v6; исключите при custom_model_id.string
Полный UUID, возвращённый задачей создания модели. Несовместим с
version и persona_id.boolean
Отправляйте поле явно. При
false используйте gpt_description, при true — поля текста и стиля.boolean
по умолчанию:"false"
Генерировать ли инструментальное аудио. При
custom=true и значении false поле prompt обязательно.string
Описание идеи. Обязательно при
custom=false, до 3 000 символов.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"}
]
}