# Kling O3 4K Video to Video Reference > Kling O3 native 4K video-to-video reference via Fal.AI. Generates a new 4K shot that follows a reference video (cited as @Video1) — its camera motion, pacing, and framing — while integrating characters/objects from element images (@Element1) and style images (@Image1). Outputs 4K directly with no upscaling pass, 3-15 seconds. - **Provider**: fal - **Model ID**: fal-ai/kling-video/o3/4k/video-to-video/reference - **Category**: video_generation - **Credits**: from 4,400 for the default configuration — varies by input, see Pricing - **Pricing Type**: input_based ## API Endpoint Base URL: https://api.core.today/v1 ### Create Prediction POST /predictions ### Get Status GET /predictions/{job_id} ### Cancel DELETE /predictions/{job_id} ## Authentication Header: `X-API-Key: YOUR_API_KEY` ## Input Parameters - `video_url` (string, **required**): Reference video URL. Only .mp4/.mov, 3-15 seconds, 720-3840px per side, 23-60 fps, max 200MB. - `prompt` (string, **required**): Text prompt for video generation. Refer to the reference video as @Video1, element images as @Element1, @Element2, and style images as @Image1, @Image2. - `duration` (string, optional): Output video duration in seconds (3-15). Billed per second. (Default: `5`; Options: `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `13`, `14`, `15`) - `keep_audio` (boolean, optional): Whether to keep the original audio from the reference video. (Default: `true`) - `enable_safety_checker` (boolean, optional): Enable the safety checker. (Default: `true`) - `aspect_ratio` (string, optional): Aspect ratio of the generated video. (Default: `auto`; Options: `auto`, `16:9`, `9:16`, `1:1`) - `elements` (array, optional): Characters/objects to include, cited in the prompt as @Element1, @Element2. Elements plus image_urls may total at most 4. - `image_urls` (array, optional): Style/appearance reference images, cited as @Image1, @Image2. Elements plus image_urls may total at most 4. Images — jpg/png, min 300px, aspect ratio 1:2.5 to 2.5:1, max 50MB. ## Example Request ```json { "model": "fal-ai/kling-video/o3/4k/video-to-video/reference", "input": { "duration": "5", "image_urls": [ "https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/image_url1.jpg" ], "aspect_ratio": "auto", "video_url": "https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/video_reference.mp4", "prompt": "Integrate @Element1 in the scene. Style video should be following watercolor style of @Image1", "elements": [ { "reference_image_urls": [ "https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/element1_reference1.png" ], "frontal_image_url": "https://storage.googleapis.com/falserverless/example_inputs/kling-o3/pro-v2v-reference/element1_front.png" } ] } } ``` ## Response Format ```json { "job_id": "abc123", "status": "pending", "provider": "fal", "model": "fal-ai/kling-video/o3/4k/video-to-video/reference", "created_at": "2026-01-01T00:00:00Z", "result": null, "error": null, "credits_used": null } ``` Status values: `pending`, `processing`, `completed`, `failed`, `cancelled` When the job is `completed`, `result` holds the output URL(s) or data and `credits_used` the net credits charged. When it is `failed`, `error` and `error_code` say why and the charge is refunded. ## Usage Flow 1. POST /predictions with model and input → receive job_id 2. Poll GET /predictions/{job_id} until status is `completed` or `failed` 3. Result contains output URL(s) or data ## Pricing Charged by input. Rules are checked top to bottom and the first match applies: - Otherwise: 976.5 credits per second (`duration`, 3–15, default 15) Default configuration: 4,400 credits. These are list prices. The amount charged is rounded, and large charges are discounted progressively. `POST /predictions/estimate` with the same `model` and `input` returns the charge for that input without creating a job (an estimate when the price depends on the output). ## Output Type json ## Tags kling, kling-o3, 4k, video-to-video, reference-to-video, video-generation ## Documentation https://fal.ai/models/fal-ai/kling-video/o3/4k/video-to-video/reference