HeyGen API (Deprecated)
This skill is deprecated. Use the focused skills instead:
create-video — Generate videos from a text prompt (Video Agent API)
avatar-video — Build videos with specific avatars, voices, scripts, and scenes (v2 API)
This skill remains for backward compatibility but will be removed in a future release.
AI avatar video creation API for generating talking-head videos, explainers, and presentations.
Tool Selection
If HeyGen MCP tools are available (mcp__heygen__*), prefer them over direct HTTP API calls — they handle authentication and request formatting automatically.
| Task |
MCP Tool |
Fallback (Direct API) |
| Generate video from prompt |
mcp__heygen__generate_video_agent |
POST /v1/video_agent/generate |
| Check video status / get URL |
mcp__heygen__get_video |
GET /v2/videos/{video_id} |
| List account videos |
mcp__heygen__list_videos |
GET /v2/videos |
| Delete a video |
mcp__heygen__delete_video |
DELETE /v2/videos/{video_id} |
If no HeyGen MCP tools are available, use direct HTTP API calls with X-Api-Key: $HEYGEN_API_KEY header as documented in the reference files.
Default Workflow
Prefer Video Agent for most video requests.
Always use prompt-optimizer.md guidelines to structure prompts with scenes, timing, and visual styles.
With MCP tools:
- Write an optimized prompt using prompt-optimizer.md → visual-styles.md
- Call
mcp__heygen__generate_video_agent with prompt and config (duration_sec, orientation, avatar_id)
- Call
mcp__heygen__get_video with the returned video_id to poll status and get the download URL
Without MCP tools (direct API):
- Write an optimized prompt using prompt-optimizer.md → visual-styles.md
POST /v1/video_agent/generate — see video-agent.md
GET /v2/videos/<id> — see video-status.md
Only use v2/video/generate when user explicitly needs:
- Exact script without AI modification
- Specific voice_id selection
- Different avatars/backgrounds per scene
- Precise per-scene timing control
- Programmatic/batch generation with exact specs
Quick Reference
| Task |
MCP Tool |
Read |
| Generate video from prompt (easy) |
mcp__heygen__generate_video_agent |
prompt-optimizer.md → visual-styles.md → video-agent.md |
| Generate video with precise control |
— |
video-generation.md, avatars.md, voices.md |
| Check video status / get download URL |
mcp__heygen__get_video |
video-status.md |
| Add captions or text overlays |
— |
captions.md, text-overlays.md |
| Transparent video for compositing |
— |
video-generation.md (WebM section) |
| Use with Remotion |
— |
remotion-integration.md |
Reference Files
Foundation
- references/authentication.md - API key setup and X-Api-Key header
- references/quota.md - Credit system and usage limits
- references/video-status.md - Polling patterns and download URLs
- references/assets.md - Uploading images, videos, audio
Core Video Creation
- references/avatars.md - Listing avatars, styles, avatar_id selection
- references/voices.md - Listing voices, locales, speed/pitch
- references/scripts.md - Writing scripts, pauses, pacing
- references/video-generation.md - POST /v2/video/generate and multi-scene videos
- references/video-agent.md - One-shot prompt video generation
- references/prompt-optimizer.md - Writing effective Video Agent prompts (core workflow + rules)
- references/visual-styles.md - 20 named visual styles with full specs
- references/prompt-examples.md - Full production prompt example + ready-to-use templates
- references/dimensions.md - Resolution and aspect ratios
Video Customization
- references/backgrounds.md - Solid colors, images, video backgrounds
- references/text-overlays.md - Adding text with fonts and positioning
- references/captions.md - Auto-generated captions and subtitles
Advanced Features
- references/templates.md - Template listing and variable replacement
- references/photo-avatars.md - Creating avatars from photos
- references/webhooks.md - Webhook endpoints and events
Integration
- references/remotion-integration.md - Using HeyGen in Remotion compositions
1---2name: heygen3description: [DEPRECATED] Use `create-video` for prompt-based video generation or `avatar-video` for precise avatar/scene control. This legacy skill combines both workflows — the newer focused skills provide clearer guidance.4---5
6# HeyGen API (Deprecated)
7
8> **This skill is deprecated.** Use the focused skills instead:
9> - **`create-video`** — Generate videos from a text prompt (Video Agent API)
10> - **`avatar-video`** — Build videos with specific avatars, voices, scripts, and scenes (v2 API)
11
12This skill remains for backward compatibility but will be removed in a future release.
13
14---
15
16AI avatar video creation API for generating talking-head videos, explainers, and presentations.
17
18## Tool Selection
19
20If HeyGen MCP tools are available (`mcp__heygen__*`), **prefer them** over direct HTTP API calls — they handle authentication and request formatting automatically.
21
22| Task | MCP Tool | Fallback (Direct API) |
23|------|----------|----------------------|
24| Generate video from prompt | `mcp__heygen__generate_video_agent` | `POST /v1/video_agent/generate` |
25| Check video status / get URL | `mcp__heygen__get_video` | `GET /v2/videos/{video_id}` |
26| List account videos | `mcp__heygen__list_videos` | `GET /v2/videos` |
27| Delete a video | `mcp__heygen__delete_video` | `DELETE /v2/videos/{video_id}` |
28
29If no HeyGen MCP tools are available, use direct HTTP API calls with `X-Api-Key: $HEYGEN_API_KEY` header as documented in the reference files.
30
31## Default Workflow
32
33**Prefer Video Agent** for most video requests.
34Always use [prompt-optimizer.md](references/prompt-optimizer.md) guidelines to structure prompts with scenes, timing, and visual styles.
35
36**With MCP tools:**
371. Write an optimized prompt using [prompt-optimizer.md](references/prompt-optimizer.md) → [visual-styles.md](references/visual-styles.md)
382. Call `mcp__heygen__generate_video_agent` with prompt and config (duration_sec, orientation, avatar_id)
393. Call `mcp__heygen__get_video` with the returned video_id to poll status and get the download URL
40
41**Without MCP tools (direct API):**
421. Write an optimized prompt using [prompt-optimizer.md](references/prompt-optimizer.md) → [visual-styles.md](references/visual-styles.md)
432. `POST /v1/video_agent/generate` — see [video-agent.md](references/video-agent.md)
443. `GET /v2/videos/<id>` — see [video-status.md](references/video-status.md)
45
46Only use v2/video/generate when user explicitly needs:
47- Exact script without AI modification
48- Specific voice_id selection
49- Different avatars/backgrounds per scene
50- Precise per-scene timing control
51- Programmatic/batch generation with exact specs
52
53## Quick Reference
54
55| Task | MCP Tool | Read |
56|------|----------|------|
57| Generate video from prompt (easy) | `mcp__heygen__generate_video_agent` | [prompt-optimizer.md](references/prompt-optimizer.md) → [visual-styles.md](references/visual-styles.md) → [video-agent.md](references/video-agent.md) |
58| Generate video with precise control | — | [video-generation.md](references/video-generation.md), [avatars.md](references/avatars.md), [voices.md](references/voices.md) |
59| Check video status / get download URL | `mcp__heygen__get_video` | [video-status.md](references/video-status.md) |
60| Add captions or text overlays | — | [captions.md](references/captions.md), [text-overlays.md](references/text-overlays.md) |
61| Transparent video for compositing | — | [video-generation.md](references/video-generation.md) (WebM section) |
62| Use with Remotion | — | [remotion-integration.md](references/remotion-integration.md) |
63
64## Reference Files
65
66### Foundation
67- [references/authentication.md](references/authentication.md) - API key setup and X-Api-Key header
68- [references/quota.md](references/quota.md) - Credit system and usage limits
69- [references/video-status.md](references/video-status.md) - Polling patterns and download URLs
70- [references/assets.md](references/assets.md) - Uploading images, videos, audio
71
72### Core Video Creation
73- [references/avatars.md](references/avatars.md) - Listing avatars, styles, avatar_id selection
74- [references/voices.md](references/voices.md) - Listing voices, locales, speed/pitch
75- [references/scripts.md](references/scripts.md) - Writing scripts, pauses, pacing
76- [references/video-generation.md](references/video-generation.md) - POST /v2/video/generate and multi-scene videos
77- [references/video-agent.md](references/video-agent.md) - One-shot prompt video generation
78- [references/prompt-optimizer.md](references/prompt-optimizer.md) - Writing effective Video Agent prompts (core workflow + rules)
79- [references/visual-styles.md](references/visual-styles.md) - 20 named visual styles with full specs
80- [references/prompt-examples.md](references/prompt-examples.md) - Full production prompt example + ready-to-use templates
81- [references/dimensions.md](references/dimensions.md) - Resolution and aspect ratios
82
83### Video Customization
84- [references/backgrounds.md](references/backgrounds.md) - Solid colors, images, video backgrounds
85- [references/text-overlays.md](references/text-overlays.md) - Adding text with fonts and positioning
86- [references/captions.md](references/captions.md) - Auto-generated captions and subtitles
87
88### Advanced Features
89- [references/templates.md](references/templates.md) - Template listing and variable replacement
90- [references/photo-avatars.md](references/photo-avatars.md) - Creating avatars from photos
91- [references/webhooks.md](references/webhooks.md) - Webhook endpoints and events
92
93### Integration
94- [references/remotion-integration.md](references/remotion-integration.md) - Using HeyGen in Remotion compositions