
Kling v2.5 Turbo Pro Text-to-Video API by Kuaishou
Delivers high-speed text-to-video generation with cinematic motion precision and enhanced temporal stability.
INPUT
OUTPUT
IdleYour request will cost $0.06 per run. For $10 you can run this model approximately 166 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-v2.5-turbo-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-v2.5-turbo-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-v2.5-turbo-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 2.5 Turbo Pro (Text-to-Video)
Kling 2.5 Turbo Pro is an advanced text-to-video model that produces ultra-smooth motion, cinematic visuals, and accurate prompt adherence.
Its improved dynamic processing and text-to-motion control allow for seamless transitions while maintaining style fidelity across various looks.
What makes it different?
-
Enhanced multi-step instruction understanding A new text-and-timing controller processes multi-step prompts to transform static inputs into coherent, controllable narrative scenes.
-
High-motion quality and stability Better training and data balance create realistic dynamics, enabling quick and complex movements with fewer artifacts like jitter, tearing, or frame drops.
-
Faster inference Optimized pipelines reduce end-to-end delay, providing faster delivery of high-quality results without compromising visual fidelity.
-
Consistent style Enhanced style conditioning preserves the reference look (palette, lighting, brushwork, mood), ensuring frames stay consistent - even during dynamic scenes.
Designed for
- Marketing & Brand Teams – Produce style-consistent ads, feature demos, and campaign assets fast.
- Content Creators / YouTubers / Short-form Teams – Improve watch-through with stronger narrative flow and motion.
- Film/Animation Studios – Use for previz, technique exploration, and style studies with reliable dynamic consistency.
- Training & Education – Turn documents into clear, high-resolution explainer videos for scalable distribution.
Pricing
| Duration | Price |
|---|---|
| 5s | $0.35 |
| 10s | $0.70 |
Billing Rules
- Minimum charge: 5 seconds
- Per-second rate = (price per 5 seconds) ÷ 5
- Billed duration = video length in seconds (rounded up), with a 5-second minimum
- Total cost = billed duration × per-second rate (by output resolution)
How to use
-
Write the prompt – Specify subject, scene, actions, camera movement, and style keywords; include multi-step/causal logic if needed.
-
Choose aspect – Match output to your channel and quality targets.
-
Set duration – Help models understand how long of the result.
-
Set guidance_scale – Controls how strongly the model follows your prompt. The higher the value, the less creative freedom the model has.
-
Generate – Leverage accelerated inference to get a first pass quickly.
-
Review & iterate – Refine timing, angles, or style strength and re-render for final delivery (Set the seed).






