Skip to main content
POST
/
api
/
v1
/
client
/
job
/
CreateTask
kling avatar image to video generation
curl --request POST \
  --url https://api.crun.ai/api/v1/client/job/CreateTask \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "model": "kling/avatar",
  "input": {
    "mode": "pro",
    "image_url": "https://example.com/reference_avatar.png",
    "audio_url": "https://example.com/avatar_audio.mp3",
    "prompt": "While talking, excitedly shaking head, finally reaching out and making a fist, deciding to set off, hopping happily"
  }
}
'
{
  "code": 200,
  "message": "success",
  "data": {
    "task_id": "task_12345678"
  }
}

Overview

Kling Avatar from transforms a single static image into a talking video that matches your audio. Upload a portrait and an audio file, and the model generates facial movements, lip sync, and expressions that follow the speech patterns in your audio.

Tips for Best Results

Use high-quality, front-facing portraits where facial features are clearly visible. Avoid extreme angles or heavy occlusion of the face. Higher resolution source images produce better identity preservation and fewer artifacts.

Query Task Status

After submitting a task, use the unified query endpoint to check progress and retrieve results:

Get Task Info

Learn how to query task status and retrieve generation results
For production use, we recommend using the callback_url parameter to receive automatic notifications when generation completes, rather than polling the status endpoint.

Models Overview

Explore all available models

Common API

Check credits and account usage

Authorizations

x-api-key
string
header
required

All APIs require authentication via API Key.

Get API Key:

  1. Visit API Key Management Page to get your API Key

Usage: Add to request header:

x-api-key: YOUR_API_KEY

Note:

  • Keep your API Key secure and do not share it with others
  • If you suspect your API Key has been compromised, reset it immediately in the management page

Body

application/json
model
enum<string>
required

The model name to use for generation. Required field.

  • Must be kling/avatar for this endpoint
Available options:
kling/avatar
input
object
required

Input parameters for the kling avatar image-to-video generation task

callback_url
string<uri>

Optional. Callback URL for receiving task completion notifications.

  • System will POST task status and results to this URL when generation completes
  • Callback payloads structure is consistent with the data object returned by the task status query
  • Your callback endpoint should accept POST requests with JSON payload containing results
  • It returns an HTTP 200 status code upon successful receipt
Example:

"https://your-domain.com/api/callback"

Response

Request successful

code
enum<integer>

Response status code

  • 200: Success - Request has been processed successfully
  • 401: Unauthorized - Authentication credentials are missing or invalid
  • 402: Insufficient Credits - Account does not have enough credits to perform the operation
  • 404: Not Found - The requested resource or endpoint does not exist
  • 422: Validation Error - The request parameters failed validation checks
  • 429: Rate Limited - Request limit has been exceeded for this resource
  • 455: Service Unavailable - System is currently undergoing maintenance
  • 500: Server Error - An unexpected error occurred while processing the request
  • 501: Generation Failed - Content generation task failed
  • 505: Feature Disabled - The requested feature is currently disabled
Available options:
200,
401,
402,
404,
422,
429,
455,
500,
501,
505
message
string

Response message, error description when failed

Example:

"success"

data
object