HeyGen Avatar V

HeyGen Avatar V is an avatar video generation model for talking digital twins and other eligible registered avatar looks. It improves identity preservation, lip sync accuracy, facial expressiveness, and motion coherence across angle changes, scene changes, and long-form videos, making it well suited to presenter, training, and localization workflows where avatar stability matters.
API Reference
INTEGRATE
Complete technical specification for integration
RequestResponse
Examples4
CODE
Ready-to-use code snippets for common workflows
Guides2
LEARN
Step-by-step tutorials for advanced use cases
captioned-stock-avatar
Funeral Home Mystery Teaser$2.64~9m 0simport { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'heygen:avatar@5',
width: 1280,
height: 720,
speech: {
text: 'At Bellwether House, we prepare the dead for their final journey. Last Tuesday, one returned wearing my sister\'s ring. The register says she died thirty years ago. The register lies. This autumn, every farewell leaves a clue. The Last Appointment.',
voice: 'mabel_forsythe_serious_female_english',
language: 'en-GB'
},
settings: {
caption: true
},
inputs: {
avatar: 'Scarlett_siiting_fireplace_front'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "heygen:avatar@5",
"width": 1280,
"height": 720,
"speech": {
"text": "At Bellwether House, we prepare the dead for their final journey. Last Tuesday, one returned wearing my sister's ring. The register says she died thirty years ago. The register lies. This autumn, every farewell leaves a clue. The Last Appointment.",
"voice": "mabel_forsythe_serious_female_english",
"language": "en-GB"
},
"settings": {
"caption": True
},
"inputs": {
"avatar": "Scarlett_siiting_fireplace_front"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "videoInference",
"taskUUID": "42ab6706-fab3-4e70-896c-970cb756519d",
"model": "heygen:avatar@5",
"width": 1280,
"height": 720,
"speech": {
"text": "At Bellwether House, we prepare the dead for their final journey. Last Tuesday, one returned wearing my sister's ring. The register says she died thirty years ago. The register lies. This autumn, every farewell leaves a clue. The Last Appointment.",
"voice": "mabel_forsythe_serious_female_english",
"language": "en-GB"
},
"settings": {
"caption": true
},
"inputs": {
"avatar": "Scarlett_siiting_fireplace_front"
}
}
]'runware run heygen:avatar@5 \
width=1280 \
height=720 \
speech.text="At Bellwether House, we prepare the dead for their final journey. Last Tuesday, one returned wearing my sister's ring. The register says she died thirty years ago. The register lies. This autumn, every farewell leaves a clue. The Last Appointment." \
speech.voice=mabel_forsythe_serious_female_english \
speech.language=en-GB \
settings.caption=true \
inputs.avatar=Scarlett_siiting_fireplace_front{
"taskType": "videoInference",
"taskUUID": "42ab6706-fab3-4e70-896c-970cb756519d",
"model": "heygen:avatar@5",
"width": 1280,
"height": 720,
"speech": {
"text": "At Bellwether House, we prepare the dead for their final journey. Last Tuesday, one returned wearing my sister's ring. The register says she died thirty years ago. The register lies. This autumn, every farewell leaves a clue. The Last Appointment.",
"voice": "mabel_forsythe_serious_female_english",
"language": "en-GB"
},
"settings": {
"caption": true
},
"inputs": {
"avatar": "Scarlett_siiting_fireplace_front"
}
}Response
{
"taskType": "videoInference",
"taskUUID": "42ab6706-fab3-4e70-896c-970cb756519d",
"videoUUID": "74b7ef8c-7daf-46b3-935a-a6df1bb0ab41",
"videoURL": "https://vm.runware.ai/video/os/a01d21/ws/5/vi/74b7ef8c-7daf-46b3-935a-a6df1bb0ab41.mp4",
"cost": 2.6448
}audio-driven-stock-avatar
Draft Line Hygiene Meter Demo$3.35~2m 38simport { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'heygen:avatar@5',
width: 1080,
height: 1920,
inputs: {
avatar: 'Annie_Bar_Standing_Front_public',
audio: 'https://assets.runware.ai/assets/inputs/efaa8e30-02f6-40c1-8874-487cfd10a98b.mp3'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "heygen:avatar@5",
"width": 1080,
"height": 1920,
"inputs": {
"avatar": "Annie_Bar_Standing_Front_public",
"audio": "https://assets.runware.ai/assets/inputs/efaa8e30-02f6-40c1-8874-487cfd10a98b.mp3"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "videoInference",
"taskUUID": "f2a4bc8a-24d5-4250-82b5-87ebfd2da484",
"model": "heygen:avatar@5",
"width": 1080,
"height": 1920,
"inputs": {
"avatar": "Annie_Bar_Standing_Front_public",
"audio": "https://assets.runware.ai/assets/inputs/efaa8e30-02f6-40c1-8874-487cfd10a98b.mp3"
}
}
]'runware run heygen:avatar@5 \
width=1080 \
height=1920 \
inputs.avatar=Annie_Bar_Standing_Front_public \
inputs.audio=https://assets.runware.ai/assets/inputs/efaa8e30-02f6-40c1-8874-487cfd10a98b.mp3{
"taskType": "videoInference",
"taskUUID": "f2a4bc8a-24d5-4250-82b5-87ebfd2da484",
"model": "heygen:avatar@5",
"width": 1080,
"height": 1920,
"inputs": {
"avatar": "Annie_Bar_Standing_Front_public",
"audio": "https://assets.runware.ai/assets/inputs/efaa8e30-02f6-40c1-8874-487cfd10a98b.mp3"
}
}Response
{
"taskType": "videoInference",
"taskUUID": "f2a4bc8a-24d5-4250-82b5-87ebfd2da484",
"videoUUID": "3e3bc6b9-f634-4e20-95e4-1defcf65be25",
"videoURL": "https://vm.runware.ai/video/os/a05d22/ws/5/vi/3e3bc6b9-f634-4e20-95e4-1defcf65be25.mp4",
"cost": 3.3512
}scripted-stock-avatar
Heritage Documentary Series Teaser$2.71~3m 6simport { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'heygen:avatar@5',
width: 1920,
height: 1080,
speech: {
text: 'Before steel sang in factories, bronze carried news across valleys. It marked weddings, warned of fire, and mourned the dead. Now, the last bell founders are preparing one final cast. From furnace to tower, discover the sound that outlived empires. The Last Foundry.',
voice: 'scarlett_lifelike_female_english',
language: 'en-GB'
},
inputs: {
avatar: 'Scarlett_siiting_fireplace_front'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "heygen:avatar@5",
"width": 1920,
"height": 1080,
"speech": {
"text": "Before steel sang in factories, bronze carried news across valleys. It marked weddings, warned of fire, and mourned the dead. Now, the last bell founders are preparing one final cast. From furnace to tower, discover the sound that outlived empires. The Last Foundry.",
"voice": "scarlett_lifelike_female_english",
"language": "en-GB"
},
"inputs": {
"avatar": "Scarlett_siiting_fireplace_front"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "videoInference",
"taskUUID": "d1683a06-9924-4600-8a3b-a8ca6e5928a9",
"model": "heygen:avatar@5",
"width": 1920,
"height": 1080,
"speech": {
"text": "Before steel sang in factories, bronze carried news across valleys. It marked weddings, warned of fire, and mourned the dead. Now, the last bell founders are preparing one final cast. From furnace to tower, discover the sound that outlived empires. The Last Foundry.",
"voice": "scarlett_lifelike_female_english",
"language": "en-GB"
},
"inputs": {
"avatar": "Scarlett_siiting_fireplace_front"
}
}
]'runware run heygen:avatar@5 \
width=1920 \
height=1080 \
speech.text="Before steel sang in factories, bronze carried news across valleys. It marked weddings, warned of fire, and mourned the dead. Now, the last bell founders are preparing one final cast. From furnace to tower, discover the sound that outlived empires. The Last Foundry." \
speech.voice=scarlett_lifelike_female_english \
speech.language=en-GB \
inputs.avatar=Scarlett_siiting_fireplace_front{
"taskType": "videoInference",
"taskUUID": "d1683a06-9924-4600-8a3b-a8ca6e5928a9",
"model": "heygen:avatar@5",
"width": 1920,
"height": 1080,
"speech": {
"text": "Before steel sang in factories, bronze carried news across valleys. It marked weddings, warned of fire, and mourned the dead. Now, the last bell founders are preparing one final cast. From furnace to tower, discover the sound that outlived empires. The Last Foundry.",
"voice": "scarlett_lifelike_female_english",
"language": "en-GB"
},
"inputs": {
"avatar": "Scarlett_siiting_fireplace_front"
}
}Response
{
"taskType": "videoInference",
"taskUUID": "d1683a06-9924-4600-8a3b-a8ca6e5928a9",
"videoUUID": "14824484-ef9a-460b-9be0-651e025a002e",
"videoURL": "https://vm.runware.ai/video/os/a05d22/ws/5/vi/14824484-ef9a-460b-9be0-651e025a002e.mp4",
"cost": 2.712
}background-replacement
Rare Book Handling Stock Clip$1.14~3m 23simport { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'heygen:avatar@5',
width: 1080,
height: 1080,
speech: {
text: 'Before opening a rare volume, support the spine, wash and dry your hands, and keep food, pens, and direct light away.',
voice: 'piper_lifelike_female_english',
language: 'en-US'
},
settings: {
removeBackground: true,
fit: 'contain'
},
inputs: {
avatar: 'Piper_standing_education_front',
background: 'https://assets.runware.ai/assets/inputs/eed3b84d-e8b1-4b3e-9286-692d3ffbba02.jpg'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "heygen:avatar@5",
"width": 1080,
"height": 1080,
"speech": {
"text": "Before opening a rare volume, support the spine, wash and dry your hands, and keep food, pens, and direct light away.",
"voice": "piper_lifelike_female_english",
"language": "en-US"
},
"settings": {
"removeBackground": True,
"fit": "contain"
},
"inputs": {
"avatar": "Piper_standing_education_front",
"background": "https://assets.runware.ai/assets/inputs/eed3b84d-e8b1-4b3e-9286-692d3ffbba02.jpg"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "videoInference",
"taskUUID": "667f9d1f-8acc-435a-8e20-5350d8918547",
"model": "heygen:avatar@5",
"width": 1080,
"height": 1080,
"speech": {
"text": "Before opening a rare volume, support the spine, wash and dry your hands, and keep food, pens, and direct light away.",
"voice": "piper_lifelike_female_english",
"language": "en-US"
},
"settings": {
"removeBackground": true,
"fit": "contain"
},
"inputs": {
"avatar": "Piper_standing_education_front",
"background": "https://assets.runware.ai/assets/inputs/eed3b84d-e8b1-4b3e-9286-692d3ffbba02.jpg"
}
}
]'runware run heygen:avatar@5 \
width=1080 \
height=1080 \
speech.text="Before opening a rare volume, support the spine, wash and dry your hands, and keep food, pens, and direct light away." \
speech.voice=piper_lifelike_female_english \
speech.language=en-US \
settings.removeBackground=true \
settings.fit=contain \
inputs.avatar=Piper_standing_education_front \
inputs.background=https://assets.runware.ai/assets/inputs/eed3b84d-e8b1-4b3e-9286-692d3ffbba02.jpg{
"taskType": "videoInference",
"taskUUID": "667f9d1f-8acc-435a-8e20-5350d8918547",
"model": "heygen:avatar@5",
"width": 1080,
"height": 1080,
"speech": {
"text": "Before opening a rare volume, support the spine, wash and dry your hands, and keep food, pens, and direct light away.",
"voice": "piper_lifelike_female_english",
"language": "en-US"
},
"settings": {
"removeBackground": true,
"fit": "contain"
},
"inputs": {
"avatar": "Piper_standing_education_front",
"background": "https://assets.runware.ai/assets/inputs/eed3b84d-e8b1-4b3e-9286-692d3ffbba02.jpg"
}
}Response
{
"taskType": "videoInference",
"taskUUID": "667f9d1f-8acc-435a-8e20-5350d8918547",
"videoUUID": "9cec4698-9b5a-4fed-9a17-ff5331b04d59",
"videoURL": "https://vm.runware.ai/video/os/a04d20/ws/5/vi/9cec4698-9b5a-4fed-9a17-ff5331b04d59.mp4",
"cost": 1.1446
}