Create UGC Video
Videos
UGC Video
Create user-generated content style videos with AI avatars
POST
Create UGC Video
Try it out! Use the API playground on the right to test the UGC Video endpoint directly.
Overview
UGC Video creates authentic-looking user-generated content videos with AI avatars. This format is ideal for:- Testimonial-style videos
- Social media content
- Personal video messages
- Quick video updates
UGC Video uses AI avatars with voice synthesis to create realistic videos that feel natural and engaging.
Endpoint
Required Fields
The script for the avatar to speak (1-10,000 characters). Write naturally as if a real person is speaking.
Avatar ID from
/v1/avatar/list. Choose an avatar that matches your target audience.Voice ID from
/v1/voice/list. The voice used for the avatar’s speech.Caption settings for the video
Video aspect ratio:
ratio_9_16: Vertical (TikTok, Reels, Shorts) - Recommendedratio_16_9: Horizontal (YouTube)ratio_1_1: Square (Instagram)
Language code for the video (max 2 characters). Example:
en, esOptional Fields
Video name (max 100 characters)
Music ID from
/v1/music/list for background music.HTTPS URL to receive completion notification (max 500 characters). Highly recommended for production use.
Custom metadata object (max 5KB). Store any additional data you need to associate with this video.
Request Examples
Basic UGC Video
Complete UGC Video
Response
Webhook Notification
When your video is ready, we’ll POST to your webhook URL:Webhook Payload
Your webhook endpoint must return a
200 status code. We’ll retry up to 3 times if the request fails.Caption Presets
Available caption presets for thecaption.preset field:
| Preset | Description |
|---|---|
default | Default caption style with bold text and shadow effects |
beast | Bold uppercase style with Komika font |
umi | Yellow glowing text style |
tiktok | Viral & trendy style, perfect for social media |
wrap1 | Wrapped style with red background highlight |
wrap2 | Wrapped style with blue background highlight (uppercase) |
ariel | Bold uppercase style with purple highlight |
slidevid | Brand style with purple background |
classic | Clean, simple captions with black background |
active | Green background with bold text |
bubble | White background bubble style |
glass | Glassmorphic transparency effect |
comic | Comic Sans font with colorful style |
glow | Pink and orange glow effects |
pastel | Soft pastel pink background |
neon | Green neon glow effect |
retroTV | Retro TV style with cyan glow |
red | Red glow effect with white text |
marker | Yellow marker/highlighter style |
modern | Contemporary white background style |
blue | Blue background style |
vivid | Vibrant pink background with uppercase text |
Best Practices
Write Naturally
Scripts should sound conversational. Use contractions, pauses, and natural speech patterns.
Keep It Concise
Shorter videos (15-60 seconds) tend to perform better on social media.
Match Voice to Avatar
Choose a voice that matches the avatar’s appearance for authenticity.
Use Webhooks
Always use webhooks in production instead of polling for video status.
Error Handling
| Error | Description | Solution |
|---|---|---|
script: Script must be at least 1 character | Missing or empty script | Add the script field with your content |
avatarId: Avatar not found | Invalid avatar ID | Use a valid avatar ID from /v1/avatar/list |
voiceId: Voice not found | Invalid voice ID | Use a valid voice ID from /v1/voice/list |
webhook: Must be a valid HTTPS URL | Invalid webhook URL | Ensure webhook URL starts with https:// |
Not enough credits | Insufficient credits | Top up your account credits |
Next Steps
List Avatars
Browse available avatars
List Voices
Find the perfect voice
List Videos
View all your created videos
Webhooks Guide
Learn how to handle webhook notifications
Authorizations
Body
application/json
The script for the avatar to speak (1-10,000 characters)
Required string length:
1 - 10000Avatar ID from /v1/avatar/list
Maximum string length:
30Voice ID from /v1/voice/list
Maximum string length:
30Video aspect ratio
Available options:
ratio_9_16, ratio_16_9, ratio_1_1 Language code (max 2 characters)
Available options:
en, es Maximum string length:
2Video name (max 100 characters)
Maximum string length:
100Music ID from /v1/music/list for background music
Maximum string length:
30HTTPS URL to receive completion notification
Maximum string length:
500Custom metadata object (max 5KB)