Skip to main content
POST
Kling V3 Motion Control

Headers

Authorization
string

Body

application/json
model
enum<string>
required

Model name. Must be kling-v3-motion.

Available options:
kling-v3-motion
prompt
string
required

Text prompt, e.g. what the character wears. Max 2500 characters.

Maximum string length: 2500
image_url
string<uri>
required

Appearance reference image (.jpg / .jpeg / .png, ≤50MB, ≥300px per side, aspect ratio between 1:2.5 and 2.5:1). The character's upper or full body and head must be clearly visible and unobstructed.

video_url
string<uri>
required

Motion reference video. Required. See the requirements above.

character_orientation
enum<string>
default:video

Whether the generated character faces as in the appearance image or as in the motion video. Also caps how long the motion video may be (30s vs 10s).

Available options:
image,
video
resolution
enum<string>
default:720p

Output resolution. Motion control has no 4K tier. quality is accepted as a compatible alias.

Available options:
720p,
1080p
generate_audio
boolean
default:false

Keep the motion video's original sound. There is no generated-audio option on this endpoint.

element_ids
string[]

Optional. At most one element id from Kling's element library, used as the appearance reference instead of (or alongside) image_url. Forces character_orientation: video. element_id is accepted for a single value.

Maximum array length: 1
custom_callback_url
string<uri>

Optional. A publicly accessible HTTPS URL. When the task status changes (processing / success / failed), GoEnhance sends a POST request to this URL. The request body is identical to the response of GET /api/v1/jobs/detail. If your server does not respond with HTTP 200, the notification is retried up to 3 times, with a 3-second timeout per attempt.

Example:

"https://your-server.com/goenhance/callback"

Response

code
integer
required
msg
string
required
data
object
required