Kling 4.0 API

Makes 3 to 30 second clips at 720p or 1080p with native audio from text, first, middle and last frames, reference images and videos, or a video to edit.

Kling AIVideo GenerationReleased Oct 15, 2026Proprietary EndpointNew

About Kling 4.0

Makes 3 to 30 second clips at 720p or 1080p with native audio from text, first, middle and last frames, reference images and videos, or a video to edit.

Also known as Kling AI Kling 4.0

video generationtext to videoimage to videoaudioediting

Kling 4.0 specs

Model ID
kling-4-0
Author
Kling AI
Category
Video Generation
Released
Oct 15, 2026
Input
TextImageVideo
Output
Video
Endpoints
POST/v1/videos/generations
Alternate model IDs
kling-4.0kling/kling-4-0

Kling 4.0 API pricing

Live pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.

Type
Spec
Rate
Standard 720p
per second
$0.157
Standard 1080p
per second
$0.235
Video input 720p
per second of input plus output, at least twice the output
$0.094
Video input 1080p
per second of input plus output, at least twice the output
$0.141
Compare on the full pricing page

How to call the Kling 4.0 API

Kling 4.0 runs through POST /v1/videos/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Get an API key from the EmpirioLabs dashboard.

cURL: submit the job
curl https://api.empiriolabs.ai/v1/videos/generations \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-4-0",
    "prompt": "Describe what you want Kling 4.0 to generate."
  }'
cURL: poll for the result
curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"
Python
import requests

response = requests.post(
    "https://api.empiriolabs.ai/v1/videos/generations",
    headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    json={
        "model": "kling-4-0",
        "prompt": "Describe what you want Kling 4.0 to generate.",
    },
)
job = response.json()

# Generation runs as an async job. Poll until it completes.
import time
while True:
    status = requests.get(
        f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
        headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    ).json()
    if status.get("status") in ("completed", "failed"):
        print(status)
        break
    time.sleep(5)
Full Kling 4.0 API reference

Kling 4.0 API parameters

Request parameters supported by the Kling 4.0 API on EmpirioLabs. Defaults apply when a field is omitted.

ParameterTypeDefaultRange / valuesDescription
promptstring--Scene description, up to 26,000 English or 11,000 non-English characters. Refer to images as @image_1, @image_2 and videos as @video_1 in the order they are supplied.
resolutionenum1080p720p, 1080pOutput resolution. 1080p is billed at a higher per-second rate than 720p.
aspect_ratioenum16:916:9, 9:16, 1:1, 21:9Output aspect ratio for text-to-video and reference images. A first, middle or last frame, or a video to edit, sets the aspect ratio instead.
durationnumber53 to 30Clip length in seconds, whole numbers only. A video edit keeps the length of the video it edits.
imagestring--First frame image URL. The video starts on this image.
image_endstring--Last frame image URL. The video ends on this image.
middle_imagesstring--Keyframe image URLs between the first and last frame, in order, as a list or comma-separated.
reference_imagesstring--Reference image URLs for characters, objects, scenes or style, as a list or comma-separated. Up to 10 images in total across all image inputs.
videostring--Video URL to edit, 3 to 30 seconds. The result keeps its length and aspect ratio, and bills at the video input rate.
reference_videosstring--Reference video URLs for motion, camera work or style, 3 to 30 seconds each, as a list or comma-separated. Up to 5 videos in total. Bills at the video input rate.

Good to know

Generates 3 to 30 second clips at 24 fps in 720p or 1080p, each with a native stereo audio track.

Inputs

  • Text to video: prompt only.
  • Keyframes: a first frame (image), middle frames (middle_images) and a last frame (image_end). The video follows the first frame's aspect ratio.
  • Reference images (reference_images): characters, objects, scenes or style to use.
  • Reference videos (reference_videos): motion, camera work or style to follow, 3 to 30 seconds each.
  • Video edit (video): a video to edit, 3 to 30 seconds. The result keeps its length and aspect ratio.
  • Up to 10 images and 5 videos per request. In the prompt, refer to images as @image_1, @image_2 (first frame, middle frames, last frame, then references) and to videos as @video_1, @video_2 (the video to edit first).

In the Playground

One attached image is the first frame, two are the first and last frames, and three or more are references. The first attached video is the one edited; any others are references.

Media limits

  • Images: JPG or PNG, at least 300 px, aspect ratio between 2:5 and 5:2, up to 30 MB.
  • Videos: MP4 or MOV, 3 to 30 seconds, 700 to 4553 px per side, up to 300 MB.

Billing

  • Without a video input: billed per second of the generated clip at the resolution you request.
  • With a video input (a video to edit or a reference video): billed at the video input rate on twice the length of the generated clip, or on the input plus the output when the input is longer.

Kling 4.0 API: common questions

How much does the Kling 4.0 API cost?

On EmpirioLabs, Kling 4.0 is billed pay as you go: Standard 720p $0.157 per second; Standard 1080p $0.235 per second; Video input 720p $0.094 per second of input plus output, at least twice the output; Video input 1080p $0.141 per second of input plus output, at least twice the output. The live rate card on this page always matches what the API charges.

Which endpoint does Kling 4.0 use?

Kling 4.0 is served through POST /v1/videos/generations on api.empiriolabs.ai with standard bearer-token authentication.

Can I try Kling 4.0 in the browser before integrating?

Yes. The EmpirioLabs playground runs Kling 4.0 in the browser with the same parameters the API exposes, so you can test prompts before writing code.

How do I get a Kling 4.0 API key?

Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.

Ready to use better endpoints?

Check out our pricing or reach out if you want your own model deployed on our stack.