HappyHorse 1.0 is now liveTry it now

Kling 3.0 Motion Control API

Use EvoLink's unified API to transfer motion from a reference video to a character image. Pricing starts at $0.1134 per second for 720p output, supports 1080p, and reaches up to 30-second clips depending on orientation mode.

Price: $0.015(~ 1 credits) per request

Highest stability with guaranteed 99.9% uptime. Recommended for production environments.

Use the same API endpoint for all versions. Only the model parameter differs.

Choose whether to create element from images or video

Upload a video showing the subject clearly — must contain a visible human face (max 8s, 720-2160px)

Click to upload or drag and drop

Supported formats: MP4, MOV, WEBM
Maximum file size: 100MB; Maximum files: 1

Name of the subject element (max 20 characters)

Description of the subject element (max 100 characters)

No video URL found in response

Check console for details

History

Max 20 items

0 running · 0 completed

Your generation history will appear here

Billing Rules

  • Fixed price: 1 Credit per element creation
  • Full refund on failure
  • Estimated processing time: ~10 minutes

Pricing

Kling Custom Element
Element Creation
Type:Element Creation
Price:
$0.015/ request
(1 Credits)

If it's down, we automatically use the next cheapest available—ensuring 99.9% uptime at the best possible price.

Motion transfer API

Transfer reference-video motion to a character image through EvoLink's unified API, with orientation control, optional original audio, and async delivery for production workflows.

  • Starts at $0.1134/s
  • 720p / 1080p
  • Inputs: image + video
  • Up to 10s / 30s
Hero showcase of Kling 3.0 motion control capabilities

Reference video motion, image character guidance, and async delivery in one production-ready route.

Explore related Kling APIs

Kling 3.0 API

Use the main Kling 3.0 route for text-to-video and image-to-video generation through EvoLink's unified API.

Kling O3 API

Use Kling O3 when you need reference-to-video, video editing, or one route that covers four video workflows.

Kling 3.0 Motion Control API use cases and controls

Kling Character Animation API

Animate a still character image from a reference performance video without manual rigging or frame-by-frame editing. This workflow is useful for creator tools, virtual avatars, short-form content, and character-driven video production where natural human motion matters.

Avatar animation from reference video

Kling Dance and Gesture Transfer API

Transfer dance moves, gestures, and body performance from one clip to a different character for social media production, marketing assets, and creator workflows. Teams can turn a single motion source into multiple character-led outputs for faster iteration across campaigns.

Dance and gesture transfer showcase

Kling Motion Control API with Orientation Control

Control whether the generated character follows the direction of the source image or the reference video, then choose 720p or 1080p output based on budget and production needs. This gives developers a more structured motion-control pipeline than generic image-to-video generation.

Motion control workflow with orientation settings

Why teams use Kling 3.0 Motion Control through EvoLink

Kling 3.0 Motion Control gives teams a more controllable way to turn real performance footage into character animation, with predictable per-second pricing and a production-ready API workflow.

More controllable than generic video generation

Instead of asking a model to invent motion from scratch, Motion Control uses a reference performance video as the motion source. That makes output behavior easier to steer for character-driven workflows.

Faster production without manual rigging

Teams can turn a still image plus a motion clip into usable animated output without building a traditional animation pipeline. This reduces setup friction for prototypes, campaign assets, and creator tools.

Predictable API pricing for repeated workflows

Per-second billing, 720p and 1080p modes, and explicit duration limits make it easier to estimate cost before production. That matters for batch jobs, user-generated workflows, and automated content pipelines.

How to integrate Kling 3.0 Motion Control API

From reference inputs to delivered animation in three practical steps.

1

Prepare a clean character image and motion source video

Upload a reference image for the target character and a reference video containing the performance you want to transfer. Clear body visibility and stable source motion improve output consistency.

2

Submit an async generation request with motion settings

Send the image, video, quality mode, and orientation parameters to the API. The task runs asynchronously, which makes it easier to integrate into production pipelines, queue systems, and automated workflows.

3

Poll task status, review output, and iterate

Check task status until the result is ready, then review the generated clip and refine inputs when needed. This iteration loop works well for creator products, internal tools, and repeatable video workflows.

Kling 3.0 Motion Control API capabilities

Reference-driven character animation with production-ready controls

Motion

Reference video motion transfer

Use a source performance video to drive movement in a target character image, making motion output more repeatable and easier to control than prompt-only generation.

Orientation

Character orientation control

Choose whether the output character follows the facing direction of the reference image or the source video, depending on the type of motion transfer you need.

Consistency

Custom Element support for character consistency

Combine Motion Control with Kling Custom Element workflows when you need more stable character identity across repeated generations and production variations.

Audio

Original sound preservation

Keep the original sound from the reference video when the workflow calls for motion plus source-audio continuity in the final output.

Pricing

Per-second pricing with explicit output limits

