Udio icon

Udio API

カスタム歌詞に対応した高品質な音楽生成。

Udio を1回のAPIコールで統合できます。1つのキー、1つの統一エンドポイント、そしてApiframe上のすべてのモデルで共通の請求。

model: "udio"

Udio の特長

  • ネイティブに同期した音声を生成。
  • 高速処理 — 1回の生成あたり平均約90秒。
  • Udio のアカウント不要の従量課金。成功した生成分だけお支払いいただきます。
  • Apiframe のすべてのモデルで、1つのAPIキー・統一請求・冪等性・Webhookに対応。

Udio で作成

Apiframeの Udio API で生成した出力例です。

サンプル準備中

Upbeat indie pop track with bright guitars and a catchy chorus

サンプル準備中

Lo-fi hip hop beat with mellow piano and soft vinyl crackle

サンプル準備中

Epic orchestral cinematic score with soaring strings and percussion

概要

エンドポイント
POST /v2/music/generate
モデルID
udio
パラメータキー
udioParams
モダリティ
音楽
プロバイダー
Udio
平均完了時間
~90s

機能

音声対応
平均時間~90秒

クイックスタート

APIキーを添えて POST /v2/music/generate に1回リクエストを送るだけで Udio による生成が始まります。レスポンスには、ポーリングまたはWebhookで受け取れる jobId が返ります。

curl -X POST https://api.apiframe.ai/v2/music/generate \
  -H "X-API-Key: afk_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
        "prompt": "an upbeat synthwave track with a driving bassline",
        "model": "udio",
        "udioParams": {
            "lyrics_type": "generate",
            "title": "Optional",
            "style": "e.g. moody synthwave, 90 BPM",
            "negative_tags": "value"
        }
    }'
import requests

response = requests.post(
    "https://api.apiframe.ai/v2/music/generate",
    headers={
        "X-API-Key": "afk_your_api_key_here",
        "Content-Type": "application/json",
    },
    json={
        "prompt": "an upbeat synthwave track with a driving bassline",
        "model": "udio",
        "udioParams": {
            "lyrics_type": "generate",
            "title": "Optional",
            "style": "e.g. moody synthwave, 90 BPM",
            "negative_tags": "value"
        }
    },
)
print(response.json())  # { "jobId": "...", "status": "QUEUED" }
const response = await fetch("https://api.apiframe.ai/v2/music/generate", {
  method: "POST",
  headers: {
    "X-API-Key": "afk_your_api_key_here",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "prompt": "an upbeat synthwave track with a driving bassline",
    "model": "udio",
    "udioParams": {
      "lyrics_type": "generate",
      "title": "Optional",
      "style": "e.g. moody synthwave, 90 BPM",
      "negative_tags": "value"
    }
  }),
});
const { jobId } = await response.json();
console.log(jobId);

レスポンスとジョブのライフサイクル

生成は非同期で行われます。送信が成功すると 202 AcceptedjobId が返ります。ステータスが COMPLETED になるまで GET /v2/jobs/{id} をポーリングする(または webhook_url を指定する)と、result フィールドに出力URLが格納されます。

1. 送信レスポンス (202)

{
  "jobId": "b2c3d4e5-f6a7-8901-bcde-f23456789012",
  "status": "QUEUED"
}

2. 結果をポーリング

curl https://api.apiframe.ai/v2/jobs/JOB_ID \
  -H "X-API-Key: afk_your_api_key_here"
import requests, time

while True:
    job = requests.get(
        "https://api.apiframe.ai/v2/jobs/JOB_ID",
        headers={"X-API-Key": "afk_your_api_key_here"},
    ).json()
    if job["status"] in ("COMPLETED", "FAILED"):
        break
    time.sleep(2)
print(job["result"])
let job;
do {
  await new Promise((r) => setTimeout(r, 2000));
  job = await fetch("https://api.apiframe.ai/v2/jobs/JOB_ID", {
    headers: { "X-API-Key": "afk_your_api_key_here" },
  }).then((r) => r.json());
} while (job.status !== "COMPLETED" && job.status !== "FAILED");
console.log(job.result);

入力スキーマ

Udio エンドポイントが受け付けるリクエストパラメータです。モデル固有のオプションは、下記のパラメータオブジェクトの中にネストされます。

パラメータ 必須 デフォルト 許可値 / 範囲 説明
prompt string 必須 生成する内容のテキスト説明。
model string 必須 "udio" "udio" このエンドポイントのモデル識別子。
udioParams.lyrics_type string 任意 "generate" "generate", "user", "instrumental" Lyrics
udioParams.title string 任意 Track title
udioParams.style string 任意 Style hints
udioParams.negative_tags string 任意 Negative tags
udioParams.seed number 任意 step 1 Reuse a number to reproduce the same result.

よくある質問

Udio APIに関するよくある質問をまとめました。

Udio の API はありますか?

はい。Apiframe は単一の REST エンドポイント(`POST /v2/music/generate`、`model: "udio"`)で Udio を提供します。対応するすべてのモデルで、統一されたAPI・キー・請求をご利用いただけ、Udio の個別アカウントは不要です。

Udio API の料金はいくらですか?

Udio は Apiframe のシンプルな従量課金制で、成功した生成分のみお支払いいただきます。プランと数量割引は料金ページをご覧ください。

Udio API はどのように呼び出しますか?

`X-API-Key` と、`model: "udio"` を含む JSON ボディを添えて `/v2/music/generate` に POST リクエストを送ります。レスポンスで返る `jobId` を `GET /v2/jobs/{id}` でポーリングするか、Webhook で結果を受け取ります。

Udio はどんなパラメータに対応していますか?

Udio は、共通の `prompt`・`webhook_url` に加えて、`udioParams` の下にネストされた 5 個のモデル固有パラメータを受け付けます。型やデフォルト値を含む一覧は上記の入力スキーマをご覧ください。

解決しませんでしたか?

Udio API で開発を始めよう

APIキーを取得すれば数分で Udio を統合できます — 従量課金。

無料クレジットですぐに開始
すべてのモデルを1つのAPIで
Webhook・SDK・冪等性に対応
プロバイダーのアカウント不要

ご質問はありますか? Discordに参加 または 営業に問い合わせる