Producer icon

Producer API

シードと歌詞を制御できるプロ品質の音楽。

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

model: "producer"

Producer の特長

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

Producer で作成

Apiframeの Producer 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
producer
パラメータキー
producerParams
モダリティ
音楽
プロバイダー
Producer
平均完了時間
~45s

機能

音声対応
平均時間~45秒

クイックスタート

APIキーを添えて POST /v2/music/generate に1回リクエストを送るだけで Producer による生成が始まります。レスポンスには、ポーリングまたは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": "producer",
        "producerParams": {
            "model_version": "FUZZ_2_PRO",
            "instrumental": false,
            "lyrics": "Verse 1…",
            "title": "Optional"
        }
    }'
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": "producer",
        "producerParams": {
            "model_version": "FUZZ_2_PRO",
            "instrumental": False,
            "lyrics": "Verse 1…",
            "title": "Optional"
        }
    },
)
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": "producer",
    "producerParams": {
      "model_version": "FUZZ_2_PRO",
      "instrumental": false,
      "lyrics": "Verse 1…",
      "title": "Optional"
    }
  }),
});
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);

入力スキーマ

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

パラメータ 必須 デフォルト 許可値 / 範囲 説明
prompt string 必須 生成する内容のテキスト説明。
model string 必須 "producer" "producer" このエンドポイントのモデル識別子。
producerParams.model_version string 任意 "FUZZ_2_PRO" "FUZZ_2_PRO", "FUZZ_2", "FUZZ_2_RAW", "FUZZ_1_1_PRO", "FUZZ_1_PRO", "FUZZ_1" Model version
producerParams.instrumental boolean 任意 false Instrumental
producerParams.lyrics string 任意 Optional — overrides any lyrics inferred from the prompt.
producerParams.title string 任意 Track title
producerParams.seed string 任意 String identifier — reuse to reproduce the same composition.
producerParams.lyrics_strength number 任意 min 0, max 1, step 0.05 Lyrics strength
producerParams.sound_strength number 任意 min 0.2, max 1, step 0.05 Sound strength
producerParams.weirdness number 任意 min 0, max 1, step 0.05 Weirdness

よくある質問

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

Producer の API はありますか?

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

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

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

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

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

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

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

解決しませんでしたか?

Producer API で開発を始めよう

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

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

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