---
name: "getPanelAgentRoleTemplateList"
mode: "api"
versionRequirements:
  - { name: "@tuya-miniapp/cloud-api", version: "1.0.6" }
---

## getPanelAgentRoleTemplateList

> [VERSION] @tuya-miniapp/cloud-api >= 1.0.6

> 💡 This API relies on cloud capabilities; authorize it under Development Settings - Cloud Capabilities in the [Mini App Developer Platform](https://platform.tuya.com/miniapp/).

### Description

Query role template list.

### Parameters

`Params`

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `params` | `GetPanelAgentRoleTemplateListParams` | Yes | Request body |

### Return Value

Type: `Promise<PanelAgentRoleTemplateListItem[]>`

GetPanelAgentRoleTemplateListResult (see type definitions and minituya response parameters for field meanings)

##### PanelAgentRoleTemplateListItem

| Property | Type | Description |
| --- | --- | --- |
| `templateId` | `string` | Role template ID |
| `roleId` | `string` | Role ID |
| `roleName` | `string` | Role name |
| `roleDesc` | `string` | Role introduction |
| `roleImgUrl` | `string` | Role icon |
| `roleIntroduce` | `string` | Role features |
| `useLangCode` | `string` | Role language code |
| `useLangName` | `string` | Role language name |
| `useTimbreId` | `string` | Role voice ID |
| `useTimbreName` | `string` | Role voice name |
| `useTimbreSupportLangs` | `string` | Voice languages supported by the role, separated by commas |
| `useTimbreSupportLangNames` | `string` | Voice language names supported by the role, separated by commas |
| `useLlmId` | `string` | Role language model |
| `useLlmName` | `string` | Role language model name |
| `inConversation` | `boolean` | In session |
| `lastTextAnswer` | `string` | Most recent reply text |
| `bindStatus` | `boolean` | Binding status |

### Referenced Types

##### `interface` GetPanelAgentRoleTemplateListParams

| Property | Type | Description |
| --- | --- | --- |
| `devId` | `string` | Device ID |
| `tagCode` | `string` | Tags |


### Examples

#### Request example

```typescript
import { getPanelAgentRoleTemplateList } from '@tuya-miniapp/cloud-api';

const params = {
  devId: 'your_device_id',
  tagCode: 'assistant',
};

getPanelAgentRoleTemplateList(params)
  .then(result => {
    console.log('Role template list:', result);
  })
  .catch(error => {
    console.error('Failed to get role template list:', error);
  });
```

#### Response example

```json
[
  {
    "templateId": "template_001",
    "roleId": "role_001",
    "roleName": "Smart assistant",
    "roleDesc": "A professional smart assistant",
    "roleImgUrl": "https://example.com/role_avatar.jpg",
    "roleIntroduce": "I'm your personal smart assistant",
    "useLangCode": "zh-CN",
    "useLangName": "Chinese (Simplified)",
    "useTimbreId": "timbre_001",
    "useTimbreName": "Gentle female voice",
    "useTimbreSupportLangs": "zh-CN,en-US",
    "useTimbreSupportLangNames": "Chinese (Simplified),English",
    "useLlmId": "1001",
    "useLlmName": "GPT-3.5-turbo",
    "inConversation": false,
    "lastTextAnswer": "",
    "bindStatus": false
  }
]
```
