> ## Documentation Index
> Fetch the complete documentation index at: https://docs.toapis.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Kling v2.6 動画生成

> Generate videos with official Kling v2.6 using explicit reference-image and frame-role semantics

* Async processing mode, returns task ID for subsequent queries
* Supports text-to-video, image-to-video, explicit first/last frame control, and audio video
* Supports standard mode (720P) and professional mode (1080P)
* Professional mode supports automatic audio generation

## Authorization

<ParamField header="Authorization" type="string" required>
  All API endpoints require Bearer Token authentication.

  ```
  Authorization: Bearer YOUR_API_KEY
  ```
</ParamField>

## リクエストパラメータ

<ParamField body="model" type="string" required>
  Video generation model name, fixed as `kling-v2-6`.
</ParamField>

<ParamField body="prompt" type="string" required>
  Text prompt, maximum **2500 characters**.
</ParamField>

<ParamField body="mode" type="string" default="std">
  Generation mode.

  * `std` - standard mode (720P, silent video only)
  * `pro` - professional mode (1080P, supports automatic audio generation)
</ParamField>

<ParamField body="duration" type="integer" default="5">
  Video duration in seconds.

  Options: `5` or `10`
</ParamField>

<ParamField body="aspect_ratio" type="string" default="16:9">
  Video aspect ratio. Common values: `16:9`, `9:16`, `1:1`
</ParamField>

<ParamField body="reference_images" type="string[]">
  Normal reference images.

  * These images are treated as references only
  * They are **not** automatically converted into first/last frames
  * Use `image_with_roles` for explicit frame control
</ParamField>

<ParamField body="image_with_roles" type="object[]">
  Explicit image-role array for frame control and mixed inputs.

  <Expandable title="Show image_with_roles object fields">
    <ParamField body="url" type="string" required>
      Publicly accessible image URL.
    </ParamField>

    <ParamField body="role" type="string" required>
      Image role.

      Supported values:

      * `first_frame`
      * `last_frame`
      * `reference`
      * `reference_image`
    </ParamField>
  </Expandable>

  <Warning>
    `last_frame` is only sent when explicitly declared in `image_with_roles`. The system no longer infers the last frame from `reference_images[1]`.
  </Warning>
</ParamField>

<ParamField body="negative_prompt" type="string">
  Negative prompt to exclude unwanted content.
</ParamField>

<ParamField body="audio" type="boolean" default="false">
  Whether to automatically generate audio.

  <Warning>
    Available only in `mode: "pro"`.
  </Warning>
</ParamField>

<ParamField body="watermark" type="boolean">
  Whether to add watermark.
</ParamField>

## Input Rules

| Input shape                                                                    | Behavior          |
| ------------------------------------------------------------------------------ | ----------------- |
| `reference_images` only                                                        | Normal references |
| `image_with_roles` with only `first_frame` / `last_frame`                      | Frame control     |
| Both fields used together, or roles include both frame and reference semantics | Mixed mode        |

## Examples

### Text-to-Video

```json theme={null}
{
  "model": "kling-v2-6",
  "prompt": "A golden cat running on a sunlit meadow, slow motion, cinematic quality",
  "mode": "std",
  "duration": 5,
  "aspect_ratio": "16:9"
}
```

### Image Reference

```json theme={null}
{
  "model": "kling-v2-6",
  "prompt": "Animate the referenced portrait with a subtle smile",
  "reference_images": ["https://example.com/reference.jpg"],
  "mode": "std",
  "duration": 5
}
```

### First and Last Frame Control

```json theme={null}
{
  "model": "kling-v2-6",
  "prompt": "City timelapse transitioning from day to night",
  "image_with_roles": [
    { "url": "https://example.com/day-city.jpg", "role": "first_frame" },
    { "url": "https://example.com/night-city.jpg", "role": "last_frame" }
  ],
  "mode": "pro",
  "duration": 5
}
```

### Mixed Reference and Frame Input

```json theme={null}
{
  "model": "kling-v2-6",
  "prompt": "Keep the character identity while moving from one scene to another",
  "reference_images": ["https://example.com/character-reference.jpg"],
  "image_with_roles": [
    { "url": "https://example.com/start-scene.jpg", "role": "first_frame" },
    { "url": "https://example.com/end-scene.jpg", "role": "last_frame" }
  ],
  "mode": "pro",
  "duration": 5
}
```

### Pro Mode + Auto Audio

```json theme={null}
{
  "model": "kling-v2-6",
  "prompt": "Waves crashing against rocks, seagulls circling in the sky, lighthouse in the distance",
  "mode": "pro",
  "duration": 10,
  "audio": true,
  "aspect_ratio": "16:9"
}
```

<Note>
  Video generation is an async task. Use the [Get Video Task ステータス](../../tasks/video-status) endpoint to query progress and results.
</Note>
