メインコンテンツへスキップ

はじめに

Suno は Ace Data Cloud が提供する AI 音声サービスであり、Suno AI 音楽生成を実現します。Ace Data Cloud の統一 API を通じて、JavaScript を使って素早く Suno を統合し、テキストからの音楽生成、カスタム歌詞作成、曲の続き作成、カバー、ボーカル分離、歌詞生成などの機能を利用できます。

前提条件

  • Ace Data Cloud のアカウントを持ち、API トークンを取得していること
  • Node.js 18+ または最新のブラウザ環境

基本的な使い方

Suno API のメインエンドポイントは以下です:
POST https://api.acedata.cloud/suno/audios
本例では chirp-v5 モデルを使用します。利用可能なモデルは:chirp-v5v4-5-plusv4-5v4v3-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 トークンを確認してください
403残高不足またはアクセス権限なし
429リクエスト頻度制限超過
500サーバー内部エラー

次のステップ