What is Kling 3.0 Motion Control API?
Kling 3.0 Motion Control transfers motion from a reference video onto a character image at Kling 3.0 fidelity, with selectable std/pro generation modes.
Technical Specifications
- Supported inputs: Video
- Output: Video
Performance Benchmarks
[embed]
Kling 3.0 Motion Control API Pricing
- Pricing on request
Where to Use Kling 3.0 Motion Control
Short-form video generation
Create clips for social, ads, and product demos from text or image prompts.
Previsualization and storyboards
Rapidly prototype motion concepts before committing to production.
Dance and performance content: the model is documented for transferring choreography from a reference video to a character image, including dance clips and other performance motions.
Character animation: it is described as suited for animating illustrated, photographed, or virtual characters with realistic motion from reference footage.
Brand and promotional videos: the model is documented for creating brand mascot animations, product demonstrations, presenters, and other branded motion content.
Storyboard and film previsualization: it is described as useful for storyboard visualization, action-sequence previsualization, and testing character performance before production.
import requests, time headers = {"Authorization": "Bearer " + AIMLAPI_KEY} job = requests.post( "https://api.aimlapi.com/v2/video/generations", headers=headers, json={ "model": "klingai/video-v3-motion-control", "prompt": "A serene timelapse of clouds over a mountain range" }, ).json() gid = job["id"] while True: res = requests.get(f"https://api.aimlapi.com/v2/video/generations?generation_id={gid}", headers=headers).json() if res.get("status") in ("completed", "error"): break time.sleep(5) print(res["video"]["url"])
const headers = { Authorization: `Bearer ${process.env.AIMLAPI_KEY}`, "Content-Type": "application/json", }; const job = await (await fetch("https://api.aimlapi.com/v2/video/generations", { method: "POST", headers, body: JSON.stringify({ "model": "klingai/video-v3-motion-control", "prompt": "A serene timelapse of clouds over a mountain range" }), })).json(); let res; do { await new Promise((r) => setTimeout(r, 5000)); res = await (await fetch(`https://api.aimlapi.com/v2/video/generations?generation_id=${job.id}`, { headers })).json(); } while (!["completed", "error"].includes(res.status)); console.log(res.video.url);
# submit the generation — the response contains the job "id" curl -X POST https://api.aimlapi.com/v2/video/generations \ -H "Authorization: Bearer $AIMLAPI_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"klingai/video-v3-motion-control","prompt":"A serene timelapse of clouds over a mountain range"}' # then poll until status is "completed" — video.url holds the result curl "https://api.aimlapi.com/v2/video/generations?generation_id={id}" -H "Authorization: Bearer $AIMLAPI_KEY"
OpenAI-compatible — swap the base URL and it works with your existing SDK.
| Type | Price |
|---|---|
| Output | |
| Model | Input | Output | Context | Best for |
|---|---|---|---|---|
Kling 3.0 Motion Control This page | Video generation |
Kling 3.0 Motion Control takes video as input and returns video.
Kling 3.0 Motion Control is priced at $0.1638 / sec (variable).
Kling 3.0 Motion Control is billed per generation — a fixed charge per output rather than by prompt length.
Kling 3.0 Motion Control was built by Kling AI.
Use klingai/video-v3-motion-control as the model id on AI/ML API.
Yes. Kling 3.0 Motion Control is served through AI/ML API, so the same key and endpoint format used for other models applies.
It offers selectable std and pro generation modes.