---
title: "Kling AI: Next-Gen AI Video & AI Image Generator"
source: "https://kling.ai/document-api/apiReference/model/multiImageToVideo"
author:
published:
created: 2026-04-24
description:
tags:
  - "clippings"
---
## Create Task

POST `/v1/videos/multi-image2video`

```bash
curl --request POST \
  --url https://api-singapore.klingai.com/v1/videos/multi-image2video \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "model_name": "kling-v1-6",
    "image_list": [
      { "image": "https://p1-kling.klingai.com/kcdn/cdn-kcdn112452/kling-qa-test/dog.png" },
      { "image": "https://p1-kling.klingai.com/kcdn/cdn-kcdn112452/kling-qa-test/dog_cloth.png" }
    ],
    "prompt": "A white Bichon Frise wearing a red Northeast-style floral cotton jacket, licking its paw",
    "negative_prompt": "",
    "mode": "pro",
    "duration": "5",
    "aspect_ratio": "16:9",
    "callback_url": "",
    "external_task_id": ""
  }'
```

200

```json
{
  "code": 0, // Error code; Specific definitions can be found in "Error Code"
  "message": "string", // Error message
  "request_id": "string", // Request ID, generated by the system, used to track requests and troubleshoot problems
  "data": {
    "task_id": "string", // Task ID, generated by the system
    "task_status": "string", // Task status, Enum values: submitted, processing, succeed, failed
    "created_at": 1722769557708, // Task creation time, Unix timestamp, unit: ms
    "updated_at": 1722769557708 //Task update time, Unix timestamp, unit: ms
  }
}
```

Generate video from multiple reference images (elements).

### Request Header

Data Exchange Format

AuthorizationstringRequired

Authentication information, refer to API authentication

### Request Body

Model Name

Enum values：kling-v1-6

image\_listarrayRequired

Reference Image List

- Support up to 4 images, load with key:value format as follows:

```json
"image_list":[
  { "image":"image_url" },
  { "image":"image_url" },
  { "image":"image_url" },
  { "image":"image_url" }
]
```

- Please directly upload the image with selected subject since there is no cropping logic on the API side

- Supports image input as either Base64-encoded string or URL (ensure the URL is publicly accessible)

- Important: When using Base64, do NOT add any prefix like `data:image/png;base64,`. Submit only the raw Base64 string.

- Correct Base64 format:

```
iVBORw0KGgoAAAANSUhEUgAAAAUA...
```

- Incorrect Base64 format (with data: prefix):

```
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...
```

- Supported image formats:.jpg /.jpeg /.png

- Image file size must not exceed 10MB. Image dimensions must be at least 300px. Aspect ratio must be between 1:2.5 and 2.5:1

▾Hide child attributes

imagestringRequired

Image URL or Base64 string

promptstringRequired

Positive text prompt

- Cannot exceed 2500 characters

negative\_promptstringOptional

Negative text prompt

- Cannot exceed 2500 characters

Video generation mode

Enum values：stdpro

- std: Standard Mode, which is cost-effective

- pro: Professional Mode, generates higher quality video output

