# HeyGen Video Agent V3 > Generate videos with a single prompt. Describe what you want in plain text, and the agent handles avatar selection, scripting, scene composition - all in one. ## Overview - **Endpoint**: `https://api.runflow.io/v1/run/heygen/v3/video-agent` - **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 ## Input Schema ### `prompt` (string, required) Natural language prompt describing the video to generate. The agent handles avatar selection, script, and production automatically. ### `orientation` (string, optional) Video orientation. Auto-detected from the prompt if omitted. ### `avatar` (string, optional) Avatar to use in the video. Set to 'auto' to let the agent auto-select based on the prompt. - **Default**: `auto` ### `file_urls` (file_list, optional) URLs of files to include as assets in the video (images, videos, audio, PDFs). Maximum 20 files. ### `incognito_mode` (boolean, optional) When enabled, disables the agent's memory functions. - **Default**: `false` ### `style_id` (string, optional) Style template ID from the /v3/video-agent/styles endpoint. ### `voice` (string, optional) Voice for narration. Set to 'auto' to let the agent auto-select. - **Default**: `auto` ## Usage Examples ### cURL ```bash curl -X POST https://api.runflow.io/v1/run/heygen/v3/video-agent \ -H "Authorization: Bearer $RUNFLOW_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "A professional headshot, soft studio lighting" }' ``` ### Python ```python import requests response = requests.post( "https://api.runflow.io/v1/run/heygen/v3/video-agent", headers={"Authorization": "Bearer RUNFLOW_API_KEY"}, json={ "prompt": "A professional headshot, soft studio lighting", }, ) data = response.json() print(data["video"]["url"]) ``` ### JavaScript ```javascript const response = await fetch( "https://api.runflow.io/v1/run/heygen/v3/video-agent", { method: "POST", headers: { "Authorization": "Bearer RUNFLOW_API_KEY", "Content-Type": "application/json", }, body: JSON.stringify({ prompt: "A professional headshot, soft studio lighting", }), } ); const data = await response.json(); console.log(data.video.url); ``` ## Additional Resources - [Playground](https://www.runflow.io/models/heygen/v3/video-agent) - [API Reference](https://www.runflow.io/models/heygen/v3/video-agent/api) - [Documentation](https://www.runflow.io/docs)