Editorial cover: MODELLIX wordmark, Kling Motion Control API title with integration and pricing subtitle, motion-trajectory information geometry, amber key and cyan rim light on dark copper

The short answer: what Kling motion control is, and where to call it

Kling motion control is a motion-transfer API: you give it a character image plus a reference video, and it generates a new clip where the character performs the reference video’s movement while keeping its own face and identity. It is one of Kuaishou’s official Kling AI API endpoints, billed per second of output, and it is also reachable through aggregators that expose Kling’s video models behind a single key.

The integration pattern is the same on both routes — upload or reference your inputs, submit an async task, poll for the result, download the video. What actually differs is the billing model: Kling’s official platform sells prepaid unit packages, while aggregators meter per second with no package to maintain.

Disclosure: this guide is published by Modellix, an API aggregator that offers Kling’s video models among 210+ image and video models. We have a commercial interest in the aggregator route, and we say so up front. The official Kling figures below were read from Kling’s developer pricing page on August 20, 2026; the Modellix figures were read from our own model pages the same day. Where a number could not be verified today, we say so instead of guessing.

What the Kling motion control API does (and the three controls people confuse)

Motion control is a performance-driven video model: it captures the movement and facial expressions from a reference video and transfers them onto a character from a static image. Inputs are:

  • a reference image — the character whose look appears in the output (jpg/png, typically up to 10 MB);
  • a reference video — the motion the character should follow (mp4/mov, roughly 3–30 seconds depending on orientation mode);
  • an optional text prompt — style, background, and context guidance.

The two parameters that shape every request are character_orientation and mode. With character_orientation: image, the character keeps the orientation of the still image and output is capped at 10 seconds; with video, the character follows the reference performer’s facing direction and you get up to 30 seconds. mode picks the output tier: std (720p, cheaper) or pro (1080p). Typical use cases are dance and gesture transfer, character/mascot animation for marketing, and social short-form content.

Kling motion control API inputs: reference video, character image and prompt feed a motion transfer pipeline that outputs a new video

Motion control combines a reference video (the motion), a character image (the look), and an optional prompt into one generated clip.

The naming trap. “Motion control” is overloaded, and it pays to keep three separate Kling controls apart:

Control What it does Where it appears
Motion Control Transfers motion/expressions from a reference video onto a character image Dedicated motion-control endpoint
Camera Control A camera_movement style parameter that moves the virtual camera (pan, zoom, tilt) in text-to-video generation Text-to-video model parameters
Motion Brush Region-level motion control within a generated scene Text-to-video model parameters

Search for kling camera control api and you will mostly find the second one; search for kling motion brush api and you get the third. The API this article covers is the first — the one the official docs list as a standalone video API. Our AI motion control API guide compares this capability across Kling, PixVerse, and other providers if you want the cross-vendor picture.

Which Kling versions support motion control (August 2026)

Kling’s current billing table lists two versions with a dedicated Motion Control row: Kling 2.6 and Kling 3.0. Kling 3.0 is the flagship — aggregator documentation describes it as an upgrade over 2.6 with better facial-identity consistency, smoother motion transfer, and face-occlusion recovery when part of the face is briefly hidden. Older versions (1.x, 2.0 Master, 2.1, 2.1 Master) have no motion-control row, and Kling has announced that legacy video models retire on September 15, 2026 — 1.0, 1.5, 1.6, 2.0 Master, 2.1, and 2.1 Master are all on the list, alongside the Virtual Try-On API. If you are building on motion control today, target 2.6 or 3.0, and treat any 2.1-era content you find as stale.

Kling version Motion control? 720p rate 1080p rate Notes
Kling 3.0 Yes 0.9 units ($0.126)/s 1.2 units ($0.168)/s Current flagship; no 4K tier for motion control
Kling 2.6 Yes 0.5 units ($0.07)/s 0.8 units ($0.112)/s Cheaper; lower consistency than 3.0
Kling 2.5 Turbo No dedicated row General video only
2.1 / 2.1 Master / 1.x No Retiring September 15, 2026

