Picsart API Platform
← All models

HeyGen Talking Photo

HeyGen · Video · Image → Video

Animate any photo into a speaking avatar with natural lip-sync.

Model ID: heygen-talking-photoWorkflow: heygen/v1/video/generate
Image InputVoice SelectionLip Sync
Try on Playground ↗

Install the SDK

The SDK targets Node 20+ and ships with TypeScript types.

npm
npm install @picsart/ai-sdk

Authenticate

Create a client once with your API key — it's sent as a bearer token on every request.

TypeScript
import { createClient } from '@picsart/ai-sdk';

const ai = createClient({
  apiKey: process.env.PICSART_API_KEY, // sent as: Authorization: Bearer <key>
  apiUrl: 'https://api.picsart.com',
});

Run the model

Call the model with its parameters. This example uses the required ones.

TypeScript
import { createClient } from '@picsart/ai-sdk';

const ai = createClient({
  apiKey: process.env.PICSART_API_KEY,
  apiUrl: 'https://api.picsart.com',
});

const result = await ai.generate('heygen-talking-photo', {
  imageUrls: [
    "https://cdn.example.com/input.jpg"
  ],
  voiceId: "",
  prompt: "A serene mountain lake at golden hour, ultra detailed"
});

console.log(result.url); // video URL

Parameters

5 parameters. Required ones must be supplied; the rest fall back to their defaults.

ParameterTypeRequiredDefaultDetails
imageUrls
Portrait Image
file (image[])yes
resolutionenumno720p4k, 1080p, 720p
aspectRatioenumno16:916:9, 9:16
voiceId
Voice
enumyes
prompt
Prompt
textyesmax 5000 chars · e.g. "Write the script your avatar will speak (at least 20 characters)..."

Output

generate() resolves once the job completes. A video URL.

Result
{
  "url": "https://cdn.picsart.com/…/result",
  "results": [
    { "url": "https://cdn.picsart.com/…/result" }
  ],
  "model": "heygen-talking-photo"
}