# kwaivgi/kling-2.6/image-to-video > Kling 2.6 combines cinematic visuals, fluid motion, and native audio generation to deliver a top-tier image-to-video experience. ## Overview - **Endpoint**: `https://api.shortapi.ai/api/v1/job/create` - **Model ID**: `kwaivgi/kling-2.6/image-to-video` - **Category**: image-to-video - **Kind**: inference ## Pricing For every second of video you generated, you will be charged $0.06 (audio off) or $0.12 (audio on) For more details, please check our pricing page. ## API Information This model can be used via our HTTP API or more conveniently via our client libraries. See the input and output schema below, as well as the usage examples. ### Input Schema The API accepts the following input parameters: - **`mode`** (`string`, _required_): Video generation mode - Default: `pro` - Options: "pro" - **`prompt`** (`string`, _required_): Positive text prompt - Examples: "An action shot of a black lab swimming..." - **`negative_prompt`** (`string`, _optional_): Negative text prompt - **`duration`** (`string`, _required_): Video Length, unit: s (seconds) - Default: `5` - Options: "5", "10" - **`image`** (`string`, _required_): Reference Image - **`image_tail`** (`string`, _optional_): Reference Image - End frame control - **`generate_audio`** (`bool`, _required_): Whether to generate original audio for the video - Default: `false` - Options: "true", "false" ### Output Schema The API returns a JSON response with a `job_id` for tracking the request status. **Create Job Response:** ```json { "code": 0, "data": { "amount": "0.02", "job_id": "" } } ``` **Query Job Result (when status is 2, meaning succeeded):** ```json { "code": 0, "data": { "status": 2, "result": { "images": [{ "url": "https://..." }] } } } ``` ## Use Example To use this model, make an HTTP POST request to the API endpoint, then poll for results using the returned `job_id`. ### Bash (cURL) ```bash # Step 1: Create a job response=$(curl --request POST \ --url https://api.shortapi.ai/api/v1/job/create \ --header "Authorization: Bearer $SHORTAPI_KEY" \ --header "Content-Type: application/json" \ --data '{ "model": "kwaivgi/kling-2.6/image-to-video", "args": { "mode": "pro", "prompt": "The king paces slowly and speaks earnestly, My beloved people, I am here! I have come to save each and every one of you.", "duration": "5", "image": "https://file.shortapi.ai/assets/examples/kwaivgi/kling-2.6/example.JPEG", "generate_audio": true }, "callback_url": "CALLBACK_URL" }') JOB_ID=$(echo "$response" | grep -o '"job_id": *"[^"]*"' | sed 's/"job_id": *//; s/"//g') # Step 2: Poll for results curl --request GET \ --url "https://api.shortapi.ai/api/v1/job/query?id=$JOB_ID" \ --header "Authorization: Bearer $SHORTAPI_KEY" ``` ### JavaScript (Fetch API) ```javascript // Step 1: Create a job const response = await fetch(`https://api.shortapi.ai/api/v1/job/create`, { method: "POST", headers: { "Authorization": `Bearer ${SHORTAPI_KEY}`, "Content-Type": "application/json" }, body: JSON.stringify({ "model": "kwaivgi/kling-2.6/image-to-video", "args": { "mode": "pro", "prompt": "The king paces slowly and speaks earnestly, My beloved people, I am here! I have come to save each and every one of you.", "duration": "5", "image": "https://file.shortapi.ai/assets/examples/kwaivgi/kling-2.6/example.JPEG", "generate_audio": true }, "callback_url": "CALLBACK_URL" }) }); const data = await response.json(); const JOB_ID = data.job_id; // Step 2: Poll for results const result = await fetch(`https://api.shortapi.ai/api/v1/job/query?id=${JOB_ID}`, { method: "GET", headers: { "Authorization": `Bearer ${SHORTAPI_KEY}` } }); const resultData = await result.json(); console.log(resultData); ``` ### Python (Requests) ```python import requests # Step 1: Create a job url = "https://api.shortapi.ai/api/v1/job/create" payload = { "model": "kwaivgi/kling-2.6/image-to-video", "args": { "mode": "pro", "prompt": "The king paces slowly and speaks earnestly, My beloved people, I am here! I have come to save each and every one of you.", "duration": "5", "image": "https://file.shortapi.ai/assets/examples/kwaivgi/kling-2.6/example.JPEG", "generate_audio": True }, "callback_url": "CALLBACK_URL" } headers = { "Authorization": f"Bearer {SHORTAPI_KEY}", "Content-Type": "application/json" } response = requests.post(url, headers=headers, json=payload) data = response.json() JOB_ID = data.get("job_id") # Step 2: Poll for results result_url = f"https://api.shortapi.ai/api/v1/job/query?id={JOB_ID}" result = requests.get(result_url, headers={"Authorization": f"Bearer {SHORTAPI_KEY}"}) print(result.json()) ```