---
title: "/v1/videos/{video_id}"
method: GET
path: "/v1/videos/{video_id}"
tags: ["OpenAI · Videos"]
---

# /v1/videos/{video_id}

`GET /v1/videos/{video_id}`

## Request

- Base URL: `https://aihubmix.com`
- URL: `https://aihubmix.com/v1/videos/{video_id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/inferera/apis/aihubmix-gateway-api/docs/v1/videos/:video_id/get.ts> (a function with typed inputs; its response is checked against the schema)

Fetch the latest metadata for a generated video.

## Path parameters

- `video_id` string, required

## Response `200`

Success

- VideoResource: Structured information describing a generated video job.
  - `id` string, required: Unique identifier for the video job.
  - `object` 'video', required: The object type, which is always `video`.
  - `model` union, required
    - string
    - 'sora-2' | 'sora-2-pro' | 'sora-2-2025-10-06' | 'sora-2-pro-2025-10-06' | 'sora-2-2025-12-08'
  - `status` 'queued' | 'in_progress' | 'completed' | 'failed', required
  - `progress` integer, required: Approximate completion percentage for the generation task.
  - `created_at` integer, required: Unix timestamp (seconds) for when the job was created.
  - `completed_at` integer, nullable, required: Unix timestamp (seconds) for when the job completed, if finished.
  - `expires_at` integer, nullable, required: Unix timestamp (seconds) for when the downloadable assets expire, if set.
  - `prompt` string, nullable, required: The prompt that was used to generate the video.
  - `size` '720x1280' | '1280x720' | '1024x1792' | '1792x1024', required
  - `seconds` string, required: Duration of the generated clip in seconds. For extensions, this is the stitched total duration.
  - `remixed_from_video_id` string, nullable, required: Identifier of the source video if this video is a remix.
  - `error` Error2, required: An error that occurred while generating the response.
    - `code` string, required: A machine-readable error code that was returned.
    - `message` string, required: A human-readable description of the error that was returned.

## Other responses

- `400`: Invalid request
- `401`: Authentication failed
- `403`: Permission denied
- `404`: Not found
- `429`: Rate limited
- `5XX`: Server / upstream error

---

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