Перейти до основного вмісту

Вступ

Suno — це AI аудіосервіс від Ace Data Cloud для генерації музики за допомогою штучного інтелекту. Через уніфікований API Ace Data Cloud ви можете швидко інтегрувати Suno за допомогою JavaScript для створення музики з тексту, налаштування текстів пісень, продовження пісень, каверів, розділення вокалу, генерації текстів пісень тощо.

Вимоги

  • Обліковий запис Ace Data Cloud та отриманий API Token
  • Node.js 18+ або сучасне браузерне середовище

Базове використання

Основна кінцева точка виклику Suno API:
POST https://api.acedata.cloud/suno/audios
У цьому прикладі використовується модель chirp-v5. Доступні моделі: chirp-v5, v4-5-plus, v4-5, v4, v3-5. Повний приклад коду на JavaScript:
const response = await fetch("https://api.acedata.cloud/suno/audios", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "action": "generate",
  "prompt": "A cheerful pop song about summer vacation",
  "model": "chirp-v5",
  "custom": false
}),
});

const result = await response.json();
console.log(result);
Будь ласка, замініть YOUR_API_TOKEN на фактичний токен, отриманий на платформі Ace Data Cloud.

Обробка відповіді

Рекомендується перевіряти статус відповіді та обробляти помилки:
if (response.ok) {
  const result = await response.json();
  console.log("Виклик успішний:", result);
} else {
  console.error(`Виклик не вдався, статус: ${response.status}`);
  const error = await response.text();
  console.error(error);
}

Обгортка для Node.js

Рекомендується створити багаторазову функцію:
async function callSuno(data) {
  const response = await fetch("https://api.acedata.cloud/suno/audios", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.ACE_API_TOKEN}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify(data),
  });
  if (!response.ok) throw new Error(`API error: ${response.status}`);
  return response.json();
}

Обробка помилок

Поширені коди помилок:
Код стануОпис
401Помилка автентифікації, перевірте API Token
403Недостатньо коштів або відсутній доступ
429Перевищено ліміт частоти запитів
500Внутрішня помилка сервера

Наступні кроки