Source: Kling’s official developer pricing table, read directly on August 20, 2026. 1 unit = $0.14 list price.

Our Kling 3.0 cost breakdown walks through the full version-and-package picture if you want the history.

Getting a key: official units vs an aggregator key

Official route. Kling’s developer platform issues keys from its console, and usable video access is tied to purchasing resource packages: video generation bills in units, and you buy packages up front. The key is free, but it only works while you hold an active package — the developer pricing page is the authority on package sizes, validity windows, expiry terms, and trial packages.

Aggregator route. Create an API key in the console, top up a balance, and pay per second of output. There is no package to buy and no expiry clock on prepaid funds, and the same key works against every model on the platform — Kling today, Veo or Wan tomorrow, no second account. Rate and concurrency limits scale with your top-up tier rather than being tied to a specific model. Our unified AI API guide covers the single-key workflow across providers in more depth.

One honest note: the official list unit price is the pre-discount baseline, not a floor — an aggregator sets its own displayed rate, and the same-day pricing section below shows Modellix undercutting official list on matched tiers. Direct access only wins on price when your volume is high and predictable enough for package terms to beat the aggregator’s rate; if you touch models from several vendors, the single-key structure is usually worth more than the price difference either way.

Calling the Kling motion control API: working code

We have no dedicated Kling motion-control model page — the closest routes are the Kling V2V endpoints, which accept a reference video plus optional reference images: kling/kling-video-o1 (3–10 s, 720p/1080p) and kling/kling-v3-omni-video (3–15 s, up to 4K). The example below uses kling/kling-video-o1 with a motion clip and a character image. The official motion-control endpoint is documented on Kling’s API docs with the same input concept (prompt + image + video + orientation + mode).

Step 1 — put your inputs on a URL. Reference videos and images must be public URLs. The easiest path is the File API, which accepts up to 16 MB per file for free and keeps files for about 7 days:

1
2
3
4
5
curl --request POST \
--url https://api.modellix.ai/api/v1/media/files \
--header "Authorization: Bearer YOUR_API_KEY" \
--form "file=@character.png" \
--form "file=@dance-motion.mp4"

The response returns URLs for each uploaded file; use those in the generation call.

Step 2 — submit the generation task. The submit endpoint is POST https://api.modellix.ai/api/v1/kling/kling-video-o1 — the exact path documented on the Kling Video O1 API reference — with Authorization: Bearer ***. Media endpoints follow https://api.modellix.ai/api/v1/<provider>/<model>; the generic REST API docs also show the same submit call with an /async suffix (/api/v1/<provider>/<model>/async), so use whichever form your model’s API reference page shows.

1
2
3
4
5
6
7
8
9
10
11
12
curl --request POST \
--url https://api.modellix.ai/api/v1/kling/kling-video-o1 \
--header "Authorization: Bearer YOUR_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"prompt": "The character performs the reference dance with confident, energetic moves, studio lighting",
"videos": ["https://api.modellix.ai/media/dance-motion.mp4"],
"images": ["https://api.modellix.ai/media/character.png"],
"resolution": "1080p",
"duration": 5,
"audio": "off"
}'

The equivalent in Python, same request body:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import requests

