API Docs Center

Timbre Library API


Updated: 2026-07-14

Overview

  • Query the timbre library available to the account bound to the API Key.
  • Supports paginated public timbre queries.
  • The server resolves the real user ID from the API Key. The user identity is recognized automatically, and userId is not required.

Base URL

https://video-translation.viitor.com


Authentication

Authorization: Bearer vt_live_xxx

The OpenAPI server resolves the real user ID from the API Key.


Common Response Structure

FieldTypeDescription
codeInteger0 means success; non-zero means failure
messageStringResponse message
dataObjectBusiness data

For paginated endpoints, the data structure is:

FieldTypeDescription
currentIntegerCurrent page
sizeIntegerPage size
totalLongTotal records
pagesIntegerTotal pages
recordsArrayRecords on the current page

sortType Enum

The public timbre pagination endpoint supports sortType.

ValueDescription
0Default sort
1Trending
2Most used
3Publish time
4Timbre name
6Most characters generated

Query Public Timbres

Endpoint

  • Request URL: https://video-translation.viitor.com/openapi/v1/timbre/open/pageList
  • Method: POST
  • Content-Type: application/json

HTTP Headers

HeaderRequiredTypeDescription
Content-TypeYesStringapplication/json;charset=UTF-8
AcceptRecommendedStringapplication/json;charset=UTF-8
AuthorizationYesStringBearer <API_KEY>

Request Body

FieldTypeRequiredDescription
currentIntegerNoCurrent page. Default: 1
pageSizeIntegerNoPage size. Default: 12, maximum: 400
timbreNameStringNoTimbre name. Supports fuzzy search
sortTypeIntegerNoSort type. Default: 0

Successful records Fields

FieldTypeDescription
timbreIdIntegerTimbre ID
timbreNameStringTimbre name
timbreEnglishNameStringEnglish timbre name
voiceNameStringVoice identifier. Can be used as voiceName for speech synthesis
vocalAudioUrlStringVocal audio URL
avatarUrlStringTimbre avatar URL
createTimeLongCreation time
commonIntegerTimbre type. 1 means public timbre

Request Example

curl -X POST "https://video-translation.viitor.com/openapi/v1/timbre/open/pageList" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer vt_live_xxx" \
  -d '{
    "current": 1,
    "pageSize": 10,
    "timbreName": "Nathan",
    "sortType": 1
  }'

Successful Response Example

{
  "code": 0,
  "message": "OK",
  "data": {
    "current": 1,
    "size": 10,
    "total": 1,
    "pages": 1,
    "records": [
      {
        "timbreId": 16391,
        "timbreName": "博文老师",
        "timbreEnglishName": "NathanNarrator",
        "voiceName": "CHINESE_SC_NARR_DOC",
        "vocalAudioUrl": "https://tts-ap-singapore-1306922583.cos.accelerate.myqcloud.com/ref_audios/CHINESE_SC_NARR_DOC.wav",
        "avatarUrl": "https://viitor-cdn.viitor.com/timbre_library/avatar/202509019/1f777c23ce07408d985ce3c63fc334f4.jpg",
        "common": 1
      }
    ]
  }
}

Common Error Codes

codemessageDescription
0OKSuccess
1103No PrivilegeThe account is not VIP or has no permission to call the API
2001Invalid ParameterInvalid parameter
400001missing_api_keyMissing API Key
400002invalid_api_keyInvalid API Key
400003disabled_api_keyAPI Key is disabled
400004expired_api_keyAPI Key has expired

© 2026 HighRas Limited