Different model versions and video modes have different support ranges. For details, see [Capability Map](https://kling.ai/document-api/apiReference/model/videoModels)

Video Length, unit: s (seconds)

Enum values：510

The aspect ratio of the generated video frame (width:height)

Enum values：16:99:161:1

watermark\_infoobjectOptional

Whether to generate watermarked results simultaneously

- Defined by the enabled parameter, format:

```json
"watermark_info": { "enabled": boolean }
```

- true: generate watermarked result, false: do not generate

- Custom watermarks are not currently supported

callback\_urlstringOptional

The callback notification address for the result of this task. If configured, the server will actively notify when the task status changes

- The specific message schema of the notification can be found in [Callback Protocol](https://kling.ai/document-api/apiReference/callbackProtocol)

external\_task\_idstringOptional

Customized Task ID

- User-defined task ID. It will not override the system-generated task ID, but supports querying tasks by this ID

- Please note that it must be unique for each user

---

## Query Task (Single)

GET `/v1/videos/multi-image2video/{id}`

```bash
curl --request GET \
  --url https://api-singapore.klingai.com/v1/videos/multi-image2video/{task_id} \
  --header 'Authorization: Bearer <token>'
```

200

```json
{
  "code": 0, // Error code; Specific definitions can be found in "Error Code"
  "message": "string", // Error message
  "request_id": "string", // Request ID, generated by the system, used to track requests and troubleshoot problems
  "data": {
    "task_id": "string", // Task ID, generated by the system
    "task_status": "string", // Task status, Enum values: submitted, processing, succeed, failed
    "task_status_msg": "string", // Task status message, displays failure reason when task fails (such as content moderation triggers)
    "task_info": { //Task creation parameters
      "external_task_id": "string" //User-defined task ID
    },
    "task_result": {
      "videos": [
        {
          "id": "string", // Generated video ID; globally unique
          "url": "string", // URL for generating videos (Please note that for security purposes, generated images/videos will be deleted after 30 days. Please save them promptly.)
          "watermark_url": "string", // Watermarked video download URL, anti-hotlinking format
          "duration": "string" //Total video duration, unit: s (seconds)
        }
      ]
    },
    "watermark_info": {
      "enabled": boolean
    },
    "final_unit_deduction": "string", // Final unit deduction for the task
    "created_at": 1722769557708, // Task creation time, Unix timestamp, unit: ms
    "updated_at": 1722769557708 //Task update time, Unix timestamp, unit: ms
  }
}
```

### Request Header

Data Exchange Format

AuthorizationstringRequired

Authentication information, refer to API authentication

### Path Parameters

task\_idstringOptional

Task ID for Multi-Image to Video

- Request path parameter, fill the value directly in the request path

- You can choose to query by external\_task\_id or task\_id

external\_task\_idstringOptional

Customized Task ID for Multi-Image to Video

- Request path parameter, fill the value directly in the request path

- The external\_task\_id filled in when creating the task. You can choose to query by external\_task\_id or task\_id

---

## Query Task (List)

GET `/v1/videos/multi-image2video`

```bash
curl --request GET \
  --url 'https://api-singapore.klingai.com/v1/videos/multi-image2video?pageNum=1&pageSize=30' \
  --header 'Authorization: Bearer <token>'
```

200

```json
{
  "code": 0, // Error code; Specific definitions can be found in "Error Code"
  "message": "string", // Error message
  "request_id": "string", // Request ID, generated by the system, used to track requests and troubleshoot problems
  "data": [
    {
      "task_id": "string", // Task ID, generated by the system
      "task_status": "string", // Task status, Enum values: submitted, processing, succeed, failed
      "task_status_msg": "string", // Task status message, displays failure reason when task fails (such as content moderation triggers)
      "task_info": { //Task creation parameters
        "external_task_id": "string" //User-defined task ID
      },
      "task_result": {
        "videos": [
          {
            "id": "string", // Generated video ID; globally unique
            "url": "string", // URL for generating videos (Please note that for security purposes, generated images/videos will be deleted after 30 days. Please save them promptly.)
            "watermark_url": "string", // Watermarked video download URL, anti-hotlinking format
            "duration": "string" //Total video duration, unit: s (seconds)
          }
        ]
      },
      "watermark_info": {
        "enabled": boolean
      },
      "final_unit_deduction": "string", // Final unit deduction for the task
      "created_at": 1722769557708, // Task creation time, Unix timestamp, unit: ms
      "updated_at": 1722769557708 //Task update time, Unix timestamp, unit: ms
    }
  ]
}
```

### Request Header

Data Exchange Format

AuthorizationstringRequired

Authentication information, refer to API authentication

### Query Parameters

Page number

- Value range: \[1, 1000\]

Number of items per page

- Value range: \[1, 500\]