---
title: "Create a Kling video-to-audio task"
method: POST
path: "/kling/v1/audio/video-to-audio"
---

# Create a Kling video-to-audio task

`POST /kling/v1/audio/video-to-audio`

## Request

- Base URL: `https://api.deerapi.com`
- URL: `https://api.deerapi.com/kling/v1/audio/video-to-audio`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/deerapi/apis/text-to-audio-api/docs/kling/v1/audio/video-to-audio/post.ts> (a function with typed inputs; its response is checked against the schema)

Submit either a Kling `video_id` or an accessible `video_url`, then poll the returned task id through the generic Kling query route.

## Request body

- union
  - object
    - `external_task_id` string: Optional user-defined task ID for your own tracking. Does not replace the system-generated task ID. Must be unique per account.
    - `callback_url` string: Webhook URL for task status notifications. The server sends a callback when the task status changes.
    - `video_id` string, required: ID of a Kling-generated video. Only videos created within the last 30 days with a duration of 3–20 seconds are supported. Mutually exclusive with `video_url` — exactly one must be provided.
    - `video_url` string: Accessible URL of the source video. Accepted formats: MP4, MOV. Max 100 MB, 720p or 1080p resolution, duration 3–20 seconds. Mutually exclusive with `video_id` — exactly one must be provided.
  - object
    - `external_task_id` string: Optional user-defined task ID for your own tracking. Does not replace the system-generated task ID. Must be unique per account.
    - `callback_url` string: Webhook URL for task status notifications. The server sends a callback when the task status changes.
    - `video_id` string: ID of a Kling-generated video. Only videos created within the last 30 days with a duration of 3–20 seconds are supported. Mutually exclusive with `video_url` — exactly one must be provided.
    - `video_url` string, required: Accessible URL of the source video. Accepted formats: MP4, MOV. Max 100 MB, 720p or 1080p resolution, duration 3–20 seconds. Mutually exclusive with `video_id` — exactly one must be provided.

## Response `200`

Task accepted.

- object
  - `code` integer, required: Error code; specific error code definition
  - `message` string, required: Error message
  - `data` object, required
    - `task_id` string, required: Task ID, system-generated
    - `task_status` string, required: Task status, enum values: submitted, processing, succeed, failed
    - `created_at` integer, required: Task creation time, Unix timestamp, in ms
    - `updated_at` integer, required: Task update time, Unix timestamp, in ms

---

[API](https://skmtc.dev/deerapi/apis/text-to-audio-api.md) - [All operations](https://skmtc.dev/deerapi/apis/text-to-audio-api/llms.txt) - [OpenAPI document](https://skmtc.dev/deerapi/apis/text-to-audio-api/revisions/b6265ced74a1?raw)
