# Kling 4.0 API on MLMux

> Kuaishou Kling 4.0 for video up to 30 seconds from text, first and last frames, or image and video references.

- Model page: https://www.mlmux.com/kwaivgi/kling-4.0
- API model ID: `kwaivgi/kling-4.0`
- Provider: Kuaishou
- Generation modes: Text to video, Image to video, First & last frame, Multimodal reference
- Endpoint: `POST https://api.mlmux.com/v1/videos/generations`
- Reference images: up to 10
- Resolutions: 720p, 1080p
- Aspect ratios: 16:9, 9:16, 1:1, 21:9
- Duration: 3 to 30 seconds

## Pricing

Pay as you go in credits; 1 credit = 1 US dollar, with no subscription. `official-cheap` is the default route.

- 720p: $0.154 on `official`, $0.138 on `official-cheap` per second of output video
- 1080p: $0.231 on `official`, $0.208 on `official-cheap` per second of output video

## Request

Send your API key as `Authorization: Bearer $MLMUX_API_KEY`. Create keys at https://www.mlmux.com/console/api-keys.

```bash
curl https://api.mlmux.com/v1/videos/generations \
  -H "Authorization: Bearer $MLMUX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "kwaivgi/kling-4.0",
  "route_mode": "official-cheap",
  "prompt": "A red fox walks through fresh snow at sunrise, slow tracking shot, cinematic light",
  "mode": "text_to_video",
  "ratio": "16:9",
  "resolution": "720p",
  "duration": 5
}'

# The response is a task. Poll it until "status" is "succeeded", then read "video".
curl https://api.mlmux.com/v1/videos/generations/TASK_ID \
  -H "Authorization: Bearer $MLMUX_API_KEY"
```

```python
import os
import time
import requests

headers = {"Authorization": f"Bearer {os.environ['MLMUX_API_KEY']}"}
response = requests.post(
    "https://api.mlmux.com/v1/videos/generations",
    headers=headers,
    json={
      "model": "kwaivgi/kling-4.0",
      "route_mode": "official-cheap",
      "prompt": "A red fox walks through fresh snow at sunrise, slow tracking shot, cinematic light",
      "mode": "text_to_video",
      "ratio": "16:9",
      "resolution": "720p",
      "duration": 5
    },
    timeout=300,
)
response.raise_for_status()
task = response.json()

while task["status"] not in ("succeeded", "failed", "expired", "canceled"):
    time.sleep(5)
    task = requests.get("https://api.mlmux.com" + task["poll_url"], headers=headers, timeout=30).json()

print(task["status"], task.get("video"))
```

The response is a task. Poll its `poll_url` every few seconds until `status` is `succeeded`, then read the video URL, or receive a webhook when it finishes.

## Frequently asked questions

### What is Kling 4.0?

Kling 4.0 is a video generation model from Kuaishou. On MLMux you can run it in the browser or call it through one API. Kuaishou Kling 4.0 for video up to 30 seconds from text, first and last frames, or image and video references.

### How do I use the Kling 4.0 API?

Create an API key in the MLMux Console, then send a POST request to https://api.mlmux.com/v1/videos/generations with the key in the Authorization header and model set to kwaivgi/kling-4.0. The request returns a task: poll it, or receive a webhook when the video is ready.

### What can Kling 4.0 do?

Generation modes: Text to video, Image to video, First & last frame, and Multimodal reference. Clips run 3 to 30 seconds at 720p or 1080p, in aspect ratios such as 16:9, 9:16, 1:1, and 21:9, with up to 10 reference images.

### How much does Kling 4.0 cost?

MLMux is pay as you go, with no subscription or monthly fee, and 1 credit equals 1 US dollar. One second of 720p Kling 4.0 video costs $0.138 on the default official-cheap route and $0.154 on the official route. Rates for every resolution are listed in the pricing section of this page.

### Can I try Kling 4.0 without writing code?

Yes. Sign in and use the playground at the top of this page to run Kling 4.0 with the same settings as the API. The playground's code views show the matching request for your settings, and the quick start below has copy-paste examples in cURL, Python, and JavaScript.

## More

- Video API guide: https://www.mlmux.com/docs/videos
- Pricing for every model: https://www.mlmux.com/pricing
- All models: https://www.mlmux.com/llms.txt
