⌘K

Kirin V3 Omni Video

kirin_v3_omni_video

Kirin V3 Omni Video multimodal video generation interface, supports text, image, video and custom elements as multimodal inputs.

API Tips

When using video reference capability, only 3-10 seconds are supported

Authentication

authorization string required

All APIs require authentication via Bearer Token.

Get API Key:

Visit API Key Management Page to get your API Key.

Usage:

Add to request header:

Authorization: Bearer YOUR_API_KEY

Parameters

model string required

Model ID to use for the request.

Value: kirin_v3_omni_video


multi_shot boolean

Whether to generate multi-shot video

When this parameter is true, the prompt parameter is invalid

When this parameter is false, the shot_type and multi_prompt parameters are invalid

Default: false


shot_type string

Shot type

When multi_shot parameter is true, this parameter is required

Options: customize


prompt string

Video generation prompt, can include positive and negative descriptions. These prompts can be templated to meet different video generation needs

Video O3 model can achieve various capabilities through Prompt with subjects, images, videos and other content:

  1. Use <<<>>> format to specify a subject, image, or video, e.g., <<<element_1>>>, <<<image_1>>>, <<<video_1>>>

Max 2500 characters

When multi_shot parameter is false, this parameter cannot be empty


multi_prompt array

Multi-shot information, such as prompts and durations

Define shot sequence and corresponding prompts and durations via index, prompt, duration parameters:

  • Supports up to 6 shots, minimum 1 shot
  • Max length of each shot-related content does not exceed 512
  • Duration of each shot is not greater than the total duration of the current task, and not less than 1
  • Sum of durations of all shots equals the total duration of the current task

Format as key:value pairs:

"multi_prompt": [
  {
    "index": int,
    "prompt": "string",
    "duration": "5"
  },
  {
    "index": int,
    "prompt": "string",
    "duration": "5"
  }
]

When multi_shot parameter is true and shot_type parameter is customize, this parameter cannot be empty


image_list array

Reference image list, including element, scene, style reference images. Can also be used as first or last frame for video generation

When used as first or last frame for video generation:

  • Use type parameter to define whether image is first or last frame: first_frame for first frame, end_frame for last frame
  • Currently does not support setting only end frame; when end frame exists, first frame must also exist
  • When generating video with first/last frame, video editing function cannot be used

Supports Base64 encoded image or image URL (ensure accessibility)

Image requirements:
Format: .jpg, .jpeg, .png
File size: max 10MB
Dimensions: min 300px for width and height
Aspect ratio: between 1:2.5 ~ 2.5:1

Quantity limits:
With reference video: image count + element count ≤ 4
Without reference video: image count + element count ≤ 7
When image count exceeds 2, end frame setting is not supported

image_url parameter value cannot be empty

image_url string

Image URL or Base64 data

type string

Image type

Options: first_frame, end_frame


element_list array

Subject reference list, configured based on subject ID from subject library

To create a subject, refer to: kirin_custom_elements

Format as key:value pairs:

"element_list": [
  {
    "element_id": long
  },
  {
    "element_id": long
  }
]

Quantity limits:
When using first frame video generation or first and last frame video generation, max 3 subjects supported
With reference video: image count + element count ≤ 4, and video role subjects are not supported
Without reference video: image count + element count ≤ 7

Subjects are divided into video custom subjects (video role subjects) and image custom subjects (multi-image subjects), with different applicable scopes, please distinguish

element_id integer

Subject ID from subject library


video_list array

Reference video, obtained via URL. Can be used as feature reference video or video to edit, defaults to video to edit. Can optionally keep original audio

  • Use refer_type to distinguish reference video type: feature for feature reference video, base for video to edit
  • When reference video is video to edit, cannot define first/last frame
  • Use keep_original_sound to choose whether to keep original audio: yes to keep, no to discard; this parameter also applies to feature reference video (feature)

When there is a reference video, sound parameter value can only be off

Format as key:value pairs:

"video_list": [
  {
    "video_url": "video_url",
    "refer_type": "base",
    "keep_original_sound": "yes"
  }
]

Video requirements:
Format: MP4, MOV only
Duration: min 3 seconds, upper limit related to model version
Dimensions: between 720px (inclusive) and 2160px (inclusive)
Frame rate: 24-60fps, output will be 24fps
Max 1 video, size max 200MB

video_url parameter value cannot be empty

video_url string required

Video URL, supports MP4/MOV format

refer_type string

Reference video type

Options: feature, base

Default: base

keep_original_sound string

Whether to keep original audio

Options: yes, no


sound string

Whether to generate sound when generating video

Only V2.6 and later model versions support this parameter

Options: on, off

Default: off


mode string

Video generation mode

std: Standard mode (standard), basic mode, generates 720P video, cost-effective
pro: Professional mode (high quality), high performance mode, generates 1080P video, better video quality

Options: std, pro

Default: pro


aspect_ratio string

Video aspect ratio (width:height)

Required when not using first frame reference or video editing function

Options: 16:9, 9:16, 1:1


duration string

Video duration in seconds

When using video editing function (refer_type: base), output duration matches input video duration, this parameter is invalid; billing is based on input video duration rounded to nearest second

Options: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15

Default: 5


watermark_info array

Whether to generate results with watermarks simultaneously

Defined via the enabled parameter, specific format as follows:

"watermark_info": {
  "enabled": boolean // true for generation, false for no generation
}

Custom watermarks are not currently supported


callback_url string

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


external_task_id string

Custom task ID

User-defined task ID, will not overwrite the system-generated task ID when provided, but supports task query via this ID

Please note that uniqueness must be ensured under a single user


Polling

Since video generation takes time, you need to poll the task status after creation

The initial response returns the task ID and initial status. The actual generation results must be obtained through polling the task status endpoint

Response Format

error object

Error information. Only present when status is failed.

code string

Error code

error_message string

Detailed error message


output array

Generation results. Only present when status is completed.

content array

List of generated content

type string

Resource type, e.g., video, image

url string

Generated content URL

duration number

Video duration

jobId string

Remote job ID


usage object

Usage statistics. Only present when status is completed.

cost string

Total cost in USD

discount number

Discount amount


metadata object

Metadata information


Error Codes

Error CodeDescription
006001094Task resource insufficient
006001095Task response error
006001099Task creation error