1 つのキーで全モデルに対応
画像・動画・音声の 28 モデルを、ひとつの REST API とひとつの Gems 残高で利用できます。URL のパスを変えるだけでモデルを切り替えられます。
ひと目でわかる概要
Mageの音声生成APIは、https://api.mage.space/v1/seed_audio/generate でSeed Audioを実行します。テキストプロンプトを送信すると(ボイスリファレンスや画像も追加可能)、ボイス、音楽、効果音を含む最長120秒の音声ファイルを受け取れます。料金はクリップごとにGemsで支払い、サブスクリプションは不要です。
1
音声モデル
$0.019
標準の最安価格(1クリップあたり)
20
同時生成数
$0
月額料金
モデル
料金は1回の生成ごとにGemsで表示しています。標準パックでは1,000 Gemsが$1で、大きいパックにはボーナスGemsが付きます。料金はモデル、解像度、長さによって変わります。ここにはデフォルト設定での料金を表示しており、実際の請求額は各レスポンスのbilling.gems_chargedで確認できます。生成に失敗した場合は返金されますが、Mageのコンテンツポリシーによりブロックされた場合は返金されません。
| モデル | おすすめの用途 | model_idの値 | デフォルト価格 |
|---|---|---|---|
| Seed Audio | ひとつのプロンプトからボイス、音楽、効果音を生成 | seed-audio-1.0 | 19 Gems ($0.019) |
クイックスタート
MAGE_API_KEYを設定してリクエストを送信し、完了するまでポーリングします。URLのseed_audioは、上記のどのモデルにも置き換えられます。
STATUS_URL=$(curl --request POST 'https://api.mage.space/v1/seed_audio/generate' \
--header "Authorization: Bearer $MAGE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"prompt": "A calm narrator reading a short weather report",
"duration": "5",
"model_id": "seed-audio-1.0"
}' | jq -r '.status_url')
# Repeat until status is "completed"; result.url is the file
curl "$STATUS_URL" --header "Authorization: Bearer $MAGE_API_KEY"// npm install @mage-space/sdk
import Mage from '@mage-space/sdk';
const mage = new Mage(); // reads MAGE_API_KEY
const request = await mage.run('seed_audio', {
prompt: 'A calm narrator reading a short weather report',
duration: '5',
model_id: 'seed-audio-1.0',
});
console.log(request.result.url);# pip install mage-space
from mage_space import Mage
mage = Mage() # reads MAGE_API_KEY
request = mage.run("seed_audio", {
"prompt": "A calm narrator reading a short weather report",
"duration": "5",
"model_id": "seed-audio-1.0",
})
print(request["result"]["url"])使い方
すべてのモデルで、認証方式、非同期リクエストの流れ、フィールド名が共通です。
Mageにサインインし、API → APIキーを開いてキーを作成します。キーはmage_sk_で始まり、表示されるのは一度だけです。1つのアカウントで有効なキーは10個まで持てます。
Authorization: Bearerヘッダーを付けて、https://api.mage.space/v1/{model}/generateにJSONボディをPOSTします。レスポンスはすぐに返り、request_id、status、status_urlが含まれます。Idempotency-Keyヘッダーを送れば、リトライしても二重に支払うことはありません。
statusがcompleted、failed、cancelledのいずれかになるまで、status_urlをポーリングします。完了したリクエストには、画像・動画・音声ファイルを指すresult.urlが含まれ、ファイルは30日間保存されます。
本番運用向け
画像・動画・音声の 28 モデルを、ひとつの REST API とひとつの Gems 残高で利用できます。URL のパスを変えるだけでモデルを切り替えられます。
サブスクリプションも最低利用額もありません。Gems を購入し、リクエストごとに表示価格が差し引かれます。生成に失敗した場合は返却されます(Mage のコンテンツポリシーによりブロックされた場合を除く)。
冪等キーを使えば、再送信しても二重に課金されず、元のリクエストの結果が返ります。
キャラクターやリファレンスを一度保存しておけば、プロンプトに @handle と書くだけで、対応するすべてのモデルで使えます。
画像・動画・音声の入力は URL またはデータ URL で送信できます。署名付きアップロードなら最大 100 MB のファイルもアップロード可能です。
1 アカウントで 20 件まで同時に生成できます。上限はご利用内容に応じて引き上げることも可能です。拒否されたリクエストに課金されることはありません。
ユースケース
動画、解説コンテンツ、オーディオブック向けのナレーションを生成。話す速さ、音量、ピッチも調整できます。
ボイスクリップをリファレンスとして保存し、@handleで指定すれば、複数のクリップで同じボイスを使えます。
ゲームやアプリ向けの環境音、フォーリー、UIサウンドを、説明文から作成できます。
SNS用クリップや広告のBGMを、プロンプトから生成できます。
Seed Audioと動画APIを組み合わせて、音のないモデルで作ったクリップにサウンドを追加できます。
Claude、ChatGPT、または自作のエージェントから、MCPサーバーやREST API経由で音声を生成できます。
FAQ
はい。Seed Audioは、指定した声質または保存済みのボイスリファレンスでスクリプトを読み上げ、話す速さ、音量、ピッチを調整できます。同じプロンプト欄から、音楽や効果音も生成できます。
Seed Audioでは、最大120秒のクリップを生成できます。
サブスクリプションや月額料金はありません。生成ごとに、モデルごとの表示価格が Gems で差し引かれます。標準パックでは 1,000 Gems が $1 です。各モデルのページにはデフォルト設定での価格が掲載されており、各レスポンスには実際の請求額が含まれます。生成に失敗した場合は返却されますが、Mage のコンテンツポリシーでブロックされた場合は返却されません。残高が足りないリクエストは、課金される前に拒否されます。
いいえ。API は Gems だけで利用できます。メンバーシッププランやアプリ内での無制限生成は API リクエストには適用されないため、Gems のある Mage アカウントなら誰でも呼び出せます。
はい。APIやMCPサーバー経由を含め、Mageで作成したコンテンツは商用利用できます。クレジット表記は歓迎しますが、必須ではありません。
1アカウントで、待機中または実行中の生成は同時に20件までです。上限を超えた送信は429で拒否され、料金はかかりません。ご利用の用途に合わせて上限を引き上げたい場合は、[email protected] までご連絡ください。
はい。エージェントはキーを使ってREST APIを呼び出せるほか、Mage MCPサーバーにも接続できます。MCPサーバーでは、Claude、ChatGPT、Claude Code、Grok、Cursor向けに、モデルの選択、料金の見積もり、生成、結果の取得を行える16個のツールをすぐに使えます。詳しくはMCPサーバーをご覧ください。
はい。npmの公式パッケージ @mage-space/sdk とPyPIのmage-spaceはオープンソースで、全モデルに対応した型を備えています。送信、結果の待機、安全な再試行、ファイルのアップロードをまとめて処理します。ComfyUIをお使いの方は、comfyui-mageノードパックをインストールできます。詳しくはMage SDKをご覧ください。
クライアントの接続先を https://api.mage.space/v1 に変更し、MageのキーをBearerトークンとして送信して、各項目をモデルページに合わせてください。prompt、aspect_ratio、resolution、duration、model_idは、どのMageモデルでも同じように使えます。リクエストは非同期なので、送信後にstatus_urlをポーリングしてください。
アカウントはひとつ、Gemsの残高もひとつで、すべてのモデルが使えます。料金は生成した分だけです。