---
title: "List HyperFrames Renders"
method: GET
path: "/v3/hyperframes/renders"
tags: ["HyperFrames"]
---

# List HyperFrames Renders

`GET /v3/hyperframes/renders`

## Request

- Base URL: `https://api.heygen.com`
- URL: `https://api.heygen.com/v3/hyperframes/renders`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Returns a cursor-paginated list of HyperFrames renders in the account, newest first.

## Query parameters

- `limit` integer
- `token` string

## Response `200`

Successful response

- object
  - `data` HyperframesRenderDetail[]
    - `render_id` string, required: Unique render identifier.
    - `status` 'queued' | 'rendering' | 'completed' | 'failed', required: Lifecycle status of a HyperFrames render.
    - `title` string, nullable: Caller-supplied free-text label.
    - `callback_id` string, nullable: Caller-supplied client tracking ID.
    - `video_url` string, nullable: Presigned download URL for the rendered video. Present only when status is 'completed'.
    - `thumbnail_url` string, nullable: Presigned download URL for the auto-generated thumbnail.
    - `duration` number, nullable: Video duration in seconds; null until completed.
    - `fps` integer, nullable: Frames per second the render was created at.
    - `quality` 'draft' | 'standard' | 'high', nullable: Render quality preset.
    - `format` 'mp4' | 'webm' | 'mov', required: Output container/codec.
    - `resolution` '1080p' | '4k': Output resolution tier. 4K output uses a 1.5x pricing multiplier.
    - `aspect_ratio` '16:9' | '9:16' | '1:1': Output aspect ratio. Supported ratios are ``16:9`` (landscape), ``9:16`` (portrait), and ``1:1`` (square).
    - `composition` string, nullable: Composition entry file path.
    - `created_at` integer, nullable: Unix timestamp when the render was created.
    - `completed_at` integer, nullable: Unix timestamp when the render terminated. Null until status is 'completed' or 'failed'.
    - `failure_message` string, nullable: Error description. Present only when status is 'failed'.
    - `failure_code` string, nullable: Why billing refused a finished render: 'hf_usage_exhausted', 'hf_subscription_required' or 'api_key_required', for which nothing was charged and the render can be sent again on a HeyGen API key; or 'usage_limit_reached', when a usage limit a workspace admin set (the API key's credit limit or the member's usage limit) was reached; sending the render again does not help until the limit is raised or resets, and `failure_message` is the limit's own message; or 'chunk_frames_exceed_timeout_at_max_chunks', when the render is too long to export at its size (even split into the most cloud parts allowed, it would still take longer than the time limit): sending it again fails the same way until it is shortened or rendered at a lower resolution or frame rate, and `failure_message` says so. Present only when status is 'failed' for one of these reasons.
  - `has_more` boolean: Whether more pages are available
  - `next_token` string, nullable: Opaque cursor for the next page

## Other responses

- `400`: Invalid request parameters
- `401`: Authentication failed
- `429`: Rate limit exceeded

## Changes

- **2026-11-03** `7dfa5e59b4f5`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/heygen/apis/heygen-external-api/changes/v3/hyperframes/renders/get.md)

---

[API](https://skmtc.dev/heygen/apis/heygen-external-api.md) - [All operations](https://skmtc.dev/heygen/apis/heygen-external-api/llms.txt) - [OpenAPI document](https://skmtc.dev/heygen/apis/heygen-external-api/revisions/7dfa5e59b4f5?raw)
