HeyGen wired into your CRM.
Personalized video, automated.
HeyGen's API renders asynchronously, rate-limits at 10 concurrent jobs, and fails silently if you do not build around it. Kastiv builds the queue, the retry logic, the webhook handler, and the CRM write-back.
~$1/min
Standard avatar video API cost
10 concurrent
API plan render limit
1-5 min
Typical render time
v2 REST
API version we target
Six layers that make the pipeline production-grade.
CRM webhook listener
Listens for your trigger event - deal stage change, list entry, contact created. Validates the payload, extracts personalization fields, and enqueues a video job. Invalid payloads reject fast with a logged error, not a broken render.
Render queue
A managed queue with concurrency capping at your plan limit. Jobs retry on 429 with exponential backoff. Failed jobs land in a dead-letter queue with a Slack alert - not the floor.
Avatar and template validation
Before any job is enqueued, the avatar_id is validated against a cached and periodically refreshed list from GET /v2/avatars. Stale IDs alert and fail fast instead of producing a broken render.
Webhook handler
Registered via /v1/webhook/endpoint.add. Handles avatar_video.success and avatar_video.fail events. Acks in under 1 second. Deduplicates on event_id. Processes async so HeyGen never waits on your side.
Polling fallback
A reconciliation job that polls /v1/video_status.get for any job with no webhook event after 30 minutes. Catches dropped events from network issues or slow webhook delivery.
CRM write-back
The video link is written back to the CRM record on success - as a deal property in HubSpot or an Opportunity field in Salesforce. Delivery to your outreach tool is queued at the same time.
Trigger. Render. Deliver.
CRM trigger fires
A contact enters a deal stage, list, or automation rule in HubSpot or Salesforce. The webhook listener picks it up within seconds. No manual kickoff. No CSV exports. Personalization fields are extracted and validated before the job is queued.
HeyGen renders via API
The render job is submitted to HeyGen's v2 REST API with the contact's merge fields applied. The queue manages concurrency against your plan's 10-job limit. Retries fire automatically on 429. Failures surface as alerts, not silent drops.
Video link delivered and logged in CRM
On render success, the webhook handler writes the video link back to the CRM record and queues it for outreach delivery. Generation status, delivery status, and any error events are all logged to the contact and deal.
What you need before we build.
These are the platform prerequisites. We check them with you on the audit call - before any commitment.
HeyGen Creator plan or above
API access is not available on the free plan. The Creator tier is the minimum. We verify this on the audit.
An existing avatar and at least one video template
We wire the pipeline; your avatar and script template are the content layer. They must exist before the build starts.
Your CRM - HubSpot or Salesforce
HubSpot and Salesforce are the primary build targets. Other CRMs with a REST API or webhook support are scoped as custom work.
Access to your CRM developer sandbox
We build and test against a sandbox environment first. Production is only touched after sandbox acceptance.
Target volume and trigger event
We scope the queue architecture around your expected monthly volume and the CRM events you want to trigger on - deal stage, list entry, or custom.
Not sure if you meet the requirements?
The audit call covers every prerequisite. We check your HeyGen plan, review your CRM setup, map your trigger events, and give you a written integration blueprint with a fixed-price quote - whether or not we build anything.
If your current setup is missing something, you'll know exactly what to fix and what it costs. No vague estimates.
Book the free auditQuestions about HeyGen API integration.
Which HeyGen plan do I need for API access?
You need at least the HeyGen Creator plan for API access. The free plan does not include it. We verify your plan is API-enabled during the audit before you commit to anything.
How does HeyGen handle async rendering?
Every HeyGen video generation request is asynchronous. You submit via POST /v2/video/generate and get back a video_id. The video renders in the background (typically 1-5 minutes). You poll /v1/video_status.get or register a webhook endpoint via /v1/webhook/endpoint.add to be notified on completion. Kastiv builds both the polling fallback and the webhook handler.
What happens when HeyGen rate limits our requests?
The API plan allows 10 concurrent renders. Requests beyond that return 429 responses. Kastiv builds a managed queue with concurrency capping matched to your plan, plus exponential backoff retry on 429 - so a burst of 200 CRM triggers does not drop jobs.
Can we change the avatar per contact?
Yes. HeyGen's API supports per-request avatar selection via the avatar_id field. You can route different contact segments to different avatars - for example, a US avatar for US contacts and a UK avatar for UK contacts - based on CRM data.
CRM trigger. HeyGen render. Prospect inbox.
We scope, price, and build the pipeline fixed-price. Audit is free.
Get your Pipeline AuditFixed price. Working Pipeline Guarantee on every build.