curl --request POST \
--url https://api.creatify.ai/api/lipsyncs_v2/ \
--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>",
"name": "<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,
"duration": 123,
"progress": "<string>",
"failed_reason": "<string>",
"media_job": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"webhook_url": "<string>",
"preview": "<string>",
"editor_url": "<string>",
"aspect_ratio": "16x9",
"video_inputs": [
"<any>"
]
}
API that converts a list of texts, voices and avatars to vivid videos of many people speaking. Creating a video through this endpoint costs 5 credits for every 30 seconds.
curl --request POST \
--url https://api.creatify.ai/api/lipsyncs_v2/ \
--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>",
"name": "<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,
"duration": 123,
"progress": "<string>",
"failed_reason": "<string>",
"media_job": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"webhook_url": "<string>",
"preview": "<string>",
"editor_url": "<string>",
"aspect_ratio": "16x9",
"video_inputs": [
"<any>"
]
}
{
'id': 'string',
'status': 'string',
'failed_reason': 'string',
'output': 'string',
}
id
(string): The unique identifier of the jobstatus
(string): The status of the job. Possible values are pending
, 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 doneAPI ID, from your settings page.
API Key, from your settings page.
The response is of type object
.