Kling Video V3 Pro
kwaivgi/kling-video/v3/pro/image-to-videoKling Video V3 Pro is KwaiVGI's image-to-video AI model. Bring static images to life with fluid animation, consistent character motion, and professional-grade video output.
- Base price
- $0.84USD / run
- Execution
- async
- Model type
- video
- Input fields
- 7
Try the model
Playground
PNG, JPEG, WebP, or GIF · 20 MiB maximum
PNG, JPEG, WebP, or GIF · 20 MiB maximum
Your output will appear here
Complete the inputs, then click Run.
Specifications
Pricing
- Base price
- $0.84 / run
- Billing formula
- params.duration * 0.168
Context & modalities
- Input
- Schema-defined
- Output
- video
Capabilities
- Chat
- Not supported
- Vision
- Not supported
- Reasoning
- Not supported
- Structured output
- Not supported
- Function calling
- Not supported
- Audio input
- Not supported
Access
- Provider
- KwaiVGI
- Model ID
- kwaivgi/kling-video/v3/pro/image-to-video
- Execution
- async
- API
- Unified Run API
- Endpoint
- /v1/run
API README
Kling Video V3 Pro Image-to-Video
Kling Video V3 Pro animates a supplied opening image from a written direction. The image fixes the first frame while the prompt describes action, camera behavior, and changes over time. An optional end image can guide the final frame.
The route produces clips from 3 to 15 seconds and returns a video URL. A request can select custom or intelligent shot structure, and native audio is enabled by default. The opening image determines the frame shape because this route has no separate aspect-ratio field.
Highlights
- Cinematic visual quality. The exact Pro image-to-video route is documented for cinematic visuals. This is the route's stated visual positioning.
- Fluid motion. Fluid motion is explicitly identified for this Pro image animation route. Movement is a model capability rather than a request parameter.
- Native audio generation. The exact route is documented to generate native audio with video. Audio belongs to the generated result rather than a separate post-process.
- Strong subject and text consistency. The exact Pro page identifies strong subject and text consistency. This capability applies while the opening image is animated.
Pricing
| Duration | Price |
|---|---|
| 3 seconds | $0.504 |
| 4 seconds | $0.672 |
| 5 seconds | $0.840 |
| 6 seconds | $1.008 |
| 7 seconds | $1.176 |
| 8 seconds | $1.344 |
| 9 seconds | $1.512 |
| 10 seconds | $1.680 |
| 11 seconds | $1.848 |
| 12 seconds | $2.016 |
| 13 seconds | $2.184 |
| 14 seconds | $2.352 |
| 15 seconds | $2.520 |
When to Use
| ✅ Good fit | ❌ Consider alternatives |
|---|---|
| Add movement to an existing product or character still. | Begin without any opening image; use text-to-video. |
| Direct a camera move around the composition in the first frame. | Select frame shape independently of the supplied image. |
| Guide a transition toward a supplied final frame. | Require a clip longer than 15 seconds in one request. |
| Produce a short scene with generated sound enabled. | Require voice behavior outside the documented language handling. |
| Use the Pro tier for this image-led workflow. | Prefer the lower local price of the Standard sibling. |
Prompt Guide
Describe how the visible scene should move. Keep the request to the required image and prompt fields first, then add duration, audio, end-frame, or shot settings only when needed.
Subject action: [movement over time]
Camera: [framing and camera path]
Environment: [light, wind, particles, background movement]
Timing: [pace and progression]
Audio: [ambience, effects, or speech when enabled]
Final state: [arrival at the optional end image]
{
"image": "<start-image-url>",
"prompt": "The craftsman slowly examines the bowl while warm light shifts and dust drifts through the air.",
"duration": 5,
"generate_audio": true
}
Technical Specs
| Spec | Value |
|---|---|
| Required inputs | image, prompt |
| Prompt length | Up to 2,500 characters |
| Duration | 3–15 seconds; default 5 |
| Frame guidance | Required image; optional end_image |
| Shot types | customize, intelligent |
| Multi-prompt field | Exposed locally, but prompt remains required by the request contract |
| Native audio | Optional; default enabled |
| Output | Video URL with optional file metadata |
Related
- Kling Video V3 Pro Text-to-Video — Generate without an opening image.
- Kling Video V3 Standard Image-to-Video — Compare the sibling tier.
Start building
Send your first request
OpenAI-compatible endpoint with unified authentication and usage tracking.
# The quoted heredoc keeps Unicode and shell metacharacters unchanged.
result=$(curl --fail-with-body --silent \
-X POST "https://api.sandbase.ai/v1/run" \
-H "Authorization: Bearer $SANDBASE_API_KEY" \
-H "Content-Type: application/json" \
--data-binary @- <<'SANDBASE_JSON'
{
"model": "kwaivgi/kling-video/v3/pro/image-to-video",
"image": "https://storage.googleapis.com/falserverless/example_inputs/kling-v3/pro-i2v/start_image.png",
"prompt": "The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes.",
"duration": 12,
"shot_type": "customize",
"generate_audio": true
}
SANDBASE_JSON
)
run_id=$(printf '%s' "$result" | jq -r .id)
for attempt in $(seq 1 120); do
status=$(printf '%s' "$result" | jq -r .status)
case "$status" in completed|failed|timeout) break ;; esac
sleep 2
result=$(curl --fail-with-body --silent \
-H "Authorization: Bearer $SANDBASE_API_KEY" \
"https://api.sandbase.ai/v1/run/$run_id")
done
status=$(printf '%s' "$result" | jq -r .status)
[ "$status" = completed ] || { echo "Generation ended: $status" >&2; exit 1; }
printf '%s\n' "$result"Choose your model
Compare models
| Model | Context | Input / 1M | Output / 1M | Released |
|---|---|---|---|---|
Kling Video V3 ProThis model KwaiVGI | — | — | — | Feb 4, 2026 |
KwaiVGI | — | — | — | Jul 6, 2026 |
KwaiVGI | — | — | — | Jul 6, 2026 |
KwaiVGI | — | — | — | Jul 3, 2026 |
KwaiVGI | — | — | — | Jul 3, 2026 |
KwaiVGI | — | — | — | Jul 3, 2026 |
