Kling Turbo (3.0 Turbo New API)
Channel type: Kling Turbo (62) Gateway path:
https://maasunion.com/kling/v1/turbo/...Official upstream:https://api-beijing.klingai.com(/text-to-video/{model},/image-to-video/{model},/tasks)
Overview
Kling 3.0 Turbo uses the Kling new API format: the endpoint path carries the model name, and the request body uses a three-part contents / settings / options structure; the response fields are data.id + data.status (not task_id).
| Item | Description |
|---|---|
| Model | Path carries kling-3.0-turbo |
| Supported capabilities | Text-to-Video, Image-to-Video |
| Create response | data.id (gateway public task ID) + data.status |
| Query response | data[].outputs[] |
| Success status | succeeded |
For differences from the v1 API, see Kling Gateway Overview - Two API Format Differences Comparison.
Authentication
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer {your_api_token} |
Content-Type | Required for POST | application/json |
Text-to-Video
POST https://maasunion.com/kling/v1/turbo/videos/text-to-video/kling-3.0-turbo
Official upstream: POST /text-to-video/kling-3.0-turbo
Request Body
{
"prompt": "A girl sat on the train, looking out the window.",
"settings": {
"duration": 3,
"resolution": "720p",
"aspect_ratio": "9:16"
},
"options": {
"callback_url": "https://xxx/callback",
"external_task_id": "",
"watermark_info": { "enabled": false }
}
}| Field | Type | Description |
|---|---|---|
prompt | string | Prompt. Supports multi-shot: 镜头 n,m,words; 镜头 n,m,words; |
settings.duration | number | Duration (seconds) |
settings.resolution | string | Resolution: 720p / 1080p |
settings.aspect_ratio | string | Aspect ratio: 16:9, 9:16, 1:1, etc. |
options.callback_url | string | Callback URL |
options.external_task_id | string | Custom task ID |
options.watermark_info.enabled | boolean | Whether to add a watermark |
Create Response
{
"code": 0,
"message": "string",
"request_id": "string",
"data": {
"id": "gateway_public_task_id",
"status": "submitted",
"create_time": 1781080778802,
"update_time": 1781080794151,
"external_id": "string"
}
}| Field | Description |
|---|---|
data.id | Gateway task ID, used for subsequent queries |
data.status | submitted / processing / succeeded / failed |
Image-to-Video
POST https://maasunion.com/kling/v1/turbo/videos/image-to-video/kling-3.0-turbo
Official upstream: POST /image-to-video/kling-3.0-turbo
Request Body
{
"contents": [
{ "type": "prompt", "text": "A girl sat on the train, looking out the window." },
{ "type": "first_frame", "url": "https://your-cdn.com/start-frame.jpg" }
],
"settings": {
"resolution": "1080p",
"duration": 10
},
"options": {
"callback_url": "https://xxx/callback",
"external_task_id": "",
"watermark_info": { "enabled": true }
}
}contents[].type | Description |
|---|---|
prompt | Prompt |
first_frame | First frame image (supports url / base64; last frame not supported yet) |
Images in
contentssupport URL or Base64. 3.0 Turbo supports multi-shot; in the prompt use the镜头 n,m,words; 镜头 n,m,words;format.
Query Task
Query by Task ID
GET https://maasunion.com/kling/v1/turbo/tasks/{task_id}
Official upstream: GET /tasks?external_task_ids={id}
curl --request GET \
--url "https://maasunion.com/kling/v1/turbo/tasks/{task_id}" \
--header "Authorization: Bearer {your_api_token}"Query Response
{
"code": 0,
"message": "string",
"request_id": "string",
"data": [
{
"id": "893605946402811985",
"status": "succeeded",
"message": "string",
"create_time": 1781080778802,
"update_time": 1781080794151,
"external_id": "string",
"outputs": [
{
"type": "video",
"id": "string",
"url": "string",
"watermark_url": "string",
"duration": "string"
}
],
"billing": [
{
"charge_type": "cash",
"amount": "string",
"package_type": "video"
}
]
}
]
}| Field | Description |
|---|---|
data[].status | submitted / processing / succeeded / failed |
data[].outputs[].url | Video download URL (valid for about 30 days) |
data[].outputs[].watermark_url | Watermarked video URL |
data[].billing | Billing information |
Query by Cursor Pagination
POST https://maasunion.com/kling/v1/turbo/tasks
Official upstream: POST /tasks
{
"start_time": "1781193600000",
"end_time": "1781516352968",
"cursor": "",
"limit": 500,
"filters": [
{ "key": "status", "values": ["succeeded"] },
{ "key": "product_type", "values": ["video"] }
]
}| Parameter | Description |
|---|---|
start_time / end_time | Time range (millisecond timestamps) |
cursor | Pagination cursor; empty for the first page |
limit | Number per page, max 500 |
filters | Filter conditions; key can be status, product_type, etc. |
Task Status
status | Meaning |
|---|---|
submitted | Submitted |
processing | Processing |
succeeded | Succeeded |
failed | Failed |
Note: the success status for the new API is
succeeded(the v1 API issucceed).
Error Handling
When code != 0, the request failed; message contains the specific reason. Common cases:
- The model name in the path is misspelled (should be
kling-3.0-turbo) contentsdoes not provide apromptor first frame image- Invalid token or insufficient balance
- Content moderation interception
For more general information, see Kling Gateway Overview.
How is this guide?