Skip to content
← Back to documentation
Technical Reference

HeyGen

Generate and manage AI avatar videos using HeyGen.

CategoryArtificial Intelligence
Authenticationcustom
Version0.2.0
Published scopes0 published scopes
Last updatedSeptember 19, 2026

Overview

Connect HeyGen with Flows360

Generate and manage AI avatar videos using HeyGen.

Use the HeyGen connector to include its declared actions and events in Flows360 workflows without duplicating the integration logic inside each consuming system. This pinned connector version currently exposes 10 actions and 2 triggers.

Available actions

  • Create Video from Template
  • Retrieve Translated Video Status
  • Retrieve Video Status
  • Retrieve Sharable Video URL
  • Upload an Asset
  • Translate Video
  • List Avatars
  • List Voices
  • Plus 2 additional declared actions.

Available triggers

  • New Avatar Video Event (Success)
  • New Avatar Video Event (Fail)

The capability list above is generated from the exact reviewed connector package so the public description stays aligned with the version Flows360 operates.

Technical guide

Technical reference

Package identity

  • Connector: HeyGen
  • Package: @activepieces/piece-heygen@0.2.0
  • Exact artifact digest: sha256:d6d5646492671a5bb288811ab20bb51a0c7fd0e5df28f1776663c46b2ef1259a
  • Runtime: Activepieces-compatible deterministic worker
  • Source: the exact reviewed Activepieces source

Authentication

SECRET TEXT. Connection values are tenant-specific and remain in the consuming Studio instance; CDK stores definitions and field metadata, not customer credential values.

Action contracts

  • Create Video from Template (create-video-from-template), Create a video using a selected template. Classification: read.
  • Retrieve Translated Video Status (retrieve-translated-video-status), Retrieves the status of a translated video. Classification: read.
  • Retrieve Video Status (retrieve_video_status), Retrieve the status and details of a video using its ID. Classification: read.
  • Retrieve Sharable Video URL (retrieve_sharable_video_url), Generates a public URL for a video, allowing it to be shared and accessed publicly. Classification: read.
  • Upload an Asset (upload_asset), Upload media files (images, videos, or audio) to HeyGen. Supports JPEG, PNG, MP4, WEBM, and MPEG files. Classification: read.
  • Translate Video (translate_video), Translate a video into 175+ languages with natural voice and lip-sync. Classification: read.
  • List Avatars (list_avatars), Retrieve a list of all available avatars. Classification: read.
  • List Voices (list_voices), Retrieve a list of all available voices. Classification: read.
  • List Videos (list_videos), Retrieve a list of all generated videos. Classification: read.
  • Custom API Call (custom_api_call), Make a custom API call to a specific endpoint Classification: read.

Trigger contracts

  • New Avatar Video Event (Success), webhook.
  • New Avatar Video Event (Fail), webhook.

Verification

Deterministic execution evidence is recorded for the pinned artifact, including 1 exercised action entrypoint and 0 exercised trigger entrypoints.

Capability summary

Authenticationcustom
Supported objects12
Supported actions10
Triggers2

Authentication

Authentication method: custom

Authentication profiles

connection · custom
  • API Key Required · protected credential

Supported objects

ObjectReadWriteNotes
Create Video from Template Yes No Create a video using a selected template.
Retrieve Translated Video Status Yes No Retrieves the status of a translated video.
Retrieve Video Status Yes No Retrieve the status and details of a video using its ID.
Retrieve Sharable Video URL Yes No Generates a public URL for a video, allowing it to be shared and accessed publicly.
Upload an Asset Yes No Upload media files (images, videos, or audio) to HeyGen. Supports JPEG, PNG, MP4, WEBM, and MPEG files.
Translate Video Yes No Translate a video into 175+ languages with natural voice and lip-sync.
List Avatars Yes No Retrieve a list of all available avatars.
List Voices Yes No Retrieve a list of all available voices.
List Videos Yes No Retrieve a list of all generated videos.
Custom API Call Yes No Make a custom API call to a specific endpoint
New Avatar Video Event (Success) Yes No webhook trigger declared by the pinned package.
New Avatar Video Event (Fail) Yes No webhook trigger declared by the pinned package.

Supported actions

Create Video from Template · Read

Create a video using a selected template.

create_video_from_template · Risk: low · Retry: safe

Inputs

  • templateId · string · Required, Select the template to generate the video.
  • title · string · Required, Title of the generated video.
  • caption · boolean · Optional
  • includeGif · boolean · Optional
  • enableSharing · boolean · Optional
  • folderId · string · Optional, Select the folder to store the video.
  • brandVoiceId · string · Optional, Select the Brand Voice to apply to the video.
  • callbackUrl · string · Optional, Webhook URL to notify when video rendering is complete.
  • dimensionWidth · number · Optional
  • dimensionHeight · number · Optional
  • variables · object · Optional
