At a glance
The Seed Audio API runs Seed Audio through Mage at POST https://api.mage.space/v1/seed_audio/generate. A request at the default settings costs 19 Gems (about $0.019), with no subscription. Seed Audio takes saved audio references by @handle in the prompt.
Audio
Output
1
Variant
19
Gems per clip, default
$0.019
About, in USD
Overview
What the Seed Audio API does
Speech, dialogue, music, and sound effects from a single prompt, as an MP3 of exactly the length you ask, 5 seconds to 2 minutes. Match a voice from up to 3 audio clips.
Voices, dialogue, music, and sound effects from one prompt, as an MP3 of exactly the requested duration.
It accepts image as inputs.
Quick start
Call the Seed Audio API
Set MAGE_API_KEY, submit to /seed_audio/generate, and poll status_url until the request completes.
cURL
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"Python
import os, time, requests
headers = {"Authorization": f"Bearer {os.environ['MAGE_API_KEY']}"}
request = requests.post(
"https://api.mage.space/v1/seed_audio/generate",
headers=headers,
json={
"prompt": "A calm narrator reading a short weather report",
"duration": "5",
"model_id": "seed-audio-1.0"
},
).json()
while request["status"] in ("queued", "in_progress"):
time.sleep(3)
request = requests.get(request["status_url"], headers=headers).json()
print(request["status"], request["result"] and request["result"]["url"])JavaScript
const headers = {
Authorization: `Bearer ${process.env.MAGE_API_KEY}`,
'Content-Type': 'application/json',
};
let request = await fetch('https://api.mage.space/v1/seed_audio/generate', {
method: 'POST',
headers,
body: JSON.stringify({
"prompt": "A calm narrator reading a short weather report",
"duration": "5",
"model_id": "seed-audio-1.0"
}),
}).then((response) => response.json());
while (['queued', 'in_progress'].includes(request.status)) {
await new Promise((resolve) => setTimeout(resolve, 3000));
request = await fetch(request.status_url, { headers }).then((r) => r.json());
}
console.log(request.status, request.result?.url);Models
Seed Audio model_id values
Send model_id to pick a variant. A request without one runs the default.
| model_id | Name | Default |
|---|---|---|
| seed-audio-1.0 | Seed Audio | Yes |
Options
Seed Audio parameters
Allowed values across all variants; a variant may offer fewer. The docs list the options per variant.
| Field | Values |
|---|---|
| duration | 5, 10, 30, 60, 120 |
Inputs
Media inputs Seed Audio accepts
Send each as an https URL, a data URL, or an upload of up to 100 MB.
| Field | Role |
|---|---|
| image | The reference image. |
Rules
What the Seed Audio API enforces
- An image reference cannot be combined with audio references: send one kind or the other.
- The prompt is at most 2986 characters.
- `sample_rate` is one of 8000, 16000, 24000, 32000, 44100, 48000.
- `speech_rate` is a whole number from -50 to 100.
- `loudness_rate` is a whole number from -50 to 100.
- `pitch_rate` is a whole number from -12 to 12.
More audio models
Other audio generation APIs on Mage
FAQ
Frequently asked questions
How much does the Seed Audio API cost?
A Seed Audio request at the default settings (Seed Audio) costs 19 Gems, about $0.019. Other resolutions, durations, and variants change the price; the response reports the exact charge. A generation that fails is refunded; one Mage's content policy blocks is not.
What is the Seed Audio API endpoint?
POST https://api.mage.space/v1/seed_audio/generate with an Authorization: Bearer header carrying your Mage API key. The response includes a status_url to poll for the result.
Which Seed Audio models can I call?
seed-audio-1.0 (Seed Audio). The default is Seed Audio.
Does Seed Audio support reference images or characters?
Seed Audio accepts image. Seed Audio takes saved audio references by @handle in the prompt.
Can I use Seed Audio from Claude or ChatGPT?
Yes. Connect the Mage MCP server to Claude, ChatGPT, Claude Code, Grok, or Cursor and ask for Seed Audio by name. Your assistant reads its options with get_model and quotes the price before it generates.
How long are Seed Audio results kept?
Results and inputs are kept for 30 days. Download anything you want to keep to your own storage.
Start building with Mage
One account, one Gems balance, every model. Pay only for what you generate.