Motion Controls API: AI Image-to-Video

Animate images to video with Motion Controls via the Muapi REST API. Pay per generation — no subscription needed.

Motion Controls API Reference

Endpoint

POST https://api.muapi.ai/api/v1/generate_wan_ai_effects

Submit a job with your MuApi API key in the x-api-key header, then poll https://api.muapi.ai/api/v1/predictions/{request_id}/result until status is completed.

Parameters

NameTypeRequiredDescription
promptstringYesThe prompt to insert into the predefined prompt template for the selected effect.
image_urlstringYesURL of the input image.
namestringNoThe type of effect to apply to the video.Options: 360 Orbit, Arc Shot, Car Chase, Car Mount Cam, Crash Zoom In, Crash Zoom Out, Crane Down, Crane Overhead, Crane Punch-In, Crane Up, Dirty Lens, Dolly In, Dolly Left, Dolly Out, Dolly Right, Dolly Zoom In, Dolly Zoom Out, Dutch Angle, Fast Dolly Zoom In, Fast Dolly Zoom Out, Fisheye Lens, Focus Shift, FPV Drone Cam, Handheld Cam, Head Tracking, Hero Run, Human Timelapse, Landscape Timelapse, Lazy Susan, Lens Crac, Lens Flare, Matrix Shot, Motion Blur, Object POV, Overhead, Rap Video Cam, Robotic Cam, Snorricam, Tilt Down, Tilt Up, Whip Pan, Wiggle, Zoom In, Zoom In Through Object, Zoom Into Mouth, Zoom Out, Zoom Out Through ObjectDefault: "360 Orbit"
aspect_ratiostringNoAspect ratio of the output video.Options: 16:9, 9:16, 1:1Default: "16:9"
resolutionstringNoThe resolution of the generated video.Options: 480p, 720pDefault: "480p"
qualitystringNoThe quality of the generated video.Options: medium, highDefault: "medium"
durationintNoThe duration of the generated video in secondsOptions: 5, 10Default: 5

cURL example

REQUEST_ID=$(curl -s -X POST https://api.muapi.ai/api/v1/generate_wan_ai_effects \
  -H "x-api-key: $MUAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"<prompt>","image_url":"https://example.com/your-image_url"}' | jq -r .request_id)

curl -s https://api.muapi.ai/api/v1/predictions/$REQUEST_ID/result -H "x-api-key: $MUAPI_API_KEY"

Python example

import os, time, requests

API = "https://api.muapi.ai/api/v1"
headers = {"x-api-key": os.environ["MUAPI_API_KEY"]}

r = requests.post(f"{API}/generate_wan_ai_effects", headers=headers, json={"prompt":"<prompt>","image_url":"https://example.com/your-image_url"})
request_id = r.json()["request_id"]

while True:
    res = requests.get(f"{API}/predictions/{request_id}/result", headers=headers).json()
    if res["status"] == "completed":
        print(res["outputs"]); break
    if res["status"] == "failed":
        raise RuntimeError(res.get("error"))
    time.sleep(3)

Full docs and agent/MCP integration: llms.txt. Get an API key at muapi.ai/access-keys.