Documentation Index
Fetch the complete documentation index at: https://docs.runflow.io/llms.txt
Use this file to discover all available pages before exploring further.
Pricing: $0.034/second. Endpoint:
POST /v1/models/heygen/v3/video-agent/runs.Overview
- Endpoint: https://api.runflow.io/v1/models/heygen/v3/video-agent/runs
- Model ID: heygen/v3/video-agent
- Provider: HeyGen
- License: commercial
- Last Updated: 2026-04-21
Pricing
- Base price: $0.034/second
- Note: Usage-based, per second of generated video
HeyGen Video Agent V3 API
Endpoint:POST /v1/models/heygen/v3/video-agent/runs
Run the model
Python
Node.js
cURL
Request parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
input | object | required | Model input parameters. See “Input schema” below. |
callback_url | string | null | optional | Webhook URL - POSTed when the run reaches a terminal state. |
metadata | object | null | optional | Arbitrary key-value pairs attached to the run. |
Input schema
| Field | Type | Required | Allowed values | Description |
|---|---|---|---|---|
prompt | string | required | Any | Natural language prompt describing the video to generate. The agent handles avatar selection, script, and production automatically. |
orientation | string | optional | landscape, portrait | Video orientation. Auto-detected from the prompt if omitted. |
avatar | string | optional | Any | Avatar to use in the video. Set to ‘auto’ to let the agent auto-select based on the prompt. |
file_urls | file_list | optional | Any | URLs of files to include as assets in the video (images, videos, audio, PDFs). Maximum 20 files. |
incognito_mode | boolean | optional | Any | When enabled, disables the agent’s memory functions. |
style_id | string | optional | Any | Style template ID from the /v3/video-agent/styles endpoint. |
voice | string | optional | Any | Voice for narration. Set to ‘auto’ to let the agent auto-select. |
Output schema
| Field | Type | Description |
|---|---|---|
outputs | json | Unified output array. |
seed | json | Seed used for generation, or null. |
timing | json | Provider timing info, or null. |
nsfw_detected | json | NSFW flag, or null. |
Callback payload
When you provide acallback_url, Runflow POSTs to it once the run reaches a terminal state.
| Field | Type | Description |
|---|---|---|
event | string | Event type: “run.completed”, “run.failed”, or “run.cancelled”. |
run_id | string | The unique identifier of the run. |
status | string | Terminal status: “succeeded”, “failed”, or “cancelled”. |
output | object | null | The run output. Null if the run failed or was cancelled. |
duration_ms | number | null | Total run duration in milliseconds. |
created_at | string | null | ISO 8601 timestamp when the run was created. |
completed_at | string | null | ISO 8601 timestamp when the run reached terminal state. |
metadata | object | null | The metadata object passed at run creation, if any. |
- Retries: 3 attempts with exponential backoff (1s, 2s). Retries on 5xx / network errors only.
- Headers:
Runflow-Request-Idis always sent.Runflow-Signatureis sent if a signing secret is configured.
Additional Resources
Related
Browse all models
Browse the catalog.
Run lifecycle
Callbacks, polling, statuses.
Callbacks
Handle async results.
Pricing
How requests bill out.