Video
Kling 3.0 Motion Control
Credit-based pricing. Supports image-to-video, reference video.
Output
video
Resolution
720p, 1080p
Inputs
- Start image (required)
- Reference video (required)
Example prompt
The dancer is wearing a flowing red dressTry this prompt →
LLM-ready
API & LLM schema
Exact request contract for this model. Agents can fetch it from /api/v1/models?id=kling-video/v3/motion-control.
POST
/api/v1/generate14 fields · 3 required| Field | Type | Requirement | Contract |
|---|---|---|---|
model_id | constant | Required | ArtEmotion model identifier. |
extra | object | Optional | Model-specific settings may also be nested here. |
max_credits | number | Optional | Reject before submission if the estimated list price exceeds this cap. · Range: 1–… |
webhook_url | string | Optional | Format: uri |
webhook_secret | string | Optional | Optional model input. |
folder_id | string | Optional | Optional model input. |
prompt | string | Optional | Optional model input. |
character_orientation | string | Optional | Match Image: character faces same direction as the reference image (ref video max 10s). Match Video: character follows video orientation (ref video max 30s). · Allowed: image, video · Default: image |
keep_original_sound | boolean | Optional | Preserve the audio from the reference motion video. · Default: true |
element_ids | array<string> | Optional | Optional Kling Element ID for stronger character consistency. Element input forces Match Video orientation; only the first ID is used. |
source_video_duration | number | Optional | Public API billing input; the web app measures the motion clip automatically. · Range: 3–30 |
resolution | string | Optional | Allowed: 720p, 1080p |
image_url | string | Required | Format: uri |
video_url | string | Required | Format: uri |
Minimal request example
{
"model_id": "kling-video/v3/motion-control",
"image_url": "https://example.com/image",
"video_url": "https://example.com/video"
}Raw JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://www.artemotion.ai/api/v1/models?id=kling-video%2Fv3%2Fmotion-control",
"title": "Kling 3.0 Motion Control generation request",
"description": "Request body accepted by POST /api/v1/generate for kling-video/v3/motion-control.",
"type": "object",
"properties": {
"model_id": {
"type": "string",
"const": "kling-video/v3/motion-control",
"description": "ArtEmotion model identifier."
},
"extra": {
"type": "object",
"additionalProperties": true,
"description": "Model-specific settings may also be nested here."
},
"max_credits": {
"type": "number",
"minimum": 1,
"description": "Reject before submission if the estimated list price exceeds this cap."
},
"webhook_url": {
"type": "string",
"format": "uri",
"maxLength": 2048
},
"webhook_secret": {
"type": "string",
"maxLength": 512
},
"folder_id": {
"type": "string"
},
"prompt": {
"type": "string"
},
"character_orientation": {
"title": "Character Orientation",
"description": "Match Image: character faces same direction as the reference image (ref video max 10s). Match Video: character follows video orientation (ref video max 30s).",
"default": "image",
"type": "string",
"enum": [
"image",
"video"
]
},
"keep_original_sound": {
"title": "Keep Original Sound",
"description": "Preserve the audio from the reference motion video.",
"default": true,
"type": "boolean"
},
"element_ids": {
"title": "Element ID",
"description": "Optional Kling Element ID for stronger character consistency. Element input forces Match Video orientation; only the first ID is used.",
"type": "array",
"items": {
"type": "string"
}
},
"source_video_duration": {
"title": "Source Video Duration",
"description": "Public API billing input; the web app measures the motion clip automatically.",
"type": "number",
"minimum": 3,
"maximum": 30,
"multipleOf": 0.1
},
"resolution": {
"type": "string",
"enum": [
"720p",
"1080p"
]
},
"image_url": {
"type": "string",
"format": "uri"
},
"video_url": {
"type": "string",
"format": "uri"
}
},
"required": [
"model_id",
"image_url",
"video_url"
],
"additionalProperties": false
}FAQ
How much does Kling 3.0 Motion Control cost on ArtEmotion?
Credit-based pricing. You pay in ArtEmotion credits — every plan and top-up converts USD to credits at a fixed rate.
Do I get my credits back if Kling 3.0 Motion Control fails?
Yes — failed generations are never charged. The credits are released back to your balance automatically.
Can I call Kling 3.0 Motion Control from the API?
Yes. Use POST /api/v1/generate with model_id: "kling-video/v3/motion-control". See the API reference for the full schema.
Where are my generations stored?
Every output is saved to your personal Library. You can export or delete everything any time from Privacy & deletion.
Ready to generate with Kling 3.0 Motion Control?
Start now →No commitment. New accounts get 50 free credits on signup. See pricing.