List avatars
January 12, 2026
Table of contents
This endpoint retrieves a list of avatars. You can list either your personal saved avatars or browse system-provided templates.
Avatars are digital characters that can be animated with lip-sync using POST /avatars/video.
https://api.useapi.net/v1/kling/avatars/?…
Request Headers
Authorization: Bearer {API token}
API tokenis required, see Setup useapi.net for details.
Query Parameters
-
emailis optional when only one account configured. However, if you have multiple accounts configured, this parameter becomes required. -
typeis optional, the type of avatars to list. Supported values:personal(default),templates.personal: Your saved avatars created via POST /avatarstemplates: System-provided avatar templates
Responses
-
Personal avatars response (type=personal):
[ { "id": "123456789012", "nickname": "My Fashion Avatar", "prompt": "Elegant woman in professional attire", "scene": "advertising_marketing", "imageResources": [ { "url": "https://s21-kling.klingai.com/ai-platform/.../avatar.jpg", "sourceFrom": 2 } ], "ttsSpeaker": "speaker_id_123", "ttsSpeed": "1", "ttsEmotionKey": "neutral", "createTime": 1736640000000, "updateTime": 1736640000000 } ]Templates response (type=templates):
[ { "id": "12345", "name": "Business Woman", "imageResources": [ { "url": "https://s21-kling.klingai.com/ai-platform/.../template.jpg" } ], "prompt": "Professional businesswoman in formal attire" } ] -
{ "error": "Unauthorized", "code": 401 }
Model
Array<{
id: string
nickname?: string
name?: string
prompt: string
scene?: string
imageResources: {
url: string
sourceFrom?: number
}[]
ttsSpeaker?: string
ttsSpeed?: string
ttsEmotionKey?: string
createTime?: number
updateTime?: number
}>
Avatar ID Format
- Personal avatars have long IDs (more than 8 digits), e.g.,
123456789012 - Template avatars have short IDs (8 digits or fewer), e.g.,
12345
This distinction is used internally when generating avatar videos.
Examples
-
curl "https://api.useapi.net/v1/kling/avatars/[email protected]&type=personal" \ -H "Accept: application/json" \ -H "Authorization: Bearer ..." -
const token = "API token"; const email = "Previously configured account email"; const apiUrl = `https://api.useapi.net/v1/kling/avatars/?email=${email}&type=personal`; const response = await fetch(apiUrl, { headers: { "Authorization": `Bearer ${token}`, }, }); const result = await response.json(); console.log("response", {response, result}); -
import requests token = "API token" email = "Previously configured account email" apiUrl = f"https://api.useapi.net/v1/kling/avatars/?email={email}&type=personal" headers = { "Authorization" : f"Bearer {token}" } response = requests.get(apiUrl, headers=headers) print(response, response.json())