Kling 3.0 Omni Pro Video Reference

kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference

Use a source video plus image references to generate a guided video variation with Kling 3.0 Omni Pro.

Base price
$0.84USD / run
Execution
async
Model type
video
Input fields
7

Try the model

Playground

Open playground
Input
Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order.

PNG, JPEG, WebP, or GIF · 20 MiB maximum each

Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.
Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s
Video duration in seconds. Allowed values: 3, 4, 5, 6, 7, 8, 9, 10.
Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements + reference images) when using video.
Whether to keep the original audio from the video.
The aspect ratio of the generated image. Allowed values: 16:9, 9:16, 1:1.
OutputReady

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/3.0/omni/pro/video-to-video/reference
Execution
async
API
Unified Run API
Endpoint
/v1/run

API README

Kling 3.0 Omni Pro Video Reference

Use a source video plus image references to generate a guided video variation with Kling 3.0 Omni Pro.

Overview

  • Model: kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference
  • Category: video-to-video
  • Best for transferring reference elements into a video while preserving temporal context from the source clip.

Pricing

$0.168 per second. A 5s video costs $0.84.

API Information

  • Input: Prompt, video URL, images reference array, optional aspect_ratio, duration, and keep_audio.
  • Output: MP4 video URL.
  • Execution: async queue submission with polling for the final result.

Additional Resources

Start building

Send your first request

OpenAI-compatible endpoint with unified authentication and usage tracking.

Production API
Unified Run API endpoint
https://api.sandbase.ai/v1/run
Model ID
kwaivgi/kling-video/3.0/omni/pro/video-to-video/reference
# 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/3.0/omni/pro/video-to-video/reference",
  "video": "https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/video-to-video/reference/output_url_0.mp4",
  "prompt": "Based on @Video1, generate the next shot. keep the style of the video",
  "duration": 5,
  "elements": [
    {
      "frontal_image_url": "https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_element_0.png",
      "reference_image_urls": [
        "https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_element_1.png",
        "https://static.sandbase.ai/examples/kwaivgi/kling-video/omni/pro/reference-to-video/input_element_2.png"
      ]
    }
  ],
  "keep_audio": false
}
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

All language models
ModelContextInput / 1MOutput / 1MReleased
KwaiVGI———Jul 3, 2026
KwaiVGI———Jul 6, 2026
KwaiVGI———Jul 6, 2026
KwaiVGI———Jul 3, 2026
KwaiVGI———Jul 3, 2026
KwaiVGI———Jul 3, 2026