# Heygen | Avatar V HeyGen Avatar V generates lifelike talking avatar videos with natural motion and lip-sync. A reliable model on each::labs for digital twins and studio avatars. ## API Information - **Model Slug:** heygen-avatar-v - **Branded URL:** https://www.eachlabs.ai/heygen/heygen/heygen-avatar-v - **Provider:** HeyGen - **Category:** Text to Video - **Output Type:** video - **Status:** active - **Version:** 0.0.1 - **Base Cost:** $0.10 per second of generated output video. - **Estimated Processing Time:** 250 seconds - **Last Updated:** 2026-05-27 - **Interactive Demo:** https://www.eachlabs.ai/ai-models/heygen-avatar-v ## Pricing - **Charge Type:** dynamic - **Pricing Details:** $0.10 per second of generated output video. ### Pricing Rules | Condition | Pricing | | --- | --- | | Rule 1 | $0.10 per second of generated output video. | ## Input Schema No input parameters documented. ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "heygen-avatar-v", "input": {} }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "string (URL of generated video)", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "Authorization: Bearer YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `Authorization` bearer token | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **Heygen | Avatar V Overview** Heygen | Avatar V is a HeyGEN text-to-video model designed to convert written scripts into realistic talking-head avatar videos. It focuses on generating presenter-style clips where a virtual avatar delivers your message with synchronized lip movement and natural body motion. Compared with generic video generators, Heygen | Avatar V is optimized for high-quality facial animation and voice alignment, making it ideal for product explainers, training content, and localized marketing videos. Built on HeyGEN’s avatar generation stack, the model accepts text and configuration parameters to produce studio-like presenter videos without cameras or actors. Integrated on each::labs, Heygen | Avatar V lets teams programmatically create consistent on-brand avatar content, streamline video localization, and embed automated video generation into existing workflows through the Heygen | Avatar V API. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `Authorization: Bearer YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.