Estimate cost more easily with per-second billing, visible duration constraints, and clear quality tiers. This helps teams plan usage for creator tools and automated pipelines.

Quality

720p and 1080p delivery modes

Choose a lower-cost or higher-quality output path based on production goals, turnaround needs, and budget sensitivity.

Kling 3.0 Motion Control API FAQ

Everything you need to know about the product and billing.

The Motion Control API transfers human motion from a reference video onto a character in a reference image. It uses Kling's 3.0 model to synthesize natural-looking animation. Both the reference image and reference video are required inputs.
You need a reference image (the character to animate) and a reference video (the motion source). The character should have clear upper body or full body visible. The video should contain clear human motion without cuts or camera movement.
Maximum duration depends on character_orientation: up to 10 seconds when set to 'image' (character faces like the image), or up to 30 seconds when set to 'video' (character faces like the video). Minimum is 3 seconds. Actual duration depends on extractable motion from the reference video.
Motion Control uses per-second billing at 8.1648 credits/second base rate (720p). 1080p quality is 1.334x the base rate. Billed by actual generated duration, rounded up to the nearest second. Check your EvoLink dashboard for your group's specific pricing.
This parameter controls the facing direction of the generated character. Set to 'image' for the character to face the same direction as in the reference image (max 10s video). Set to 'video' for the character to face the same direction as in the reference video (max 30s video).
Yes, you can reference subject elements created via Kling Custom Element using element_list. When using elements, character orientation is currently limited to video orientation only. Maximum 1 element is supported.
Limits, pricing, and available modes are determined by your provider and region. Use your EvoLink dashboard and API responses as the source of truth. Check the API documentation for the most current constraints and parameters.
POST
/v1/videos/generations

Create Element

Kling Custom Element (kling-custom-element) creates reusable subjects (elements) from reference videos. Created elements can be referenced in Kling V3 Motion Control, Kling O3 series, and Kling V3 Image-to-Video video generation via element_list for consistent character appearance.

Asynchronous processing mode, use the returned task ID to query status.

Upon completion, result_data will contain the element_id for use in video generation.

Important Notes

  • This model creates reusable elements (subjects), not videos. No prompt/duration/quality/aspect_ratio parameters needed.
  • The reference image or video must contain a clearly visible human face.
  • Fixed pricing: 1 Credit per element creation. Full refund on failure.
  • Estimated processing time: approximately 10 minutes.
  • After successful creation, use the returned element_id in Kling V3 Motion Control, Kling O3 series, and Kling V3 Image-to-Video video generation via element_list.

Request Parameters

modelstringRequiredDefault: kling-custom-element

Model name for custom element creation.

Examplekling-custom-element
model_params.element_namestringRequired

Name for the element (subject) being created.

Notes
  • Max 20 characters
ExampleMyCharacter
model_params.element_descriptionstringRequired

Description of the element, used to help the model understand the subject characteristics.

Notes
  • Max 100 characters
ExampleA young male character with short hair, wearing a white T-shirt
model_params.reference_typestringRequired

Type of reference material used to create the element.

ValueDescription
video_referUse reference video to create element
Examplevideo_refer
model_params.element_video_listobjectOptional

Reference video for element creation. Required when reference_type is video_refer.

Notes
  • Conditionally required: must be provided when reference_type = video_refer
  • video_url (string): URL of the reference video
  • The reference video must contain a clearly visible human face
Example{"video_url": "https://example.com/reference.mp4"}
model_params.element_voice_idstringOptional

Voice ID to assign to the element. The voice will be used when the element speaks in generated videos.

Notes
  • Optional parameter — only supported when reference_type = video_refer
  • Not available for image_refer (image-based element creation does not support voice assignment)
  • See the Voice ID Reference section below for all available voice IDs
Example829824295735410756
callback_urlstringOptional

HTTPS callback address after task completion.

Notes
  • Triggered on completion, failure, or cancellation
  • HTTPS only, no internal IPs
  • Max length: 2048 chars
  • Timeout: 10s, Max 3 retries
Examplehttps://your-domain.com/webhooks/element-task-completed

Request Example (Video Reference)

{
  "model": "kling-custom-element",
  "model_params": {
    "element_name": "CharacterA",
    "element_description": "Middle-aged female with long hair, wearing a red dress",
    "reference_type": "video_refer",
    "element_video_list": {
      "video_url": "https://example.com/reference.mp4"
    },
    "element_voice_id": "829826751244537879"
  }
}

Response Example

{
  "created": 1739500000,
  "id": "task-video-xxxxxxxx",
  "model": "kling-custom-element",
  "object": "video.generation.task",
  "progress": 0,
  "status": "pending",
  "task_info": {
    "estimated_time": 600,
    "can_cancel": true
  },
  "usage": {
    "credits_reserved": 1,
    "billing_rule": "per_call"
  }
}
Kling 3.0 Motion Control API Pricing & Access | EvoLink