Path: 宝塔面板 API 参考 › SSH 终端 - terminal

`POST /xterm`

获取 Web SSH 终端的当前配置。

## Request body

_Required._

- `opPostXterm.request_time` (string, required) — Unix 时间戳；与接口密钥一起生成 request_token。
- `opPostXterm.request_token` (string, required) — 按 API 概览中的双重 MD5 签名算法生成。
- `opPostXterm.action` (string, required) — 固定值 `completion_tool_status`

## Example request

```text
{
  "request_time": "string",
  "request_token": "string",
  "action": "string"
}
```

## Code samples

### cURL（填写面板地址与签名）

```curl
curl --request POST \
  --url "https://your-panel.example.com:8888/xterm" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "request_time=<Unix时间戳>" \
  --data-urlencode "request_token=<按 API 概览生成的签名>" \
  --data-urlencode "action=completion_tool_status"
```

## Responses

### default

接口响应，业务状态见下方详细说明。

#### Example

```json
[]
```

- `opPostXterm.response.default.use_completion` (boolean, optional) — 是否开启命令补全
- `opPostXterm.response.default.terminal_theme` (boolean, optional) — 是否使用终端主题
- `opPostXterm.response.default.ai_shell` (boolean, optional) — 是否开启 AI Shell
- `opPostXterm.response.default.ai_shell_analyze` (boolean, optional) — 是否开启 AI 分析


## completion_tool_status

获取 Web SSH 终端的当前配置。

- **路由**：`POST /xterm`
- **action**：`completion_tool_status`

## 输入参数

| 参数名称 | 必选 | 类型 | 描述 |
|----------|------|------|------|
| action | 是 | String | 固定值 `completion_tool_status` |

## 输出参数

| 参数名称 | 类型 | 描述 |
|----------|------|------|
| use_completion | Boolean | 是否开启命令补全 |
| terminal_theme | Boolean | 是否使用终端主题 |
| ai_shell | Boolean | 是否开启 AI Shell |
| ai_shell_analyze | Boolean | 是否开启 AI 分析 |

## 示例

```json
{"terminal_theme": false, "use_completion": false, "ai_shell": false, "ai_shell_analyze": false}
```

---

## set_completion_tool_status

开启或关闭命令补全功能。开启时会从 download.bt.cn 下载补全插件包。

- **路由**：`POST /xterm`
- **action**：`set_completion_tool_status`

## 输入参数

| 参数名称 | 必选 | 类型 | 描述 |
|----------|------|------|------|
| action | 是 | String | 固定值 `set_completion_tool_status` |
| status | 是 | Integer | `1` = 开启，`0` = 关闭 |

## 输出参数

| 参数名称 | 类型 | 描述 |
|----------|------|------|
| status | Boolean | `true` 操作成功 |
| msg | String | `开启成功` / `关闭成功` |

## 示例

```
action=set_completion_tool_status&status=0
```

```json
{"status": true, "msg": "关闭成功"}
```

---

## set_terminal_theme

开启或关闭终端主题。

- **路由**：`POST /xterm`
- **action**：`set_terminal_theme`

## 输入参数

| 参数名称 | 必选 | 类型 | 描述 |
|----------|------|------|------|
| action | 是 | String | 固定值 `set_terminal_theme` |
| status | 是 | Integer | `1` = 开启，`0` = 关闭 |

## 输出参数

| 参数名称 | 类型 | 描述 |
|----------|------|------|
| status | Boolean | `true` |
| msg | String | `设置成功` |

---

## set_ai_shell_status

开启或关闭 AI Shell 功能。

- **路由**：`POST /xterm`
- **action**：`set_ai_shell_status`

## 输入参数

| 参数名称 | 必选 | 类型 | 描述 |
|----------|------|------|------|
| action | 是 | String | 固定值 `set_ai_shell_status` |
| status | 是 | Integer | `1` = 开启，`0` = 关闭 |

## 输出参数

| 参数名称 | 类型 | 描述 |
|----------|------|------|
| status | Boolean | `true` 操作成功 |
| msg | String | `开启成功` / `关闭成功` |

---

## set_ai_shell_analyze

开启或关闭 AI 终端分析功能。

- **路由**：`POST /xterm`
- **action**：`set_ai_shell_analyze`

## 输入参数

| 参数名称 | 必选 | 类型 | 描述 |
|----------|------|------|------|
| action | 是 | String | 固定值 `set_ai_shell_analyze` |
| status | 是 | Integer | `1` = 开启，`0` = 关闭 |

## 输出参数

| 参数名称 | 类型 | 描述 |
|----------|------|------|
| status | Boolean | `true` 操作成功 |
| msg | String | `开启成功` / `关闭成功` |

---

## get_host_list / get_command_list

获取已保存的 SSH 主机列表和命令历史。

- **路由**：`POST /xterm`
- **action**：`get_host_list` 或 `get_command_list`

无额外参数，返回空数组表示无已保存数据。

```json
[]
```

