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

# Kling 3.0 Standard · Image to video

> Supports 15s & Native Audio, turning images into multi-shot videos with dialogue/ambience.

[← Kling](/api-documentation/ai-generation/models/kling)

**Model name:** `kling-video/v3/standard/image-to-video`\
**Generation type:** `image_to_video`\
**Endpoint:** [`POST /api/asset_generator/`](/api-reference/ai-generation/post-ai-generation)

## Pricing

| Duration | Credits |
| - | - |
| 3s | **4.0** |
| 4s | **5.5** |
| 5s | **6.5** |
| 6s | **8.0** |
| 7s | **9.0** |
| 8s | **10.5** |
| 9s | **11.5** |
| 10s | **13.0** |
| 11s | **14.0** |
| 12s | **15.5** |
| 13s | **16.5** |
| 14s | **18.0** |
| 15s | **19.0** |

Prices are per output. When a request asks for several outputs, the charge is this price times the number of outputs.

## Quick start

The example uses sample media from our CDN. Swap in publicly accessible URLs for your own files.

<CodeGroup>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://api.creatify.ai/api/asset_generator/ \
    --header 'Content-Type: application/json' \
    --header 'X-API-ID: your-api-id' \
    --header 'X-API-KEY: your-api-key' \
    --data '{
      "model_name": "kling-video/v3/standard/image-to-video",
      "input_params": {
        "prompt": "She looks up from her laptop and smiles at the camera.",
        "image_url": "https://d35ghwdno3nak3.cloudfront.net/tutorial/avatar-aurora/recommendation-4.jpg"
      }
    }'
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      "https://api.creatify.ai/api/asset_generator/",
      headers={"X-API-ID": "your-api-id", "X-API-KEY": "your-api-key"},
      json={
          "model_name": "kling-video/v3/standard/image-to-video",
          "input_params": {
              "prompt": "She looks up from her laptop and smiles at the camera.",
              "image_url": "https://d35ghwdno3nak3.cloudfront.net/tutorial/avatar-aurora/recommendation-4.jpg"
          },
      },
  )
  print(response.json()["id"])
  ```
</CodeGroup>

## Input parameters

Send these fields in `input_params`.

<ParamField body="prompt" type="string" required>
  Use @Image1 to reference the start frame, @Image2 to reference the end frame.

  Maximum characters: `2500`.
</ParamField>

<ParamField body="image_url" type="string" required>
  Image to use as the first frame of the video.

  Max file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s
</ParamField>

<ParamField body="duration" type="string" default={"5"}>
  Video duration in seconds.

  Allowed values: `"3"`, `"4"`, `"5"`, `"6"`, `"7"`, `"8"`, `"9"`, `"10"`, `"11"`, `"12"`, `"13"`, `"14"`, `"15"`.
</ParamField>

<ParamField body="elements" type="array">
  Elements (characters/objects) to include in the video. Each example can either be an image set (frontal + reference images) or a video. Reference in prompt as @Element1, @Element2, etc.

  Maximum items: `3`.
</ParamField>

<ParamField body="cfg_scale" type="number" default={0.5}>
  The CFG (Classifier Free Guidance) scale is a measure of how close you want,the model to stick to your prompt.

  Minimum: `0`.
  Maximum: `1`.
  Multiple of: `0.1`.
</ParamField>

<ParamField body="end_image_url" type="string">
  Image to use as the last frame of the video.

  Max file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s
</ParamField>

<ParamField body="generate_audio" type="boolean" default={true}>
  Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.
</ParamField>

<ParamField body="negative_prompt" type="string" default={"blur, distort, and low quality"}>
  Negative Prompt

  Maximum characters: `2500`.
</ParamField>

<Accordion title="Complete JSON schema">
  ```json theme={null}
  {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "required": [
      "prompt",
      "image_url"
    ],
    "properties": {
      "prompt": {
        "type": "string",
        "title": "Prompt",
        "maxLength": 2500,
        "description": "Use @Image1 to reference the start frame, @Image2 to reference the end frame."
      },
      "duration": {
        "enum": [
          "3",
          "4",
          "5",
          "6",
          "7",
          "8",
          "9",
          "10",
          "11",
          "12",
          "13",
          "14",
          "15"
        ],
        "type": "string",
        "title": "Duration",
        "default": "5",
        "description": "Video duration in seconds."
      },
      "elements": {
        "type": "array",
        "title": "Elements",
        "description": "Elements (characters/objects) to include in the video. Each example can either be an image set (frontal + reference images) or a video. Reference in prompt as @Element1, @Element2, etc.",
        "x-mention-prefix": "element",
        "maxItems": 3,
        "min_height": 300,
        "min_width": 300,
        "max_file_size": 10485760,
        "min_aspect_ratio": 0.4,
        "max_aspect_ratio": 2.5
      },
      "cfg_scale": {
        "type": "number",
        "title": "Cfg Scale",
        "default": 0.5,
        "maximum": 1,
        "minimum": 0,
        "multipleOf": 0.1,
        "description": "The CFG (Classifier Free Guidance) scale is a measure of how close you want,the model to stick to your prompt.",
        "x-advance-settings": true
      },
      "image_url": {
        "type": "string",
        "title": "Image Url",
        "timeout": 20,
        "min_width": 300,
        "x-ui-name": "start_image",
        "min_height": 300,
        "description": "Image to use as the first frame of the video.\n\nMax file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s",
        "max_file_size": 10485760,
        "max_aspect_ratio": 2.5,
        "min_aspect_ratio": 0.4
      },
      "end_image_url": {
        "type": "string",
        "title": "End Image Url",
        "timeout": 20,
        "min_width": 300,
        "x-ui-name": "end_image",
        "min_height": 300,
        "description": "Image to use as the last frame of the video.\n\nMax file size: 10.0MB, Min width: 300px, Min height: 300px, Min aspect ratio: 0.40, Max aspect ratio: 2.50, Timeout: 20.0s",
        "max_file_size": 10485760,
        "max_aspect_ratio": 2.5,
        "min_aspect_ratio": 0.4
      },
      "generate_audio": {
        "type": "boolean",
        "title": "Generate Audio",
        "default": true,
        "description": "Whether to generate native audio for the video. Supports Chinese and English voice output. Other languages are automatically translated to English. For English speech, use lowercase letters; for acronyms or proper nouns, use uppercase.",
        "x-advance-settings": true
      },
      "negative_prompt": {
        "type": "string",
        "title": "Negative Prompt",
        "default": "blur, distort, and low quality",
        "maxLength": 2500,
        "x-advance-settings": true
      }
    }
  }
  ```
</Accordion>

## Response

The request returns the task with `status: "initializing"`. Poll [GET /api/asset\_generator/\{id}/](/api-reference/ai-generation/get-ai-generation-) until `status` is `done` or `failed`, or pass a `webhook_url` to be notified. A finished task lists its files in `assets` and the credits it charged in `credits_used`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.