Retrieve Translated Video Status · Read

Retrieves the status of a translated video.

retrieve_translated_video_status · Risk: low · Retry: safe

Inputs

  • videoId · string · Required, The ID of the translated video to check the status for.
Retrieve Video Status · Read

Retrieve the status and details of a video using its ID.

retrieve_video_status · Risk: low · Retry: safe

Inputs

  • videoId · string · Required, The ID of the video to retrieve the status for.
Retrieve Sharable Video URL · Read

Generates a public URL for a video, allowing it to be shared and accessed publicly.

retrieve_sharable_video_url · Risk: low · Retry: safe

Inputs

  • videoId · string · Required, The ID of the video to generate a shareable URL for.
Upload an Asset · Read

Upload media files (images, videos, or audio) to HeyGen. Supports JPEG, PNG, MP4, WEBM, and MPEG files.

upload_asset · Risk: low · Retry: safe

Inputs

  • file · object · Required, The file to upload (JPEG, PNG, MP4, WEBM, or MPEG).
Translate Video · Read

Translate a video into 175+ languages with natural voice and lip-sync.

translate_video · Risk: low · Retry: safe

Inputs

  • videoUrl · string · Required, URL of the video file to be translated. Supports direct URLs, Google Drive, and YouTube.
  • title · string · Optional, Optional title of the translated video.
  • outputLanguage · string · Required, Select the language for video translation.
  • translateAudioOnly · boolean · Optional, Only translate the audio without modifying faces.
  • speakerNum · number · Optional, Number of speakers in the video (if applicable).
  • brandVoiceId · string · Optional, Select the Brand Voice to apply to the video.
  • callbackId · string · Optional, Custom ID returned in webhook callback.
  • callbackUrl · string · Optional, URL to notify when translation is complete.
List Avatars · Read

Retrieve a list of all available avatars.

list_avatars · Risk: low · Retry: safe

List Voices · Read

Retrieve a list of all available voices.

list_voices · Risk: low · Retry: safe

List Videos · Read

Retrieve a list of all generated videos.

list_videos · Risk: low · Retry: safe

Inputs

  • limit · number · Optional, Maximum number of videos to retrieve (max 100).
Custom API Call · Read

Make a custom API call to a specific endpoint

custom_api_call · Risk: low · Retry: safe

Inputs

  • url · object · Required
  • method · string · Required
  • headers · object · Optional, Authorization headers are injected automatically from your connection.
  • queryParams · object · Optional, Appended to the URL as ?key=value.
  • body_type · string · Optional
  • body · object · Optional
  • response_is_binary · boolean · Optional, Enable for files like PDFs, images, etc.
  • failsafe · boolean · Optional, On a failed request, output the error instead of failing the step.
  • timeout · number · Optional, Seconds to wait for a response. Empty: up to the flow limit (10 min).
  • followRedirects · boolean · Optional, Follow 3xx redirects instead of returning them as the response.

Triggers

New Avatar Video Event (Success) · Webhook

Triggers when a video is generated successfully.

New Avatar Video Event (Fail) · Webhook

Triggers when a video generation process fails.

Setup

Setup

  1. Add the HeyGen connector to the workflow in the target Flows360 Studio instance.
  2. Create or select the tenant-specific connection required by the connector. Connection secrets remain in the Studio connection boundary and are not copied into CDK documentation.
  3. Provide the connection fields declared by the pinned package:
  • No provider credential fields are declared by the pinned package.
  1. Select the required action or trigger and complete its declared input fields. Required and optional inputs are defined by the exact package schema.
  2. Test the workflow in the appropriate environment before enabling production scheduling or event delivery.

Limitations

Limitations and operational notes

  • This content describes @activepieces/piece-heygen@0.2.0; provider behaviour can change independently and should be revalidated when the provider or connector version changes.
  • Only the 10 actions and 2 triggers declared by this pinned package are represented here.
  • Tenant credentials and connection values are not stored in the public connector record.
  • Provider-side permissions, account entitlements, quotas and rate limits remain subject to the connected provider account and are not inferred when the package does not declare them.
  • Deterministic execution evidence is recorded for the pinned artifact, including 1 exercised action entrypoint and 0 exercised trigger entrypoints.

Troubleshooting

Why canu2019t the connector authenticate?

Check the tenant connection in Studio and confirm every required HeyGen connection field is present. Re-authorise OAuth-based connections if the provider token or consent has expired. Do not place credential values in CDK content or logs.

Why is an action or trigger unavailable?

Confirm that the workflow is using @activepieces/piece-heygen@0.2.0 and compare the requested capability with the declared action and trigger list for this version. A capability that is not declared by the pinned package should not be presented as supported.

What should I check after a provider-side change?

Revalidate authentication, required fields, action/trigger behaviour and provider documentation before publishing refreshed connector content or moving a new package version into production.