Skip to main content
POST
/
kling
/
v1
/
videos
/
advanced-lip-sync
Create an advanced Kling lip-sync task
curl --request POST \
  --url https://api.cometapi.com/kling/v1/videos/advanced-lip-sync \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "session_id": "806556222048190514",
  "face_choose": [
    {
      "face_id": "0",
      "sound_file": "https://cdn1.suno.ai/e5c97078-3260-4354-a3a6-1d7249262a48.mp3",
      "sound_start_time": "1200",
      "sound_end_time": "5000",
      "sound_insert_time": "0"
    }
  ]
}
'
{
  "code": 123,
  "message": "<string>",
  "data": {
    "task_id": "<string>",
    "task_status": "<string>",
    "created_at": 123,
    "updated_at": 123
  }
}
Use this endpoint to create an advanced lip-sync task after you already identified faces in the source video.

Before you call it

  • Start with Lip-Sync to get the session_id and available face_id values
  • Build one or more face_choose entries that map each face to an audio segment
  • Make sure the timing fields describe how the audio should align inside the video

Task flow

1

Identify faces first

Run Lip-Sync on the source video and keep the returned session_id plus the target face_id values.
2

Create the advanced lip-sync task

Submit session_id and the face_choose array through this endpoint.
3

Track the generated task

Save the returned task id for status checks and final result retrieval.
For the complete parameter reference, see the official Kling documentation.

Authorizations

Authorization
string
header
required

Bearer token authentication. Use your CometAPI key.

Body

application/json
session_id
string
default:806556222048190514
required

Session id returned by the face identification (lip-sync) endpoint.

face_choose
object[]
required

Face-to-audio mappings. Each entry connects a detected face to an audio segment for lip-sync.

Response

200 - application/json

Task accepted.

code
integer
required
message
string
required
data
object
required