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

# Kling-o1 Reference to Video

Kling Omni Video O1 reference-to-video generation uses character, prop, or scene references to generate creative videos from multiple perspectives. It extracts subject features and creates new video content while maintaining frame-to-frame consistency.

<Tip>
  This is an **async** API that only returns the task\_id of the async task. Use the task\_id to call the [Get Async Task Result API](/docs/models/reference-get-async-task-result) to retrieve the generated result.
</Tip>

## Request Headers

<ParamField header="Content-Type" type="string" required={true}>
  Enum: `application/json`
</ParamField>

<ParamField header="Authorization" type="string" required={true}>
  Bearer authentication format: Bearer \{\{API Key}}.
</ParamField>

## Request Body

<ParamField body="video" type="string">
  Video URL.
</ParamField>

<ParamField body="images" type="array" default="[]">
  Reference images containing elements, scenes, styles, etc. Up to 7 images.

  Array length: 0 - 7
</ParamField>

<ParamField body="prompt" type="string" required={true}>
  Positive prompt.
</ParamField>

<ParamField body="duration" type="integer" default={5}>
  Duration of the generated media in seconds.

  Possible values: `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`
</ParamField>

<ParamField body="aspect_ratio" type="string" default="16:9">
  Aspect ratio of the generated video.

  Possible values: `16:9`, `9:16`, `1:1`
</ParamField>

<ParamField body="keep_original_sound" type="boolean" default={true}>
  Whether to keep the original audio from the video.
</ParamField>

## Response

<ResponseField name="task_id" type="string" required={true}>
  Use the task\_id to call the [Get Async Task Result API](/docs/models/reference-get-async-task-result) to retrieve the generated output.
</ResponseField>
