Skip to main content
Before you can generate video with a digital twin (type: "digital_twin"), HeyGen needs proof that the person depicted agreed to be cloned. This protects the avatar subject, your account, and HeyGen — and it’s what lets you use a real person’s likeness responsibly at scale.
Consent applies only to digital twin avatars. Photo avatars (type: "photo") and prompt-to-avatar characters (type: "prompt") depict no real, identifiable person and do not require consent.

The three levels of access

Consent is offered as three increasing levels of access. Each level removes friction from the flow, and each is unlocked for a progressively narrower set of accounts. Higher levels are more powerful and correspondingly more restricted.
LevelFlowWho it’s forAvailability
1. Record via webcamThe avatar subject records a short consent statement on camera through HeyGen’s hosted consent page.All customersAvailable today in v3
2. Upload a consent videoYou supply a pre-recorded consent video instead of recording live — more flexible, but consent is still explicitly captured.Enterprise onlyComing soon
3. Skip the consent flowConsent collection is waived entirely for accounts that have signed an indemnity agreement.Enterprise onlyContact sales
The v3 API drives Level 1 (record via webcam). Initiate a consent flow for an avatar group; the response returns a URL the avatar subject visits to approve usage. Full schema: POST /v3/avatars/{group_id}/consent.

Request

curl -X POST "https://api.heygen.com/v3/avatars/group_xyz789/consent" \
  -H "X-Api-Key: $HEYGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "reroute_url": "https://heygen.com/consent-done"
  }'
ParameterTypeRequiredDescription
reroute_urlstringNoRedirect URL after the subject completes consent. Defaults to HeyGen’s own completion page.

Response

{
  "data": {
    "avatar_group": {
      "id": "group_xyz789",
      "name": "My Digital Twin",
      "consent_status": "pending",
      "looks_count": 1,
      "created_at": 1717000000
    },
    "url": "https://heygen.com/consent/abc123..."
  }
}
FieldTypeDescription
urlstringConsent page URL. Send this to the avatar subject to complete approval.
avatar_group.consent_statusstringCurrent consent status (e.g. "pending").
Check consent_status on the avatar group via GET /v3/avatars/{group_id} to know when consent is complete. It is null for photo and prompt avatars, which never require consent.
Consent is one step in the digital twin flow. To create the avatar itself, see Create Avatar; to browse the resulting characters and looks, see Avatars and Avatar Looks.