Kling 3.0 API
AI VideoKling 3.0 is Kling's video route on OmniaKey: text to video and a first frame with an optional last frame, in a standard and a high-quality tier, at fixed lengths of 5, 10 or 15 seconds.
- Per successful call$0.80–$3.00
- OperationsText to video
- Image to video
- View tool pricing and billing rules
Your result will appear here once you run the model.
01
Where it fits
Kling 3.0 is Kling's video route on OmniaKey: text to video and a first frame with an optional last frame, in a standard and a high-quality tier, at fixed lengths of 5, 10 or 15 seconds.
Choose Kling 3.0 when the clip length is known up front: std costs $0.80/$1.60/$2.20 and pro $1.00/$2.00/$3.00 per generation for 5/10/15 seconds. mode is required on every request, and image-to-video takes its aspect ratio from the first frame.
02
What it does
Text to video
kling-3.0
Generate a short video clip from a text prompt.
Image to video
kling-3.0
Animate a still image into a short video clip.
03
In depth
Kling 3.0 is a fixed-length video model on OmniaKey under the id kling-3.0. A request picks a quality mode, standard or pro, and a length of exactly 5, 10 or 15 seconds; the clip is then charged as one cell of that mode-by-duration grid, whatever the render takes.
It animates a prompt or a first frame. There is no reference operation, and a reference_to_video call is refused before a job exists. Because image-to-video reads its framing from the supplied still, the aspect_ratio setting applies only to text-to-video, where 16:9, 9:16 and 1:1 are the accepted values.
We ran three 5-second 720p prompts against Wan 3.0 on 25 October 2026: Kling took the skate action and lost the noodle stall and the perfume orbit. Those results, the render times, and a rejected first frame from an earlier probe sit in the observations below.
Stunt and sports action
Kling followed a written skate trick over a puddle and landed it cleanly while Wan put the board in the water on the same prompt. For a shot where the move matters more than the scenery, this is the one to try first and to keep the camera instruction explicit.
Budgets fixed before rendering
Because the charge is one cell of the mode-by-duration grid, a client can approve a number before a frame is drawn. Choose 5, 10 or 15 seconds up front, and remember that other lengths are rejected outright rather than trimmed.
Animating a supplied still
Send a first frame over a remote HTTPS link, or a last frame as well for a landing point. The still sets the aspect ratio, so compose it in the shipping shape; a 288x288 thumbnail is below the pixel floor and will fail.
04
Hands-on notes
In our three-prompt test on 25 October 2026, Kling 3.0 lost two of three clips to Wan 3.0 and won only the skate action shot.
Read the testKling 3.0 finished the same three prompts at a median 193.6 seconds against 144.2 seconds for Wan 3.0.
Read the testWhen we sent a reference_to_video request against Kling 3.0, it returned HTTP 400 before any task was created, so nothing was charged.
Read the testKling 3.0 rejected a 288x288 first frame with a pixel-size error and refunded that task, while 1200x630 and 1280x720 frames passed.
Read the testOur 16 September 2026 smoke run of a 15-second Kling 3.0 standard text-to-video job returned a 13,753,392-byte MP4 with H.264 video and AAC audio.
05
Limits to plan around
- Only 5, 10 or 15 seconds are accepted. There is no 20- or 30-second cell, and an in-between value such as 8 is rejected before a job is created, so plan the edit around three lengths.
- No reference images or reference video. The first frame is the opening of the clip, not a style cue, and a reference call answers with an HTTP 400 rather than a task.
- First frames have a pixel floor: a 288x288 test image failed at generation and had to be refunded, so start from at least a 1200x630 still.
- Sound comes on by default: our 16 September 2026 smoke run of a 15-second standard text-to-video job never asked for audio and still returned an MP4 with an AAC track, so either plan an audio bed or strip the track after the download.
06
Compare nearby models
| Model | Best for | Operations | Listed price |
|---|---|---|---|
| Kling 3.0This page kling-3.0 | Fixed 5, 10 or 15 second clips at a charge known before rendering. | Text to video · Image to video | $0.80–$3.00 per call |
| Wan 3.0 wan3.0-video | Per-second billing, 30-second ceilings and a reference operation this id lacks. | Text to video · Image to video · Reference to video | $0.04–$0.16 per second |
| HappyHorse 1.1 happyhorse-1.1 | Three ready-made variants at 480P, 720P and 1080P with reference support. | Text to video · Image to video · Reference to video | $0.042–$0.108 per second |
07
Sources and verification
Guide updated 2026-10-27.
08
Call it
Media models run asynchronously. Create a task, poll it until it finishes, then download the signed asset URL.
# 1. Create the job. 202 Accepted; the body carries the task id,
# the pre-charged price, and a poll_url. Reuse one Idempotency-Key
# across retries so a timeout never starts a second paid job.
curl --fail-with-body https://api.omniakey.com/v1/media/tasks \
-H "Authorization: Bearer $OMNIAKEY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: kling-3.0-001" \
-d '{
"model": "kling-3.0",
"type": "video",
"operation": "text_to_video",
"input": {"prompt": "a paper boat on a quiet lake at sunset"},
"parameters": {"duration": 6, "resolution": "720p"}
}'
# 2. The same model id and the same poll loop serve the other operations:
# image_to_video media[] type "first_frame"
# Reference media travel alongside the prompt:
# {"prompt": "...", "media": [{"type": "first_frame", "url": "https://example.com/first-frame.png"}]}
# A public HTTPS URL or a base64 data URI both work.
# 3. Poll GET /v1/media/tasks/{id} until status is
# succeeded | failed | canceled. Progress carries percent and stage.
curl --fail-with-body https://api.omniakey.com/v1/media/tasks/TASK_ID \
-H "Authorization: Bearer $OMNIAKEY_API_KEY"
# 4. Download assets[0].url before expires_at, or poll again for a
# fresh signed URL. Failed and canceled jobs are refunded.
curl -sS -o out.mp4 "$(jq -r '.assets[0].url' result.json)"09
Pricing
Video jobs are billed per second of rendered output, not per token. Failed or canceled jobs are refunded automatically.
$0.80–$3.00per call
mode | duration
- std|5
- $0.80per call
- std|10
- $1.60per call
- std|15
- $2.20per call
- pro|5
- $1.00per call
- pro|10
- $2.00per call
- pro|15
- $3.00per call
More models from Kling
Kling 3.0 Turbo
kling-3-turbo
Related articles
Kling 3.0 API: Text-to-Video Request Code and Real Clips
A text-to-video task is one POST with model kling-3.0. Here is the request code, the fields it takes, and two 5-second clips we made on October 29, 2026, measured.
Read articleKling 3.0 Prompt Guide: Structure, Examples and Real Clips
Four prompts, four real clips: where the shot cuts fell, which dialogue came through and where the camera did not move.
Read articleHappyHorse 1.1 vs Kling 3.0: Same-Prompt Test and Price
Same three prompts: HappyHorse 1.1 won the busy scene and the product orbit, Kling 3.0 nailed the stunt.
Read articleKling 3.0 vs Wan 3.0: Same-Prompt Test and Price
Three prompts, two video models, one day: what each made and what it cost.
Read articleFrequently asked questions
How do I call Kling 3.0 on OmniaKey?
POST to /v1/media/tasks with the model id, type "video", and operation "text_to_video" — or "image_to_video" with a first frame in input.media[] with type "first_frame". Reuse one Idempotency-Key across retries so a timeout never starts a second paid job.
What does Kling 3.0 cost?
Kling 3.0 bills $0.80–$3.00 per call of rendered video. Creation pre-charges the requested duration up front from your prepaid balance, and failed or canceled jobs are refunded automatically.
Why does the API return a task id instead of the video?
Video renders take from about a minute to several minutes, so OmniaKey runs every video route through one asynchronous lifecycle. Poll GET /v1/media/tasks/{id} until the status is succeeded, then read the signed asset URL.
Why does Kling 3.0 reject my aspect_ratio on image-to-video?
Because the supplied still already sets the frame. Kling takes the ratio from the first frame on image-to-video and only accepts an explicit aspect_ratio on text-to-video, where the choices are 16:9, 9:16 and 1:1. Crop the still to the shape you need before sending it.
Is mode a required parameter?
Yes. Every request carries mode, either std or pro, plus duration, and Kling's documentation maps standard output to 720P and pro to 1080P, so the mode is also how you choose the frame size; there is no separate resolution field. The catalog then prices the job by mode and duration, with the current rate in the price table on the model page.
Can Kling 3.0 use a reference image?
No. The catalog lists text-to-video and image-to-video only, and a reference_to_video request returns HTTP 400 before a task is created, so you are not billed for the attempt. Use Seedance, Wan 3.0 or HappyHorse when a shot has to follow a character sheet.
What happens if my first frame is too small?
The provider rejects it with a pixel-size error and the task is refunded. A 288x288 test image failed that way, while 1200x630 and 1280x720 frames passed. Export stills at a normal frame size rather than reusing a thumbnail or a favicon.
Does Kling 3.0 make sound?
Yes, a track arrives by default. Our 16 September 2026 smoke run of a 15-second standard text-to-video job returned an MP4 with H.264 video and an AAC audio track, and nothing in that request asked for sound. Write the ambience you want into the prompt, and strip the track afterwards when the edit needs silence.
