GET

/v1/schemas/fal/video/fal-ai/heygen/avatar4/image-to-video

kind inputactivity videohash 0d379020…extracted Oct 9, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.

upstream-spec

Source trace
c996528d83d44955130019d0f9452376ac86444c71a064d71eee3a80520d75fd
{
  "fetchedAt": 1791522002,
  "extractorVersion": "1",
  "verifiedAt": null
}

Request body

11 properties · 1 required · 1 $defs
propertytypedescriptionconstraints
image_url*stringURL of the image to animate. The image should contain a clear face.
expressionconstFacial expression"happy" · nullable
promptstringThe text the avatar will speaknullable
enable_safety_checkerbooleanAuthorized callers may set false to request relaxed screening.default: true
talking_styleenumTalking style - 'stable' for minimal movement, 'expressive' for more animationstable | expressive · default: "stable"
aspect_ratioenumAspect ratio of the output video. Supported values: '16:9', '9:16', '4:5', '5:4', '1:1', and 'auto'. 'auto' preserves the source aspect ratio when HeyGen can read it, falling back to '16:9' otherwise.16:9 | 9:16 | 4:5 | 5:4 | 1:1 | auto · default: "16:9"
voiceenumName of the voice to use for the avatarWarm Pro Narrator | Chill Brian | Ivy | John Doe | Monika Sogam | Hope · +96 more
audio_urlstringURL of an audio file for the avatar to lip-sync to. When provided, overrides prompt and voice.nullable
backgroundAvatarIVBackgroundBackground configuration
resolutionenumVideo resolution preset. Options: 360p, 480p, 540p, 720p, 1080p360p | 480p | 540p | 720p | 1080p · default: "720p"
captionbooleanWhether to add captions to the videodefault: false

Types

1 $defs

AvatarIVBackgroundobject

typeenumType of backgroundcolor | image | video · default: "color"
valuestringBackground value - hex color for 'color' type, URL for 'image' or 'video' typedefault: "#FFFFFF"

Validate a payload

before you spend tokens
shell
$ curl -X POST https://modelschemas.com/v1/validate \
    -d '{"provider":"fal","endpointId":"fal-ai/heygen/avatar4/image-to-video","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}