# Kling v2.5 Turbo Pro Image-to-Video — Atlas Cloud API

> Transforms stills into lifelike video clips at 2× faster speed while preserving fine texture and lighting consistency.

This is the machine-readable API reference for **Kling v2.5 Turbo Pro Image-to-Video** on Atlas Cloud,
a unified API platform for 400+ AI models across text, image, video, audio and 3D.

- **Model ID**: `kwaivgi/kling-v2.5-turbo-pro/image-to-video`
- **Built by**: Kuaishou
- **Modality**: Video
- **Model page**: https://www.atlascloud.ai/models/kwaivgi/kling-v2.5-turbo-pro/image-to-video
- **API key**: https://www.atlascloud.ai/console/api-keys
- **Docs**: https://www.atlascloud.ai/docs

## Pricing on Atlas Cloud

- $0.06 per second of generated video
- Pay-as-you-go. No minimum spend, no subscription required.

> **These are the authoritative Atlas Cloud rates for this model.** Any price that
> appears in the vendor description further down refers to a different platform or
> a different model variant and does not apply here.

## Use this model from an AI agent

Atlas Cloud ships three first-party integration surfaces. All three authenticate
with the same API key via the `ATLASCLOUD_API_KEY` environment variable.

### MCP server

The official MCP server (`atlascloud-mcp`) exposes this model to any
MCP-compatible host — Claude Code, OpenAI Codex, Cursor, Gemini CLI, Goose,
Claude Desktop. One-line install:

```bash
# Claude Code
claude mcp add atlascloud -- npx -y atlascloud-mcp

# OpenAI Codex CLI
codex mcp add atlascloud -- npx -y atlascloud-mcp

# Gemini CLI
gemini mcp add atlascloud -- npx -y atlascloud-mcp

export ATLASCLOUD_API_KEY="your-api-key"
```

Then ask in plain English; the agent calls `atlas_generate_video` with `model: "kwaivgi/kling-v2.5-turbo-pro/image-to-video"`.
The server fetches each model's schema and validates parameters before submitting,
so invalid requests fail fast without spending credits.

MCP docs: https://www.atlascloud.ai/docs/mcp-server

### Agent Skills

`atlas-cloud-skills` is a portable skill package (API reference, code templates in
Python / Node.js / cURL, model IDs with pricing) for Claude Code, Cursor, Codex and
12+ other agents:

```bash
npx skills add AtlasCloudAI/atlas-cloud-skills
export ATLASCLOUD_API_KEY="your-api-key"
```

Skills docs: https://www.atlascloud.ai/docs/skills

### CLI

The `atlas` binary runs Atlas Cloud from a terminal or CI script. Async media jobs
are polled and downloaded automatically (use `--no-download` when a script only
needs the output URLs):

```bash
# Install (Homebrew, npm, or shell installer)
brew install AtlasCloudAI/tap/atlascloud
# npm install -g atlascloud-cli
# curl -fsSL https://raw.githubusercontent.com/AtlasCloudAI/cli/main/install.sh | sh

atlas auth login
atlas generate video kwaivgi/kling-v2.5-turbo-pro/image-to-video -p "Your prompt here"
```

CLI docs: https://www.atlascloud.ai/docs/cli

## HTTP API reference

- **Submit endpoint (POST)**: `https://api.atlascloud.ai/api/v1/model/generateVideo` — start an async generation; returns a `prediction_id`
- **Poll endpoint (GET)**: `https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}` — poll this until the prediction finishes
- **Model ID**: `kwaivgi/kling-v2.5-turbo-pro/image-to-video`


## API Information

This model can be used via our HTTP API or more conveniently via our client libraries.
See the input and output schema below, as well as the usage examples.


### Input Schema

The API accepts the following input parameters:

- **`model`** (`string`, _required_):
  model name
  - Default: `"kwaivgi/kling-v2.5-turbo-pro/image-to-video"`

- **`image`** (`string`, _required_):
  First frame of the video; Supported image formats include.jpg/.jpeg/.png; The image file size cannot exceed 10MB, and the image resolution should not be less than 300*300px, and the aspect ratio of the image should be between 1:2.5 ~ 2.5:1.

- **`last_image`** (`string`, _optional_):
  The end image for generating the output.

- **`prompt`** (`string`, _required_):
  The positive prompt for the generation. max length 2500

- **`negative_prompt`** (`string`, _optional_):
  The negative prompt for the generation. max length 2500

- **`guidance_scale`** (`number`, _optional_):
  The guidance scale to use for the generation.
  - Default: `0.5`
  - Min: 0
  - Max: 1

