The resources (image, video, voice) generated by our API are valid for 7 days. Please save the relevant resources as soon as possible to prevent expiration.

Create lipSync

POST https://openapi.akool.com/api/open/v3/content/video/lipsync

Request Headers

ParameterValueDescription
AuthorizationBearer tokenYour API Key used for request authorization. You can get from https://openapi.akool.com/api/open/v3/getToken api.

Body Attributes

ParameterTypeValueDescription
video_urlStringThe video url address you want to lipsync.
audio_urlStringresource address of the audio.
webhookUrlStringCallback url address based on HTTP request.

Response Attributes

ParameterTypeValueDescription
codeint1000Interface returns business status code(1000:success)
msgStringInterface returns status information
dataObject{ "_id": "", "video_status": 1, "video": "" }id: Interface returns data, video_status: the status of video: [1:queueing, 2:processing, 3:completed, 4:failed], video: the url of Generated video

Example

Body

{
    "video_url": "https://d11fbe263bhqij.cloudfront.net/agicontent/video/global_reach/Global_reach_EN_01.mp4",
    "audio_url": "https://drz0f01yeq1cx.cloudfront.net/1712719410293-driving_audio_2.wav",
    "webhookUrl":"https://openapitest.akool.com/api/open/v3/test/webhook"
}

Request

curl --location 'https://openapi.akool.com/api/open/v3/content/video/lipsync' \
--header 'authorization: Bearer token' \
--header 'content-type: application/json' \
--data '{
    "video_url": "https://d11fbe263bhqij.cloudfront.net/agicontent/video/global_reach/Global_reach_EN_01.mp4",
    "audio_url": "https://drz0f01yeq1cx.cloudfront.net/1712719410293-driving_audio_2.wav",
    "webhookUrl":"https://openapitest.akool.com/api/open/v3/test/webhook"
}'

Response

{
    "code": 1000,
    "msg": "OK",
    "data": {
       "create_time": 1712720702523,
        "uid": 100002,
        "type": 9,
        "from": 2,
        "target_video": "https://d11fbe263bhqij.cloudfront.net/agicontent/video/global_reach/Global_reach_EN_01.mp4",
        "faceswap_quality": 2,
        "video_id": "8ddc4a27-d173-4cf5-aa37-13e340fed8f3",
        "video_status": 1,   // current status of video: 【1:queueing(The requested operation is being processed),2:processing(The requested operation is being processing),3:completed(The request operation has been processed successfully),4:failed(The request operation processing failed, the reason for the failure can be viewed in the video translation details.)】
        "video_lock_duration": 11.7,
        "deduction_lock_duration": 20,
        "external_video": "",
        "video": "",  // the url of Generated video
        "storage_loc": 1,
        "input_audio": "https://drz0f01yeq1cx.cloudfront.net/1712719410293-driving_audio_2.wav",
        "webhookUrl": "https://openapitest.akool.com/api/open/v3/test/webhook",
        "task_id": "66160b3ee3ef778679dfd30f",
        "lipsync": true,
        "_id": "66160f989dfc997ac289037b",
        "__v": 0
    }
}

Get Video Info Result

GET https://openapi.akool.com/api/open/v3/content/video/infobymodelid?video_model_id=66160f989dfc997ac289037b

Request Headers

ParameterValueDescription
AuthorizationBearer tokenYour API Key used for request authorization. You can get from https://openapi.akool.com/api/open/v3/getToken api.

Query Attributes

ParameterTypeValueDescription
video_model_idStringNULLvideo db id: You can get it based on the _id field returned by https://openapi.akool.com/api/open/v3/content/video/lipsync .

Response Attributes

ParameterTypeValueDescription
codeint1000Interface returns business status code(1000:success)
msgStringOKInterface returns status information
dataObject{ video_status:1, _id:"", video:"" }video_status: the status of video:【1:queueing, 2:processing, 3:completed, 4:failed】 video: Generated video resource url _id: Interface returns data

Example

Request

curl --location 'http://openapi.akool.com/api/open/v3/content/video/infobymodelid?video_model_id=66160f989dfc997ac289037b' \
--header 'Authorization: Bearer token'

Response

{
    "code": 1000,
    "msg": "OK",
    "data": {
        "faceswap_quality": 2,
        "storage_loc": 1,   
        "_id": "66160f989dfc997ac289037b",  
        "create_time": 1692242625334,   
        "uid": 378337,  
        "type": 2,  
        "from": 1,  
        "video_id": "788bcd2b-09bb-4e9c-b0f2-6d41ee5b2a67", 
        "video_lock_duration": 7.91,    
        "deduction_lock_duration": 10, 
        "video_status": 2,  // current status of video: 【1:queueing(The requested operation is being processed),2:processing(The requested operation is being processing),3:completed(The request operation has been processed successfully),4:failed(The request operation processing failed, the reason for the failure can be viewed in the video translation details.)】
        "external_video": "", 
        "video": ""  //  Generated video resource url
    }
}

Response Code Description

Please note that if the value of the response code is not equal to 1000, the request is failed or wrong
ParameterValueDescription
code1000Success
code1003Parameter error or Parameter can not be empty
code1008The content you get does not exist
code1009You do not have permission to operate
code1101Invalid authorization or The request token has expired
code1102Authorization cannot be empty
code1200The account has been banned
code1201create audio error, please try again later
code1202The same video cannot be translated lipSync in the same language more than 1 times
code1203video should be with audio
code1204Your video duration is exceed 60s!
code1205Create video error, please try again later
code1207The video you are using exceeds the size limit allowed by the system by 300M
code1209Please upload a video in another encoding format
code1210The video you are using exceeds the value allowed by the system by 60fp
code1211Create lipsync error, please try again later