---
title: "Create an AIHubMix video task"
method: POST
path: "/ai/v1/videos"
tags: ["AIHubMix Unified API"]
---

# Create an AIHubMix video task

`POST /ai/v1/videos`

## Request

- Base URL: `https://aihubmix.com`
- URL: `https://aihubmix.com/ai/v1/videos`
- Auth: HTTP bearer

Creates a video task with the AIHubMix native media protocol. Video generation is always asynchronous.

## Request body

- AIHubMixVideoCreateRequest
  - `model` string, required: Video model ID.
  - `prompt` string, required
  - `duration` integer, nullable: Video duration in seconds. Allowed values are model-specific.
  - `aspect_ratio` string, nullable
  - `resolution` '480p' | '720p' | '1080p' | '1K' | '2K' | '4K', nullable
  - `size` string, nullable
  - `seed` integer, nullable
  - `input_references` AIHubMixMediaReference[], nullable
    - `type` 'image_url' | 'video_url' | 'audio_url', required
    - `url` string, uri, required
  - `frame_images` AIHubMixFrameImage[], nullable
    - `frame_type` 'first_frame' | 'last_frame', required
    - `image_url` object, required
      - `url` string, uri, required
  - `generate_audio` boolean, nullable
  - `webhook_url` string, uri
  - `webhook_events_filter` string[]
  - `extra` object, nullable

## Response `200`

Video task

- AIHubMixMediaTask
  - `id` string, required: Platform task ID.
  - `object` 'image' | 'video', required
  - `model` string, required
  - `status` 'pending' | 'in_progress' | 'completed' | 'failed' | 'cancelled', required: Current task state. Completed, failed, and cancelled are terminal states.
  - `output` AIHubMixTaskArtifact[], required
    - `index` integer, required: Zero-based result order.
    - `result_id` string, nullable: Result ID exposed by unified task snapshots. Media task objects may omit it.
    - `type` 'file', required
    - `content_type` string, nullable
    - `content_url` string, nullable: Authenticated result download URL.
    - `b64_json` string, nullable: Base64-encoded image result when requested.
  - `error` AIHubMixTaskError, nullable, required
    - `code` string, required: Stable task error code.
    - `message` string, required: Human-readable error message.
    - `upstream_detail` unknown
  - `created_at` integer, required: Unix timestamp in seconds.
  - `completed_at` integer, nullable, required
  - `expires_at` integer, nullable, required: Artifact expiry time in Unix seconds; may be null before completion.

## Other responses

- `default`: AIHubMix task, validation, authentication, routing, artifact, or upstream error.

## Changes

- **2026-11-03** `0dfd8d5c3b27`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/aihubmix/apis/aihubmix-gateway-api/changes/ai/v1/videos/post.md)

---

[API](https://skmtc.dev/aihubmix/apis/aihubmix-gateway-api.md) - [All operations](https://skmtc.dev/aihubmix/apis/aihubmix-gateway-api/llms.txt) - [OpenAPI document](https://skmtc.dev/aihubmix/apis/aihubmix-gateway-api/revisions/0dfd8d5c3b27?raw)