url = "https://api.modellix.ai/api/v1/kling/kling-video-o1"
payload = {
"prompt": "The character performs the reference dance with confident, energetic moves, studio lighting",
"videos": ["https://api.modellix.ai/media/dance-motion.mp4"],
"images": ["https://api.modellix.ai/media/character.png"],
"resolution": "1080p",
"duration": 5,
"audio": "off",
}
headers = {"Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)

Step 3 — poll for the result. Video generation is async: the create call returns a task_id, and you poll the task endpoint until status is success, then download the output:

1
2
3
4
5
6
7
8
9
10
11
12
13
{
"code": 0,
"message": "success",
"data": {
"status": "pending",
"task_id": "task-kling-o1-123",
"model_id": "model-123",
"get_result": {
"method": "GET",
"url": "https://api.modellix.ai/api/v1/tasks/task-kling-o1-123"
}
}
}
Three-step Kling motion control API flow: upload reference video and character image, submit the generation task, then poll the task id and download the finished clip

Every motion-control call follows the same async pattern: submit a task, poll the task id, download the result. Adding an X-Webhook-URL header replaces the polling step.

Request parameters for kling/kling-video-o1 (documented on the Kling Video O1 model page):

Parameter Values Notes
prompt string Required. Describes the output; keep it aligned with the transferred motion
videos string[] (max 1) Required. Reference video URL — the motion source
images string[] (max 4) Optional. Character/reference frames
resolution 720p, 1080p Optional
duration 3–10 seconds Optional; not further restricted when a reference video is provided
audio original, off Optional; off avoids carrying the source clip’s sound

For longer or 4K output, kling/kling-v3-omni-video accepts the same video-plus-images pattern with duration up to 15 seconds and a 4K tier. The full API contract — base URL, error codes, and webhook format — is in the API documentation.

Kling Motion Control API Reference

See the base URL, request parameters, and webhook format for Kling motion control.

View Docs

Kling motion control API pricing, August 20, 2026

Both routes bill per second of generated video, so here are both sides with today’s numbers.

Official Kling (unit list prices, read from the developer pricing table today). 1 unit = $0.14:

Model 720p 1080p
Kling 3.0 Motion Control $0.126/s (0.9 units) $0.168/s (1.2 units)
Kling 2.6 Motion Control $0.07/s (0.5 units) $0.112/s (0.8 units)

These list rates are only reachable after purchasing a unit package; see the pricing page for package sizes and validity.

Modellix (pay-as-you-go, read from model pages today). The V2V routes that carry motion-transfer workflows:

Aggregator route 720p 1080p 4K
kling/kling-video-o1 $0.0869/s $0.1159/s
kling/kling-v3-omni-video $0.0869/s $0.1159/s $0.1932/s

For reference, our general Kling video routes display kling/kling-v3-t2v at $0.0580–$0.2898/sec depending on tier.

Two Kling motion control billing routes: official prepaid unit packages with an expiry clock versus an aggregator pay-as-you-go per-second meter

The billing difference in one picture: official access runs on prepaid unit packages that expire, while the aggregator route meters per second with no package to maintain.

Worked example — one 5-second 1080p clip. Official Kling 3.0 Motion Control at 1080p consumes 1.2 units/s, so 5 seconds = 6 units = $0.84 at list. On the aggregator route the same duration at 1080p on kling/kling-video-o1 bills $0.1159/s ≈ $0.58 — before any package-expiry math. That gap is the price difference on matched tiers, and it is exactly why the prepaid commitment exists: at high, predictable volume the official package can beat us on price per second; at irregular volume, paid-but-expired units are pure waste.

One honest boundary: these are per-second rates, and a real task cost depends on duration, resolution, orientation mode, and which version you compare. Also note that consumer Kling AI app subscriptions (the $6.99–$127.99/month credit plans covered in Kling’s own credit guide) are a different economy from the API’s units — the PAA question “is Kling motion control free” answers to the consumer side, not the API side. There is no free API tier on either route today; our docs describe a 10% discount on first top-ups rather than a free allowance. Our Kling 3.0 API guide has the same two-route comparison for the general Kling 3.0 endpoints if you need the full pricing picture.

Errors, retries, and webhooks

Operational details are where docs pages usually go quiet, so here is the concrete contract for this route, from the API documentation:

  • Errors are uniform JSON. Every error returns { "code": <http status>, "message": "<Category>: <detail>" }. Retryable: 429 (rate or concurrency limit — back off exponentially), 500, 503 (retry up to three times). Non-retryable: 400 (fix parameters), 401 (bad or expired key), 402 (insufficient balance), 404 (wrong task or model id).
  • Rate limits scale with top-up tier: a $10 top-up allows 10 concurrent tasks at 100 RPM; $100 raises it to 20 concurrent / 200 RPM; $500 to 50 / 500; higher tiers by arrangement.
  • Webhooks replace polling. Send an X-Webhook-URL header on the create call; we POST task-succeeded/failed/canceled events to it, with retry headers, and your endpoint must return 2xx to acknowledge.
  • Results are kept for about 7 days, so download outputs (or forward them) before they expire.

When to go direct with Kling — and when an aggregator wins

Go direct if:

  • Kling motion control is your only model family. The official list unit price is the pre-discount baseline; direct access only gets cheaper on a like-for-like tier at high, predictable volume, where package terms can beat an aggregator’s displayed rate.
  • Your volume is high and predictable. Prepaid units are a volume commitment that only pays off if you actually use them.
  • You need the dedicated motion-control endpoint as shipped. The official API exposes character_orientation and mode directly; aggregator approximations run through V2V routes with slightly different parameter surfaces (no 30-second cap on the same input, but no 1:1 parameter mapping either).

Choose the aggregator route if:

  • You call models from several vendors. One key, one billing relationship, one auth scheme across Kling, Veo, Seedance, and others — a structural advantage direct access cannot match.
  • Your volume is irregular or exploratory. Pay-as-you-go means you never watch prepaid units expire unused.
  • You want per-call cost logging and one error contract across every model you use.

Modellix’s honest limitations. We are an aggregator, not the model maker: a margin sits between upstream cost and the displayed rate, so direct list pricing can beat us on matched tiers at high volume. We have no Kling motion-control page today — the workflow runs through the Kling V2V endpoints above, which is not the same parameter surface as the official dedicated endpoint. We expose 19 Kling routes, deep but not the widest catalog in the market. And there is no consumer UI; this is an API platform for developers. Our Kling vs Runway comparison is a separate read if you are weighing Kling against other motion-capable video models.

Run Kling Motion Control

Log in to generate motion-controlled video with Kling 3.0 and 210+ other models on one key.

Login

FAQ

Is Kling AI motion control free?

No — not as an API. Official API access requires purchasing unit packages, and aggregator access is pay-per-second. The “free” claims floating around refer to consumer app credits (for example, Kling AI’s free Basic plan carries no monthly credits and no commercial-use rights), which is a different product from the API.

Does Kling AI have an API?

Yes. Kuaishou’s Kling platform has an official developer API covering video, image, avatar, and motion-control models, and aggregators expose the same models through their own REST APIs.

Does Kling 3.0 have motion control?

Yes. Kling 3.0 Motion Control is the current flagship of the motion-transfer line, billed at 0.9 units/s (720p) and 1.2 units/s (1080p) on the official table, and it is the version with the best facial-identity consistency.

How do I use Kling 3.0 motion control?

Provide a character image and a reference video (plus an optional prompt), choose character_orientation (image: max 10 s; video: max 30 s) and mode (std 720p / pro 1080p), and submit the task. The code section above shows a working request against a Kling V2V route.

How much does the Kling motion control API cost?

As of August 20, 2026: officially, Kling 3.0 Motion Control is $0.126/s at 720p and $0.168/s at 1080p (1 unit = $0.14, packages required); Kling 2.6 Motion Control is $0.07/s and $0.112/s. Modellix displays kling/kling-video-o1 at $0.0869/s (720p) and $0.1159/s (1080p) with no package. Prices move; check the live pages before budgeting.

Get a key. With one in hand, the request above runs as-is: create a key in the Modellix console and paste it into the Authorization header — no package to buy, no expiry clock to watch.


Pricing sources accessed August 20, 2026: Kling’s developer pricing table (kling.ai/document-api/productBilling/prePaidResourcePackage, read directly), the Kling provider hub, the Kling Video O1 and V3 Omni Video model pages, and the Modellix API docs. Kling and Modellix can change pricing, packages, and terms without notice. Modellix is an aggregator and has a commercial interest in the comparison above.

Cover image: illustrative artwork; it is not a Kling product screenshot or source evidence.