---
title: "Kling AI Video Extension API Reference"
aliases: [kling-video-extend, kling-extend-api]
tags: [kling, api, video, extension, ai-video]
sources: [raw/Kling AI Next-Gen AI Video & AI Image Generator 6.md]
created: 2026-04-26
updated: 2026-04-26
---

## Overview

The Video Extension API appends additional footage to an existing Kling-generated video. Each extension adds 4–5 seconds; a video can be extended repeatedly up to a **3-minute total cap**.

- Base URL (Singapore): `https://api-singapore.klingai.com`
- Auth: `Authorization: Bearer <token>`

---

## Create Extension Task

`POST /v1/videos/video-extend`

```bash
curl --request POST \
  --url https://api-singapore.klingai.com/v1/videos/video-extend \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "prompt": "A puppy appears",
    "video_id": "743211632612511839",
    "negative_prompt": "",
    "callback_url": ""
  }'
```

### Request Body

| Field | Type | Required | Notes |
|-------|------|----------|-------|
| `video_id` | string | Yes | Source video ID (text-to-video, image-to-video, or prior extension). Max total 3 min. |
| `prompt` | string | No | Up to 2500 characters |
| `negative_prompt` | string | No | Up to 2500 characters |
| `cfg_scale` | number | No | Prompt reference strength, range [0, 1] |
| `watermark_info` | object | No | `{"enabled": boolean}` — generate watermarked output alongside clean output |
| `callback_url` | string | No | Server-push URL for status changes |
| `external_task_id` | string | No | User-defined ID (must be unique per user) |

### Supported Source Videos

- Generated by **V1.0, V1.5, or V1.6** models only
- Source videos expire **30 days** after generation — extension not possible after that

### Response (200)

```json
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "task_id": "string",
    "task_status": "submitted | processing | succeed | failed",
    "task_info": { "external_task_id": "string" },
    "created_at": 1722769557708,
    "updated_at": 1722769557708
  }
}
```

---

## Query Single Task

`GET /v1/videos/video-extend/{task_id}`

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

Use either `task_id` or `external_task_id` as the path parameter.

### Response — Notable Fields

| Field | Notes |
|-------|-------|
| `task_info.parent_video.id` | Original video ID before extension |
| `task_info.parent_video.duration` | Original duration (seconds) |
| `task_result.videos[].id` | New extended video ID (cleared after 30 days) |
| `task_result.videos[].url` | Download URL (expires 30 days) |
| `task_result.videos[].duration` | **Total** video duration after extension |
| `final_unit_deduction` | Credits consumed by this task |

---

## Query Task List

`GET /v1/videos/video-extend?pageNum=1&pageSize=30`

### Query Parameters

| Param | Range | Notes |
|-------|-------|-------|
| `pageNum` | [1, 1000] | Page number |
| `pageSize` | [1, 500] | Items per page |

Response body is the same schema as single-task, wrapped in a `data` array.

---

## Key Takeaways

- **+4–5 s per call** — each extension appends roughly 4–5 seconds to the source video
- **3-minute hard cap** — total extended duration cannot exceed 3 minutes
- **Model locked** — extension inherits the model and mode of the source video; you cannot switch
- **30-day expiry** — both source and extended videos are deleted after 30 days; download immediately
- **Chain extensions** — you can feed the extended video's ID back as `video_id` to extend further
- **Supported sources** — text-to-video, image-to-video, and prior extension outputs (V1.0/1.5/1.6 only)

---

## Related

- [[wiki/web-agency/kling-text-to-video-api|Kling Text-to-Video API]] — generate the source video
- [[wiki/web-agency/kling-image-to-video-api|Kling Image-to-Video API]] — animate a still image, then extend
- [[wiki/web-agency/kling-multi-image-to-video-api|Kling Multi-Image-to-Video API]] — composite sources you may want to extend
- [[wiki/web-agency/kling-motion-control-api|Kling Motion Control API]] — pose-driven video generation

---

## Sources

- `raw/Kling AI Next-Gen AI Video & AI Image Generator 6.md`
- Official docs: `https://kling.ai/document-api/apiReference/model/videoExtension`
