All models / Video / kling-v3-standard
kling-v3-standard
model id: kuaishou/kling-v3/{host_id}
Text in → Video out
Hosts
Don’t know how to select a host? Check Provider selection.
| Host | 720p | 1080p | 2160p |
|---|---|---|---|
| SandBase | $0.0588 / s | $0.0784 / s | $0.294 / s |
| TOAPIS | $0.06 / s | $0.08 / s | — |
| MachGen | $0.068 / s | $0.0901 / s | $0.3366 / s |
| Pika | $0.068 / s | $0.09 / s | — |
| kie.ai | $0.07 / s | $0.09 / s | $0.335 / s |
| Novita | $0.084 / s | $0.112 / s | $0.42 / s |
| WaveSpeedAI | $0.084 / s | $0.112 / s | $0.42 / s |
| OpenRouter | $0.14 / s | — | — |
| Tencent TokenHub | Temporarily unavailable | ||
0% additional markup beyond our 2.5% platform fee.
Playground
Only one of these two tabs is sent — a model can't take both a start/end image and reference files in the same call.
Output
Nothing generated yet
# create
import requests
resp = requests.post(
"https://videorouter.sh/api/v1/videos",
headers={"Authorization": "Bearer llmr_sk_...", "Content-Type": "application/json"},
json={"model": "kuaishou/kling-v3", "prompt": "A drone shot flying over snowy mountains", "duration_secs": 5},
)
job = resp.json()
# poll
status = requests.get(
f"https://videorouter.sh/api/v1/videos/{job['id']}",
headers={"Authorization": "Bearer llmr_sk_..."},
).json()
print(status["status"]) # pending -> in_progress -> completed
Guides & comparisons
- fal.ai vs VideoRouter: What Seedance 2.5, Seedance 2.0, Wan 3.0, MiniMax H3 and Kling 4.0 Cost on Each
- How to Call the Kling API (Python + curl, Std/Pro/4K)
- Kling v3.0 API Pricing: Std vs Pro vs 4K Compared
- Best Video Generation APIs for Developers in 2026
- Video generation API for developers
- Live video API price index