
Kling Video O3 Pro Text-to-Video API by Kuaishou
Kling Omni Video O3 is Kuaishou's advanced unified multi-modal video model with MVL (Multi-modal Visual Language) technology. Professional quality with enhanced motion and detail.
INPUT
OUTPUT
IdleYour request will cost $0.095 per run. For $10 you can run this model approximately 105 times.
Here's what you can do next:
Code Example
import requests
import time
# Step 1: Start video generation
generate_url = "https://api.atlascloud.ai/api/v1/model/generateVideo"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer $ATLASCLOUD_API_KEY"
}
data = {
"model": "kwaivgi/kling-video-o3-pro/text-to-video",
"prompt": "A beautiful sunset over the ocean with gentle waves",
"width": 512,
"height": 512,
"duration": 3,
"fps": 24,
}
generate_response = requests.post(generate_url, headers=headers, json=data)
generate_result = generate_response.json()
prediction_id = generate_result["data"]["id"]
# Step 2: Poll for result
poll_url = f"https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}"
def check_status():
while True:
response = requests.get(poll_url, headers={"Authorization": "Bearer $ATLASCLOUD_API_KEY"})
result = response.json()
if result["data"]["status"] in ["completed", "succeeded"]:
print("Generated video:", result["data"]["outputs"][0])
return result["data"]["outputs"][0]
elif result["data"]["status"] == "failed":
raise Exception(result["data"]["error"] or "Generation failed")
else:
# Still processing, wait 2 seconds
time.sleep(2)
video_url = check_status()Install
Install the required package for your language.
pip install requestsAuthentication
All API requests require authentication via an API key. You can get your API key from the Atlas Cloud dashboard.
export ATLASCLOUD_API_KEY="your-api-key-here"HTTP Headers
import os
API_KEY = os.environ.get("ATLASCLOUD_API_KEY")
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {API_KEY}"
}Never expose your API key in client-side code or public repositories. Use environment variables or a backend proxy instead.
Submit a request
import requests
url = "https://api.atlascloud.ai/api/v1/model/generateVideo"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer $ATLASCLOUD_API_KEY"
}
data = {
"model": "your-model",
"prompt": "A beautiful landscape"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())Submit a Request
Submit an asynchronous generation request. The API returns a prediction ID that you can use to check the status and retrieve the result.
/api/v1/model/generateVideoRequest Body
import requests
url = "https://api.atlascloud.ai/api/v1/model/generateVideo"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer $ATLASCLOUD_API_KEY"
}
data = {
"model": "kwaivgi/kling-video-o3-pro/text-to-video",
"input": {
"prompt": "A beautiful sunset over the ocean with gentle waves"
}
}
response = requests.post(url, headers=headers, json=data)
result = response.json()
print(f"Prediction ID: {result['id']}")
print(f"Status: {result['status']}")Response
{
"id": "pred_abc123",
"status": "processing",
"model": "model-name",
"created_at": "2025-01-01T00:00:00Z"
}Check Status
Poll the prediction endpoint to check the current status of your request.
/api/v1/model/prediction/{prediction_id}Polling Example
import requests
import time
prediction_id = "pred_abc123"
url = f"https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}"
headers = { "Authorization": "Bearer $ATLASCLOUD_API_KEY" }
while True:
response = requests.get(url, headers=headers)
result = response.json()
status = result["data"]["status"]
print(f"Status: {status}")
if status in ["completed", "succeeded"]:
output_url = result["data"]["outputs"][0]
print(f"Output URL: {output_url}")
break
elif status == "failed":
print(f"Error: {result['data'].get('error', 'Unknown')}")
break
time.sleep(3)Status Values
processingThe request is still being processed.completedGeneration is complete. Outputs are available.succeededGeneration succeeded. Outputs are available.failedGeneration failed. Check the error field.Completed Response
{
"data": {
"id": "pred_abc123",
"status": "completed",
"outputs": [
"https://storage.atlascloud.ai/outputs/result.mp4"
],
"metrics": {
"predict_time": 45.2
},
"created_at": "2025-01-01T00:00:00Z",
"completed_at": "2025-01-01T00:00:10Z"
}
}Upload Files
Upload files to Atlas Cloud storage and get a URL you can use in your API requests. Use multipart/form-data to upload.
/api/v1/model/uploadMediaUpload Example
import requests
url = "https://api.atlascloud.ai/api/v1/model/uploadMedia"
headers = { "Authorization": "Bearer $ATLASCLOUD_API_KEY" }
with open("image.png", "rb") as f:
files = {"file": ("image.png", f, "image/png")}
response = requests.post(url, headers=headers, files=files)
result = response.json()
download_url = result["data"]["download_url"]
print(f"File URL: {download_url}")Response
{
"data": {
"download_url": "https://storage.atlascloud.ai/uploads/abc123/image.png",
"file_name": "image.png",
"content_type": "image/png",
"size": 1024000
}
}Input Schema
The following parameters are accepted in the request body.
No parameters available.
Example Request Body
{
"model": "kwaivgi/kling-video-o3-pro/text-to-video"
}Output Schema
The API returns a prediction response with the generated output URLs.
Example Response
{
"id": "pred_abc123",
"status": "completed",
"model": "model-name",
"outputs": [
"https://storage.atlascloud.ai/outputs/result.mp4"
],
"metrics": {
"predict_time": 45.2
},
"created_at": "2025-01-01T00:00:00Z",
"completed_at": "2025-01-01T00:00:10Z"
}Atlas Cloud Skills
Atlas Cloud Skills integrates 300+ AI models directly into your AI coding assistant. One command to install, then use natural language to generate images, videos, and chat with LLMs.
Supported Clients
Install
npx skills add AtlasCloudAI/atlas-cloud-skillsSetup API Key
Get your API key from the Atlas Cloud dashboard and set it as an environment variable.
export ATLASCLOUD_API_KEY="your-api-key-here"Capabilities
Once installed, you can use natural language in your AI assistant to access all Atlas Cloud models.
MCP Server
Atlas Cloud MCP Server connects your IDE with 300+ AI models via the Model Context Protocol. Works with any MCP-compatible client.
Supported Clients
Install
npx -y atlascloud-mcpConfiguration
Add the following configuration to your IDE's MCP settings file.
{
"mcpServers": {
"atlascloud": {
"command": "npx",
"args": [
"-y",
"atlascloud-mcp"
],
"env": {
"ATLASCLOUD_API_KEY": "your-api-key-here"
}
}
}
}Available Tools
API Schema
Schema not availableNo examples available
Please log in to view request history
You need to be logged in to access your model request history.
Log InKling Video O3 Pro Text-to-Video
Kling Video O3 Pro is Kuaishou's most powerful text-to-video model, delivering top-tier visual quality and cinematic motion from text prompts alone. Describe any scene — the model generates premium video with flexible aspect ratios, adjustable duration from 3 to 15 seconds, and optional synchronized sound generation.
Why Choose This?
O3 Pro quality The highest visual fidelity and motion realism in the Kling family.
Flexible duration Generate videos from 3 to 15 seconds — any length you need.
Aspect ratio control Multiple aspect ratio options including 16:9, 9:16, 1:1, and more to fit any platform.
Sound generation Optional synchronized sound effects generated alongside the video.
Prompt Enhancer Built-in tool to automatically improve your motion descriptions for better results.
Parameters
| Parameter | Required | Description |
|---|---|---|
| prompt | Yes | Text description of the desired scene, motion, and action |
| aspect_ratio | No | Video aspect ratio (default: 16:9) |
| duration | No | Video length: 3–15 seconds (default: 5) |
| sound | No | Generate synchronized audio (default: disabled) |
How to Use
- Run — submit and download your video.
- Enable sound (optional) — generate synchronized audio with the video.
- Set duration — choose any length from 3 to 15 seconds.
- Choose aspect ratio — select the format that fits your platform (16:9 for landscape, 9:16 for vertical, etc.).
- Write your prompt — describe the scene, motion, camera movement, and mood in detail.
Best Use Cases
- Storytelling — Build narrative sequences with precise scene and mood control.
- Concept Visualization — Bring creative ideas to life before committing to production.
- Marketing & Ads — Generate polished promotional clips with synchronized sound effects.
- Social Media & Shorts — Produce vertical or landscape videos for any platform instantly.
- Cinematic Content — Create film-quality scenes with detailed motion and lighting from text alone.
Pro Tips
- Match aspect ratio to your target platform: 16:9 for YouTube, 9:16 for TikTok/Reels, 1:1 for feeds.
- Use shorter durations (3–5 s) for testing, longer (10–15 s) for final production.
- Enable sound for environmental audio like rain, city ambience, crowds, or music scenes.
- Try the Prompt Enhancer to automatically refine your descriptions for richer output.
- Use detailed, cinematic prompts for best results — include lighting, camera angles, and motion descriptions.
Notes
- Duration supports any value from 3 to 15 seconds.
- Prompt is the only required field.
Related Models
- Kling Video O3 Std Text-to-Video — Standard tier text-to-video at budget-friendly pricing.
- Kling Video O3 Pro Reference-to-Video — Create videos guided by reference images for consistent character and style control.
- Kling Video O3 Pro Video Edit — Edit existing videos with natural-language instructions.
- Kling Video O3 Pro Image-to-Video — Animate still images into premium video with O3 Pro quality.






