Kling v3 Motion Control API

Kling 3.0 model that transfers motion from a reference video onto a character from a reference image, with Standard 720p and Pro 1080p tiers.

Kling AIVideo GenerationProprietary Endpoint

About Kling v3 Motion Control

Kling 3.0 model that transfers motion from a reference video onto a character from a reference image, with Standard 720p and Pro 1080p tiers.

motion control

Kling v3 Motion Control specs

Model ID
kling-v3-motion-control
Provider
Kling AI
Category
Video Generation
Input
text, image, video
Output
video
Endpoints
POST /v1/videos/generations

Kling v3 Motion Control API pricing

Live pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.

Type
Spec
Rate
Standard (720p)
per second
$0.14
Pro (1080p)
per second
$0.18
Compare on the full pricing page

How to call the Kling v3 Motion Control API

Kling v3 Motion Control runs through POST /v1/videos/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Get an API key from the EmpirioLabs dashboard.

cURL: submit the job
curl https://api.empiriolabs.ai/v1/videos/generations \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-v3-motion-control",
    "prompt": "Describe what you want Kling v3 Motion Control to generate."
  }'
cURL: poll for the result
curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"
Python
import requests

response = requests.post(
    "https://api.empiriolabs.ai/v1/videos/generations",
    headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    json={
        "model": "kling-v3-motion-control",
        "prompt": "Describe what you want Kling v3 Motion Control to generate.",
    },
)
job = response.json()

# Generation runs as an async job. Poll until it completes.
import time
while True:
    status = requests.get(
        f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
        headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    ).json()
    if status.get("status") in ("completed", "failed"):
        print(status)
        break
    time.sleep(5)
Full Kling v3 Motion Control API reference

Kling v3 Motion Control API parameters

Request parameters supported by the Kling v3 Motion Control API on EmpirioLabs. Defaults apply when a field is omitted.

ParameterTypeDefaultRange / valuesDescription
promptstring--Motion / scene description.
reference_imagestring--Reference image URL — provides the character/subject.
reference_videostring--Reference video URL — provides the motion to copy.
character_orientationenumimageimage, videoimage: character starts in the pose from the reference image (max 10s). video: character matches pose in the reference video (max 30s).
modeenumstdstd, prostd: standard quality. pro: higher quality, slower.
durationnumber51 to 30Seconds. Capped at 10 when character_orientation=image, 30 when character_orientation=video.
keep_original_soundbooleantrue-Keep the audio track from the reference video.

Good to know

Motion-control video: a reference IMAGE (the character/subject) and a reference VIDEO (the motion source) are BOTH required. The character from the image performs the movements from the video.

Reference image

  • JPEG, PNG, or WEBP
  • Max 10 MB
  • Min 340px on the short edge
  • Aspect ratio 0.4 to 2.5

Reference video

  • MP4, MOV, or WEBM
  • Max 100 MB
  • 340-3850px
  • 24-60 FPS
  • 3-10s (image orientation: max 10s; video orientation: max 30s)

Uploaded media preprocessing

  • Reference videos are normalized to provider-compatible MP4 when needed.
  • Reference-video duration follows the selected character orientation limit.

Kling v3 Motion Control API: common questions

How much does the Kling v3 Motion Control API cost?

On EmpirioLabs, Kling v3 Motion Control is billed pay as you go: Standard (720p) $0.14 per second; Pro (1080p) $0.18 per second. The live rate card on this page always matches what the API charges.

Which endpoint does Kling v3 Motion Control use?

Kling v3 Motion Control is served through POST /v1/videos/generations on api.empiriolabs.ai with standard bearer-token authentication.

Can I try Kling v3 Motion Control in the browser before integrating?

Yes. The EmpirioLabs playground runs Kling v3 Motion Control in the browser with the same parameters the API exposes, so you can test prompts before writing code.

How do I get a Kling v3 Motion Control API key?

Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.

Ready to use better endpoints?

Explore our models, or contact us about business inquiries, custom deployments, or anything else.