Assets API

Manage custom faces, voices, and driving motions. These endpoints are public and do not require authentication.

List Faces

Get a list of available standard faces.

GET /v1/faces

Response

{
  "faces": [
    {
      "id": "default",
      "filename": "default.jpg",
      "description": "Default face"
    },
    {
      "id": "face1",
      "filename": "face1.jpg",
      "description": "Face1 face"
    }
  ]
}

List Voices

Get a list of available standard voices.

GET /v1/voices

Response

{
  "voices": [
    {
      "id": "default",
      "filename": "default.wav",
      "description": "Default voice"
    },
    {
      "id": "alice",
      "filename": "alice.mp3",
      "description": "Alice voice"
    },
    {
      "id": "anthony",
      "filename": "anthony.wav",
      "description": "Anthony voice"
    }
  ]
}

List Driving Motions

Get a list of available standard driving motions.

GET /v1/driving

Response

{
  "driving": [
    {
      "id": "default",
      "filename": "default.pkl",
      "description": "Default driving motion"
    },
    {
      "id": "idle",
      "filename": "idle.pkl",
      "description": "Idle driving motion"
    },
    {
      "id": "AgreeYesTotaly",
      "filename": "AgreeYesTotaly.pkl",
      "description": "AgreeYesTotaly driving motion"
    }
  ]
}

Using Assets in Sessions

You can use standard assets or custom assets (uploaded via the platform) in your sessions:

Standard Assets

Use the asset ID directly (e.g., "face1", "alice", "idle"):

// Browser JS / Node.js
const response = await fetch('https://api.rtav.io/v1/sessions', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer rtav_ak_your_api_key',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    model: 'gpt-5.2',
    voice: 'alice',
    face: 'face1',
    driving: 'idle'
  })
});

Custom Assets

Use the UUID of your custom asset (uploaded via the platform dashboard):

// Browser JS / Node.js
const response = await fetch('https://api.rtav.io/v1/sessions', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer rtav_ak_your_api_key',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    model: 'gpt-5.2',
    voice: '550e8400-e29b-41d4-a716-446655440000',  // Custom voice UUID
    face: '660e8400-e29b-41d4-a716-446655440001',    // Custom face UUID
    driving: '770e8400-e29b-41d4-a716-446655440002'  // Custom driving UUID
  })
});