- **`duration`** (`integer`, _optional_):
  The duration of the generated media in seconds.
  - Default: `5`
  - Options: 5, 10



**Required Parameters Example**:

```json
{
  "model": "kwaivgi/kling-v2.5-turbo-pro/image-to-video",
  "prompt": "",
  "image": ""
}
```


**Full Example**:

```json
{
  "model": "kwaivgi/kling-v2.5-turbo-pro/image-to-video",
  "image": "",
  "last_image": "",
  "prompt": "",
  "negative_prompt": "",
  "guidance_scale": 0.5,
  "duration": 5
}
```


### Output Schema

The API returns the following output format:


- **`created_at`** (`string`, _optional_):
  ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”).

- **`has_nsfw_contents`** (`array[boolean]`, _optional_):
  Array of boolean values indicating NSFW detection for each output.

- **`id`** (`string`, _optional_):
  Unique identifier for the prediction, the ID of the prediction to get.

- **`model`** (`string`, _optional_):
  Model ID used for the prediction.

- **`outputs`** (`array[string]`, _optional_):
  Array of URLs to the generated content (empty when status is not completed).

- **`status`** (`string`, _optional_):
  Status of the task: created, processing, completed, or failed.

- **`urls`** (`object`, _optional_):
  Object containing related API endpoints.



**Example Response**:

```json
{
  "created_at": "",
  "has_nsfw_contents": [],
  "id": "",
  "model": "",
  "outputs": [
    ""
  ],
  "status": "",
  "urls": {}
}
```


## Usage Examples

### cURL

```bash
# Step 1: Start generation (async)
curl -X POST "https://api.atlascloud.ai/api/v1/model/generateVideo" \
  -H "Authorization: Bearer $ATLASCLOUD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "kwaivgi/kling-v2.5-turbo-pro/image-to-video",
  "image": "",
  "last_image": "",
  "prompt": "",
  "negative_prompt": "",
  "guidance_scale": 0.5,
  "duration": 5
}'

# Response will contain: {"code": 200, "data": {"id": "prediction_id", "status": "processing"}}

# Step 2: Poll for result (replace {prediction_id} with the id returned above)
curl -X GET "https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}" \
  -H "Authorization: Bearer $ATLASCLOUD_API_KEY"

# Keep polling until status is "completed", "succeeded" or "failed"
# When completed, outputs will contain the generated content URL(s)
```

## Additional Resources

### Documentation

- [Model Playground](https://www.atlascloud.ai/models/kwaivgi/kling-v2.5-turbo-pro/image-to-video)

## About this model

_Vendor-supplied description. Any pricing or endpoint mentioned below refers to_
_other platforms — use the Atlas Cloud values above._

### Kling 2.5 Turbo Pro (Image-to-Video)

**Kling 2.5 Turbo Pro** turns a single image and a text prompt into cinematic video with fluid motion and accurate intent. A new text-timing engine, improved dynamics, and faster inference enable high-speed action and complex camera moves with stable frames, while refined conditioning preserves palette, lighting, and mood.

This version additionally supports **first–last frame control**: you can specify both a starting image and an ending image, and the model will animate a smooth transformation between them.

#### What makes it stand out?

*   **Better prompt understanding**
    Precisely parses multi-step, causal instructions and turns a single image and prompt into coherent, well-paced shots that stay true to your creative idea.

*   **More realistic look and greater stability**
    Improved dynamics and balanced training data closely mimic real-world motion, even at high speeds and with complex camera moves. Playback is smooth with fewer jitters, tears, and dropped details.

*   **Detail and style consistency**
    Refined image conditioning maintains color, lighting, brushwork, and mood, keeping frames visually unified even during aggressive motion or transitions.

*   **First–last frame animation**
    When you provide both an initial image and a `last_image`, Kling 2.5 Turbo Pro treats them as keyframes and generates a video that naturally evolves from the first to the last frame.

#### Inputs

*   **`image`** (required)
    The starting frame of your video. Composition, style, and subject are primarily taken from this image.

*   **`last_image`** (optional)
    An optional target frame. If provided, the model interpolates between `image` and `last_image`, creating a smooth visual evolution from start to end.

*   **`prompt`** (required)
    Text description of the scene, actions, camera movement, and style.

_(Description truncated. Full text on the model page.)_

---

Atlas Cloud — one API for 400+ AI models. Model page: https://www.atlascloud.ai/models/kwaivgi/kling-v2.5-turbo-pro/image-to-video · Docs: https://www.atlascloud.ai/docs
