REST API

Build with ManifoldGen

Generate native video, production-ready images, and original music through one small JSON API. Pay only for successful generations.

Quickstart

1. Create a key

Sign in on Account and copy your API key.

2. Add credits

Credits are pay-as-you-go and never expire.

3. Generate

Send a prompt, then poll the returned job URL.

Send your key as Authorization: Bearer …. Keep it on your server; never ship it in public browser code.

Generate video

Creates an asynchronous video job. Audio is enabled by default.

curl https://manifoldgen.com/api/service \
  -X POST \
  -H "Authorization: Bearer $MANIFOLDGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "service": "video",
    "prompt": "A glass greenhouse at night, rain on the roof",
    "aspect_ratio": "16:9",
    "size": "native",
    "duration": 5,
    "num_steps": 20,
    "include_audio": true,
    "output_format": "webm-av1"
  }'

202 Accepted

{
  "result": {
    "job_id": "8a17…",
    "status": "queued",
    "status_url": "/api/video-jobs/8a17…"
  },
  "estimated_credits": 101,
  "estimated_cost_usd": 1.01
}
sizepreview | balanced | native | audioDefault: balanced
duration4–60 seconds (audio: up to 45)Default: 5
aspect_ratio16:9, 9:16, 1:1, 4:3, 3:4, 21:9Default: 16:9
num_steps8–30; more steps increase time and priceDefault: 20
include_audioGenerate native audio when availableDefault: true
output_formatwebm-av1 | mp4-h264Default: webm-av1
latent_upscaleSample at base size, then a learned clean-latent 2× upscaler runs before decode (2× output resolution). Omit to use the worker defaultDefault: unset

Poll a job

Poll every 2–5 seconds until status is completed. Completed responses include the durable video URL, actual cost, and credits used.

curl https://manifoldgen.com/api/video-jobs/8a17… \
  -H "Authorization: Bearer $MANIFOLDGEN_API_KEY"
Store the job ID. Jobs survive client disconnects and can be recovered later.

Generate images

Image requests return synchronously and start at 4 credits.

curl https://manifoldgen.com/api/service \
  -X POST \
  -H "Authorization: Bearer $MANIFOLDGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "service": "image",
    "prompt": "Editorial portrait, hard side light",
    "width": 1024,
    "height": 1024,
    "num_steps": 12
  }'

Generate Anima character art

One anime-native illustration per asynchronous request for a fixed $0.04. Check GET /api/anima/status before dispatch; the route fails closed until commercial model licensing and GPU capacity are both active.

curl https://manifoldgen.com/api/service \
  -X POST \
  -H "Authorization: Bearer $MANIFOLDGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "service": "anima",
    "prompt": "An adult celestial cartographer, midnight-blue hair, brass astrolabe",
    "negative_prompt": "text, watermark, low detail",
    "width": 768,
    "height": 1024,
    "num_steps": 28,
    "guidance": 4,
    "seed": 18467291
  }'

Canvas sides are 512–1536 pixels, divisible by 16, with at most 1,048,576 total pixels. Poll the returned video-job status URL; the completed result contains image_url.

Generate music and sound effects

Use the audio umbrella with a kind, or call the dedicated music and sfx services. Both persist as durable audio assets and become searchable by meaning.

Audio umbrella

curl https://manifoldgen.com/api/service \
  -X POST \
  -H "Authorization: Bearer $MANIFOLDGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "service": "audio",
    "kind": "music",
    "prompt": "Warm modular synths, restrained drums, hopeful sunrise",
    "duration": 30
  }'

Music · synchronous · 30–300 seconds

curl https://manifoldgen.com/api/service \
  -X POST \
  -H "Authorization: Bearer $MANIFOLDGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"service":"music","prompt":"Slow cinematic strings at dawn","lyrics":"[Verse]\nNeon rain over the harbour","duration":45,"service_tier":"standard"}'

200 OK

{
  "service": "audio",
  "audio_id": "9c41…",
  "audio_url": "https://…/track.wav",
  "kind": "music",
  "duration_seconds": 30,
  "indexed": true,
  "credits_used": 80,
  "cost_usd": 0.80
}

SFX · asynchronous · 4–45 seconds

curl https://manifoldgen.com/api/service \
  -X POST \
  -H "Authorization: Bearer $MANIFOLDGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"service":"sfx","prompt":"Heavy wooden door closing in a stone hall","duration":5}'

202 Accepted

{
  "service": "sfx",
  "result": {
    "job_id": "video_71c9…",
    "status": "queued",
    "status_url": "/api/audio-jobs/video_71c9…"
  },
  "estimated_credits": 51,
  "estimated_cost_usd": 0.51
}

Poll the returned status URL. A completed SFX job contains audio_id, audio_url, final cost, and credits used.

Search public audio

Search needs no key for public assets. Add your Bearer key to include your private audio in the results.

curl --get https://manifoldgen.com/api/audio/search \
  --data-urlencode "q=hopeful modular sunrise" \
  --data-urlencode "kind=music" \
  --data-urlencode "top_k=20"

Generate voices

Generate one to four durable voice takes with Seed Audio, ElevenLabs, Qwen, MiniMax, Seed Speech, Google, or Grok. Call GET /api/voice/models for live pricing and model-specific controls.

curl https://manifoldgen.com/api/voice/generate   -X POST   -H "Authorization: Bearer $MANIFOLDGEN_API_KEY"   -H "Content-Type: application/json"   -d '{
    "model": "seed-speech",
    "text": "The future sounds closer than you think.",
    "voice": "stokie_en",
    "voice_details": "Warm, confident, cinematic delivery",
    "mood": "happy",
    "batch_size": 1,
    "speed": 1,
    "pitch": 0,
    "volume": 1,
    "output_format": "mp3",
    "sample_rate": 24000
  }'

Clear, usage-based pricing

Choose a quality tier and duration up front. Every request returns the same preflight dollar and credit estimate shown below; completed video jobs settle from measured generation time and include the final charge.

Video generation

16:9 output · 20 steps · audio included

1 credit = $0.01
Preview
896 × 512
5s$0.4646 cr
10s$0.9191 cr
15s$1.37137 cr
30s$2.73273 cr
60s$5.45545 cr
Balancedrecommended
1184 × 672
5s$0.7171 cr
10s$1.42142 cr
15s$2.12212 cr
30s$4.24424 cr
60s$8.47847 cr
Native
1344 × 768
5s$1.01101 cr
10s$2.02202 cr
15s$3.03303 cr
30s$6.05605 cr
60s$12.101,210 cr

Prices shown use 20 steps. Eight steps cost about 40% of the table price; 30 steps cost about 150%. Other aspect ratios keep the selected quality tier with dimensions adjusted to the supported pixel grid.

Images and audio

Image generation
$0.04
4 credits per image
20+ steps: $0.10 · 10 credits
GPT Image 2
$0.24
24 credits per image
Opt-in only · always metered, including unlimited image plans
Music generation
from $0.35
$0.15/minute + base
Built with MiniMax-Music3 · successful generations only
Text to speech
$0.005
0.5 credits per 100 characters
Exact charge follows the submitted character count

Errors

400Invalid request or unsupported option
401Missing or invalid API key
402Not enough credits to release the result
404Job or resource not found
429 / 503Capacity unavailable; retry with backoff
JSON responses use a stable error message.