Kling v3 Motion Control Video API
Generate motion-controlled videos with kling-v3-motion-control on APIMaster.ai. Reference image + reference video, billed per reference-video second, not shorter output duration.
Kling v3 Motion Control
Call kling-v3-motion-control on APIMaster for Kling motion control: provide a reference image and reference video; the output follows the motion in the reference clip. An optional prompt refines camera and style.
Base URL:
https://apimaster.ai/v1ishttps://apimaster.ai/v1. Usehttps://apimaster.ai/v1/videos/...— do not add another/v1prefix.
Pricing (per reference video second)
Important: For Kling Motion Control, billing is based on the billable duration of the uploaded motion/reference video processed by the model. It is not recalculated based on a shorter final output video.
If the generated video is shorter because only part of the motion can be extracted successfully, the consumed credits are not refunded or recalculated according to the shorter output duration.
The following rates illustrate provider pricing with a 0.80 price multiplier (20% discount). They are examples, not a guaranteed rate for every account. Check the live model card for current routes and prices; account/group pricing may affect the final charge.
| Mode | Provider reference rate | Example APIMaster discounted rate |
|---|---|---|
std (720P) |
$0.1286 / reference video second | $0.10288 / reference video second |
pro |
$0.1714 / reference video second | $0.13712 / reference video second |
Estimated Cost
Reference video billing duration × price per reference video second
Example: a 29-second reference video, STD at $0.10288 per reference video second:
29 × $0.10288 = $2.98352 — including when the generated output is approximately 3 seconds.
The provider reference amount would be 29 × $0.1286 = $3.7294. Applying the example 0.80 discount gives $3.7294 × 0.80 = $2.98352. This example assumes no additional account/group multiplier.
Billing Rules
Kling Motion Control uses per-second billing. On APIMaster, billable seconds represent the uploaded motion/reference video processed by the model. The server detects the duration of video_url; upstream billing data is used to reconcile settlement.
The generated video usually has a similar duration to the reference. Complex or fast motion, or insufficient valid continuous motion, can cause a shorter result. Consumed credits are not refunded or recalculated merely because the final output is shorter.
Billable cost = reference video billing duration × effective price per reference video second.
duration is an estimated billing duration, not a requested output length or a way to limit the final bill. You can omit it. It is used only for estimation/pre-deduction; final settlement follows the actual reference-video duration detected by the server and upstream billing data. Submission estimates round reference duration to whole seconds. If detection is unavailable, the server can use the supplied estimate or the orientation limit (10 or 30 seconds) for pre-deduction.
The Motion Control playground automatically reads reference-video metadata when the browser supports it and shows the detected duration and estimated cost. Browser detection is an estimate; server settlement remains authoritative. If detection fails, you can optionally enter an estimate or leave it blank. Uploading a shorter reference clip changes the input being processed; receiving a shorter output does not change that input.
Official Billing Reference
APIMaster does not redefine the underlying model's billing structure. Pricing generally follows official/provider billing logic, with discounts applied to the effective unit price.
Kling's guide specifies per-second pricing. Its motion-reference guidance also explains that motion extraction can produce a shorter result and that consumed Credits are non-refundable in that case. These statements are distinct from APIMaster's implementation: APIMaster and its upstream settle against the processed reference-video duration. Do not interpret the official documentation as a universal statement that every field named duration is a reference-video billing field.
Submit
POST https://apimaster.ai/v1/videos/generations
| Field | Type | Required | Description |
|---|---|---|---|
model |
string | yes | kling-v3-motion-control |
image_url |
string | yes | Public reference image URL |
video_url |
string | yes | Public motion/reference video URL (mp4/mov, ≤100MB). The server detects its actual duration and uses it as the reference-video billable duration for Motion Control settlement; it is not the output-video duration. |
character_orientation |
string | yes | image (3–10s ref video) or video (3–30s) |
mode |
string | yes | std or pro |
prompt |
string | no | Optional motion / camera / style hint |
keep_original_sound |
string | no | yes (default) or no |
watermark_info |
object | no | e.g. {"enabled": false} |
duration |
integer | no | Estimated billing duration in seconds; optional and only for estimation/pre-deduction. Final settlement uses the server-detected reference-video duration and upstream billing data. Does not set output length or cap the charge. |
The example uses a 29-second reference and video orientation (3–30 seconds). duration is intentionally omitted so the server detects the reference duration.
curl -s "https://apimaster.ai/v1/videos/generations" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v3-motion-control",
"prompt": "Match face identity, follow the reference dance, cinematic lighting",
"image_url": "https://example.com/ref-image.png",
"video_url": "https://example.com/ref-video-29s.mp4",
"character_orientation": "video",
"mode": "std",
"keep_original_sound": "yes"
}'
Response
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_xxxxxxxx"
}
]
}
Reference video length
character_orientation |
Allowed ref video |
|---|---|
image |
3s – 10s |
video |
3s – 30s |
Poll
GET https://apimaster.ai/v1/videos/{task_id}
Download via returned url or GET https://apimaster.ai/v1/videos/{task_id}/content.
FAQ
Why was I charged for 29 seconds if the generated video was only 3 seconds?
Motion Control processes the uploaded motion/reference video and uses per-second billing. The output can be shorter when only part of the motion can be extracted successfully. Already-consumed credits are not recalculated from the shorter output duration.
For a billable reference duration of 29 seconds and an effective rate of $0.10288 per reference video second: 29 × $0.10288 = $2.98352. A 3-second output does not turn this into a 3-second charge.
Does duration: 3 make a 29-second reference cost only 3 seconds?
No. duration is an optional estimate for pre-deduction, not an output-length control or a billing cap. The server detects the reference video's duration and reconciles with upstream billing data.
Is $0.10288 the price for every account?
No. It is the STD example rate after applying a 0.80 discount to the provider reference rate of $0.1286. Your effective rate depends on the active channel and account/group pricing. See the live model card and your final billing log.
