API Documentation
Link to videos
Links
Lipsyncs
Lipsyncs v2
Text to Speech
AI Shorts
AI Editing
Custom Templates
Avatar
Voices
Workspace
Create a multi_avatar lipsync task
API that converts a list of texts, voices and avatars to vivid videos of many people speaking. Deprecated, please use Create a lipsync v2 task
curl --request POST \
--url https://api.creatify.ai/api/lipsyncs/multi_avatar/ \
--header 'Content-Type: application/json' \
--header 'X-API-ID: <api-key>' \
--header 'X-API-KEY: <api-key>' \
--data '{
"video_inputs": [
{
"character": {
"type": "avatar",
"avatar_id": "<string>",
"scale": 1,
"avatar_style": "circle",
"offset": {
"x": 0,
"y": 0
},
"hidden": false
},
"voice": {
"type": "text",
"input_text": "<string>",
"voice_id": "<string>",
"volume": 0.8
},
"caption_setting": {
"style": "normal-black",
"offset": {
"x": 0,
"y": 0.4
},
"font_family": "Montserrat",
"font_size": 70,
"font_style": "font-bold",
"background_color": "<string>",
"text_color": "<string>",
"highlight_text_color": "<string>",
"max_width": 123,
"line_height": 123,
"text_shadow": "<string>",
"hidden": false
},
"background": {
"type": "image",
"url": "<string>",
"fit": "cover",
"effect": "imageSlideLeft"
},
"transition_effect": {
"transition_in": "fade",
"transition_out": "fade"
},
"visual_style": "FullAvatar",
"cta": {
"cta_logo": {
"url": "<string>",
"scale": 0.25,
"offset": {
"x": 123,
"y": 123
}
},
"cta_caption": {
"caption": "<string>",
"caption_setting": {
"style": "normal-black",
"offset": {
"x": 123,
"y": 123
},
"font_family": "Montserrat",
"font_size": 123,
"font_style": "font-bold",
"background_color": "<string>",
"text_color": "<string>",
"highlight_text_color": "<string>",
"max_width": 123,
"line_height": 123,
"text_shadow": "<string>",
"hidden": true
}
},
"cta_background_blur": false,
"transition_effect": {
"transition_in": "fade",
"transition_out": "fade"
}
}
}
],
"aspect_ratio": "9x16",
"background_music": {
"url": "<string>",
"volume": 0.2
},
"cta_end": {
"cta_logo": {
"url": "<string>",
"scale": 0.5,
"offset": {
"x": 123,
"y": 123
}
},
"cta_caption": {
"caption": "<string>",
"caption_setting": {
"style": "normal-black",
"offset": {
"x": 123,
"y": 123
},
"font_family": "Montserrat",
"font_size": 123,
"font_style": "font-bold",
"background_color": "<string>",
"text_color": "<string>",
"highlight_text_color": "<string>",
"max_width": 123,
"line_height": 123,
"text_shadow": "<string>",
"hidden": true
}
},
"cta_background_blur": false,
"transition_effect": {
"transition_in": "fade",
"transition_out": "fade"
},
"cta_duration": 2,
"cta_background": {
"type": "image",
"url": "<string>",
"fit": "cover",
"effect": "imageSlideLeft"
}
},
"webhook_url": "<string>"
}'
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"output": "<string>",
"video_thumbnail": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"credits_used": 123,
"progress": "<string>",
"failed_reason": "<string>",
"media_job": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"webhook_url": "<string>",
"preview": "<string>"
}
About Request Data Structure of Webhook
When the ‘create a lipsync task’ interface is requested, if the ‘webhook_url’ is passed in the parameters, the program will initiate a POST request to this network address when the task succeeds or fails, with the following content:
{
'id': 'string',
'status': 'string',
'failed_reason': 'string',
'output': 'string',
}
Arguments:
id
(string): The unique identifier of the jobstatus
(string): The status of the job. Possible values arepending
,in_queue
,running
,failed
,done
failed_reason
(string): The reason of the failure if the job failedoutput
(string): The URL of the video if the job is done
Authorizations
API ID, from your settings page.
API Key, from your settings page.
Body
Type of character, only 'avatar' is supported.
avatar
- avatar
avatar
Avatar ID, a unique identifier for the avatar.
50
Scale of the avatar, ranging from 0.0 to 2.0.
0 <= x <= 2
Style of the avatar, default is normal
circle
- circlenormal
- normal
circle
, normal
Hide avatar, default false, if set to True the avatar will be hidden.
Type of input, currently only 'text' is supported.
text
- text
text
Input text for the voice synthesis, up to 2000 characters.
2000
Voice ID, if not provided, the default voice will be used.
50
Volume of the voiceover, ranging from 0.0 to 1.0.
0 <= x <= 1
Type of background, can be 'image' or 'video'.
image
- imagevideo
- video
image
, video
Background URL.
Background fit to the screen.
cover
- deprecated, use 'crop' insteadcrop
- The entire object is cropped to fill the box. The left/right or top/bottom of the object will be cropped.contain
- For image only. The entire object is scaled to fill the box, while preserving its aspect ratio. And the left/right or top/bottom of the box will be filled with blurred background.
cover
, crop
, contain
Effect applied to the background image. Can be null for no effect.
imageSlideLeft
- imageSlideLeftimageZoomIn
- imageZoomInimageZoomOut
- imageZoomOutimageWobbling
- imageWobblingimageThrob
- imageThrob
imageSlideLeft
, imageZoomIn
, imageZoomOut
, imageWobbling
, imageThrob
Caption style
normal-black
- NORMAL_BLACKnormal-white
- NORMAL_WHITEnormal-red
- NORMAL_REDnormal-blue
- NORMAL_BLUEneo
- NEObrick
- BRICKfrenzy
- FRENZYverana
- VERANAmustard
- MUSTARDglow
- GLOWmint
- MINTcoolers
- COOLERSbilo
- BILOtoons
- TOONSdeep-blue
- DEEP_BLUEmystique
- MYSTIQUEcaution
- CAUTIONduality
- DUALITY
normal-black
, normal-white
, normal-red
, normal-blue
, neo
, brick
, frenzy
, verana
, mustard
, glow
, mint
, coolers
, bilo
, toons
, deep-blue
, mystique
, caution
, duality
Font family
Montserrat
- MontserratJockey One
- JockeyOneLilita One
- LilitaOneMclaren
- MclarenCorben
- CorbenDela Gothic One
- DelaGothicOneComfortaa
- ComfortaaLuckiest Guy
- LuckiestGuyQuantico
- QuanticoPoppins
- Poppins
Montserrat
, Jockey One
, Lilita One
, Mclaren
, Corben
, Dela Gothic One
, Comfortaa
, Luckiest Guy
, Quantico
, Poppins
Font size
Font style
font-bold
- BOLDitalic
- ITALICunderline
- UNDERLINE
font-bold
, italic
, underline
Caption background color, hex color with an alpha channel: #RRGGBBAA.
Caption text color, hex color with an alpha channel: #RRGGBBAA.
Caption highlight color for the word currently being spoken, hex color with an alpha channel: #RRGGBBAA.
Caption max width in px
Caption line height
Caption text shadow
Hide caption
Transition effect between video inputs.
Transition effect for entering the video input. Can be null for no transition.
fade
- fadeleftSwipe
- leftSwiperightSwipe
- rightSwipetopSwipe
- topSwipebottomSwipe
- bottomSwipe
fade
, leftSwipe
, rightSwipe
, topSwipe
, bottomSwipe
Transition effect for exiting the video input. Can be null for no transition.
fade
- fadeleftSwipe
- leftSwiperightSwipe
- rightSwipetopSwipe
- topSwipebottomSwipe
- bottomSwipe
fade
, leftSwipe
, rightSwipe
, topSwipe
, bottomSwipe
Defines the visual style for this section of the video. If set, it will override character, background, and caption position and style settings. Default is null, existing settings will be used.
FullAvatar
- FullAvatar (Applicable to aspect_ratio 9x16, 16x9, 1x1)GreenScreenEffect
- GreenScreenEffect (Applicable to aspect_ratio 1x1, 16x9, 9x16)FullAvatarScreenProductOverlay
- FullAvatarScreenProductOverlay (Applicable to aspect_ratio 1x1, 16x9, 9x16)UpAndDown
- UpAndDown (Applicable to aspect_ratio 1x1, 9x16)SideBySide
- SideBySide (Applicable to aspect_ratio 1x1, 16x9)FullProduct
- FullProduct (Applicable to aspect_ratio 1x1, 16x9, 9x16)MagnifyingGlassCircle
- MagnifyingGlassCircle (Applicable to aspect_ratio 1x1, 16x9, 9x16)ReverseMagnifyingGlassCircle
- ReverseMagnifyingGlassCircle (Applicable to aspect_ratio 1x1, 16x9, 9x16)TwitterFrame
- TwitterFrame (Applicable to aspect_ratio 1x1, 16x9, 9x16)DramaticFullProduct
- DramaticFullProduct (Applicable to aspect_ratio 9x16)Dramatic
- Dramatic (Applicable to aspect_ratio 9x16)Vanilla
- Vanilla (Applicable to aspect_ratio 1x1, 16x9, 9x16)Vlog
- Vlog (Applicable to aspect_ratio 9x16)
FullAvatar
, GreenScreenEffect
, FullAvatarScreenProductOverlay
, UpAndDown
, SideBySide
, FullProduct
, MagnifyingGlassCircle
, ReverseMagnifyingGlassCircle
, TwitterFrame
, DramaticFullProduct
, Dramatic
, Vanilla
, Vlog
Call To Action setting.
CTA logo.
URL for the logo.
Scale of the logo, ranging from 0.0 to 2.0. Set to 0.0 for automatic scaling based on optimal size.
0 <= x <= 1
CTA caption.
Caption for the CTA.
200
Caption style
normal-black
- NORMAL_BLACKnormal-white
- NORMAL_WHITEnormal-red
- NORMAL_REDnormal-blue
- NORMAL_BLUEneo
- NEObrick
- BRICKfrenzy
- FRENZYverana
- VERANAmustard
- MUSTARDglow
- GLOWmint
- MINTcoolers
- COOLERSbilo
- BILOtoons
- TOONSdeep-blue
- DEEP_BLUEmystique
- MYSTIQUEcaution
- CAUTIONduality
- DUALITY
normal-black
, normal-white
, normal-red
, normal-blue
, neo
, brick
, frenzy
, verana
, mustard
, glow
, mint
, coolers
, bilo
, toons
, deep-blue
, mystique
, caution
, duality
Font family
Montserrat
- MontserratJockey One
- JockeyOneLilita One
- LilitaOneMclaren
- MclarenCorben
- CorbenDela Gothic One
- DelaGothicOneComfortaa
- ComfortaaLuckiest Guy
- LuckiestGuyQuantico
- QuanticoPoppins
- Poppins
Montserrat
, Jockey One
, Lilita One
, Mclaren
, Corben
, Dela Gothic One
, Comfortaa
, Luckiest Guy
, Quantico
, Poppins
Font size
Font style
font-bold
- BOLDitalic
- ITALICunderline
- UNDERLINE
font-bold
, italic
, underline
Caption background color, hex color with an alpha channel: #RRGGBBAA.
Caption text color, hex color with an alpha channel: #RRGGBBAA.
Caption highlight color for the word currently being spoken, hex color with an alpha channel: #RRGGBBAA.
Caption max width in px
Line height for the caption.
Caption text shadow
Hide caption
Blur the background of the CTA.
Transition effect between video inputs.
Transition effect for entering the video input. Can be null for no transition.
fade
- fadeleftSwipe
- leftSwiperightSwipe
- rightSwipetopSwipe
- topSwipebottomSwipe
- bottomSwipe
fade
, leftSwipe
, rightSwipe
, topSwipe
, bottomSwipe
Transition effect for exiting the video input. Can be null for no transition.
fade
- fadeleftSwipe
- leftSwiperightSwipe
- rightSwipetopSwipe
- topSwipebottomSwipe
- bottomSwipe
fade
, leftSwipe
, rightSwipe
, topSwipe
, bottomSwipe
9x16
- 9X1616x9
- 16X91x1
- 1X1
9x16
, 16x9
, 1x1
Call To Action setting to the end of video.
CTA background.
Type of background, can be 'image' or 'video'.
image
- imagevideo
- video
image
, video
Background URL.
Background fit to the screen.
cover
- deprecated, use 'crop' insteadcrop
- The entire object is cropped to fill the box. The left/right or top/bottom of the object will be cropped.contain
- For image only. The entire object is scaled to fill the box, while preserving its aspect ratio. And the left/right or top/bottom of the box will be filled with blurred background.
cover
, crop
, contain
Effect applied to the background image. Can be null for no effect.
imageSlideLeft
- imageSlideLeftimageZoomIn
- imageZoomInimageZoomOut
- imageZoomOutimageWobbling
- imageWobblingimageThrob
- imageThrob
imageSlideLeft
, imageZoomIn
, imageZoomOut
, imageWobbling
, imageThrob
CTA logo.
URL for the logo.
Scale of the logo, ranging from 0.0 to 2.0. Set to 0.0 for automatic scaling based on optimal size.
0 <= x <= 1
CTA caption.
Caption for the CTA.
200
Caption style
normal-black
- NORMAL_BLACKnormal-white
- NORMAL_WHITEnormal-red
- NORMAL_REDnormal-blue
- NORMAL_BLUEneo
- NEObrick
- BRICKfrenzy
- FRENZYverana
- VERANAmustard
- MUSTARDglow
- GLOWmint
- MINTcoolers
- COOLERSbilo
- BILOtoons
- TOONSdeep-blue
- DEEP_BLUEmystique
- MYSTIQUEcaution
- CAUTIONduality
- DUALITY
normal-black
, normal-white
, normal-red
, normal-blue
, neo
, brick
, frenzy
, verana
, mustard
, glow
, mint
, coolers
, bilo
, toons
, deep-blue
, mystique
, caution
, duality
Font family
Montserrat
- MontserratJockey One
- JockeyOneLilita One
- LilitaOneMclaren
- MclarenCorben
- CorbenDela Gothic One
- DelaGothicOneComfortaa
- ComfortaaLuckiest Guy
- LuckiestGuyQuantico
- QuanticoPoppins
- Poppins
Montserrat
, Jockey One
, Lilita One
, Mclaren
, Corben
, Dela Gothic One
, Comfortaa
, Luckiest Guy
, Quantico
, Poppins
Font size
Font style
font-bold
- BOLDitalic
- ITALICunderline
- UNDERLINE
font-bold
, italic
, underline
Caption background color, hex color with an alpha channel: #RRGGBBAA.
Caption text color, hex color with an alpha channel: #RRGGBBAA.
Caption highlight color for the word currently being spoken, hex color with an alpha channel: #RRGGBBAA.
Caption max width in px
Line height for the caption.
Caption text shadow
Hide caption
Blur the background of the CTA.
Transition effect between video inputs.
Transition effect for entering the video input. Can be null for no transition.
fade
- fadeleftSwipe
- leftSwiperightSwipe
- rightSwipetopSwipe
- topSwipebottomSwipe
- bottomSwipe
fade
, leftSwipe
, rightSwipe
, topSwipe
, bottomSwipe
Transition effect for exiting the video input. Can be null for no transition.
fade
- fadeleftSwipe
- leftSwiperightSwipe
- rightSwipetopSwipe
- topSwipebottomSwipe
- bottomSwipe
fade
, leftSwipe
, rightSwipe
, topSwipe
, bottomSwipe
Duration of the CTA in seconds.
Response
Output video
Generated Video Thumbnail URL
Credits used in this api call
The reason for failure, if the lipsync request failed
Status of the lipsync request
Preview video
The name of the lipsync request.
255
The media job associated with the lipsync request.
The webhook URL to be called upon completion of the lipsync request
200
curl --request POST \
--url https://api.creatify.ai/api/lipsyncs/multi_avatar/ \
--header 'Content-Type: application/json' \
--header 'X-API-ID: <api-key>' \
--header 'X-API-KEY: <api-key>' \
--data '{
"video_inputs": [
{
"character": {
"type": "avatar",
"avatar_id": "<string>",
"scale": 1,
"avatar_style": "circle",
"offset": {
"x": 0,
"y": 0
},
"hidden": false
},
"voice": {
"type": "text",
"input_text": "<string>",
"voice_id": "<string>",
"volume": 0.8
},
"caption_setting": {
"style": "normal-black",
"offset": {
"x": 0,
"y": 0.4
},
"font_family": "Montserrat",
"font_size": 70,
"font_style": "font-bold",
"background_color": "<string>",
"text_color": "<string>",
"highlight_text_color": "<string>",
"max_width": 123,
"line_height": 123,
"text_shadow": "<string>",
"hidden": false
},
"background": {
"type": "image",
"url": "<string>",
"fit": "cover",
"effect": "imageSlideLeft"
},
"transition_effect": {
"transition_in": "fade",
"transition_out": "fade"
},
"visual_style": "FullAvatar",
"cta": {
"cta_logo": {
"url": "<string>",
"scale": 0.25,
"offset": {
"x": 123,
"y": 123
}
},
"cta_caption": {
"caption": "<string>",
"caption_setting": {
"style": "normal-black",
"offset": {
"x": 123,
"y": 123
},
"font_family": "Montserrat",
"font_size": 123,
"font_style": "font-bold",
"background_color": "<string>",
"text_color": "<string>",
"highlight_text_color": "<string>",
"max_width": 123,
"line_height": 123,
"text_shadow": "<string>",
"hidden": true
}
},
"cta_background_blur": false,
"transition_effect": {
"transition_in": "fade",
"transition_out": "fade"
}
}
}
],
"aspect_ratio": "9x16",
"background_music": {
"url": "<string>",
"volume": 0.2
},
"cta_end": {
"cta_logo": {
"url": "<string>",
"scale": 0.5,
"offset": {
"x": 123,
"y": 123
}
},
"cta_caption": {
"caption": "<string>",
"caption_setting": {
"style": "normal-black",
"offset": {
"x": 123,
"y": 123
},
"font_family": "Montserrat",
"font_size": 123,
"font_style": "font-bold",
"background_color": "<string>",
"text_color": "<string>",
"highlight_text_color": "<string>",
"max_width": 123,
"line_height": 123,
"text_shadow": "<string>",
"hidden": true
}
},
"cta_background_blur": false,
"transition_effect": {
"transition_in": "fade",
"transition_out": "fade"
},
"cta_duration": 2,
"cta_background": {
"type": "image",
"url": "<string>",
"fit": "cover",
"effect": "imageSlideLeft"
}
},
"webhook_url": "<string>"
}'
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"output": "<string>",
"video_thumbnail": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"credits_used": 123,
"progress": "<string>",
"failed_reason": "<string>",
"media_job": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"webhook_url": "<string>",
"preview": "<string>"
}