AI 助手
接入大模型的设置与测试连接、模型评分表、可用状态与额度、会话记录、助手外观。
aiAI 助手鉴权: 用户19 个接口列出我的 AI 会话
GET
/api/v2/ai/conversations鉴权: 用户
获取我的 AI 会话
GET
/api/v2/ai/conversations/{id}鉴权: 用户
删除我的 AI 会话
DELETE
/api/v2/ai/conversations/{id}鉴权: 用户
获取我的助手外观
GET
/api/v2/ai/look鉴权: 用户
保存我的助手外观
PUT
/api/v2/ai/look鉴权: 用户
请求体 application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 必填 | 助手名;空 = 用缺省名。 |
| pet | AiPet | 必填 | 助手形象:orb 光球、cat 猫、dog 狗、bot 机器人、ai 按 AI 定制的参数(spec)画。 |
| spec | AiLookSpec | — | AI 定制形象的参数清单(白名单内的取值,面板用固定的 SVG 部件按它画)。AiLook 里没有 = 没定制过。 写外观时 pet=ai 或 theme=custom 必须带上(code=required),不带则沿用已存的那份;服务端按同一白名单再核并规整(颜色转小写、主色压暗到白字看得清)。 |
| theme | AiTheme | 必填 | 助手主题色:蓝、青、日落、莫兰迪、墨色,custom 取 AI 定制参数(spec)里的三色。只作用于助手面板自己。 |
取我上传的助手头像
GET
/api/v2/ai/look/avatar鉴权: 用户
上传我的助手头像
PUT
/api/v2/ai/look/avatar鉴权: 用户
移除我上传的助手头像
DELETE
/api/v2/ai/look/avatar鉴权: 用户
让 AI 按描述出一份定制形象
POST
/api/v2/ai/look/generate鉴权: 用户
请求体 application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| text | string | 必填 | 想要的样子,去掉控制字符与尖括号后最长 60 个字。 |
向 AI 助手发一句话
POST
/api/v2/ai/messages鉴权: 用户
请求体 application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| context | AiContext | — | 当前页面上下文:只有页名与打开的那条的 id,数据由服务端现取。首版带详细数据的页:home 首页、attack_logs 攻击记录(ref = 记录 id)、sites 网站列表(ref = 网站 id);其余页只带页名。 |
| conversation_id | integer | — | 接着哪段会话说;不带则开新会话(标题取这句的开头)。 |
| text | string | 必填 | 想要的样子,去掉控制字符与尖括号后最长 60 个字。 |
列出 AI 模型评分表
GET
/api/v2/ai/models鉴权: 仅管理员
取消 AI 助手的计划
POST
/api/v2/ai/plans/cancel鉴权: 用户
请求体 application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| plan_id | AiPlanKey | 必填 | 计划号(随机,32 位十六进制)。 |
执行 AI 助手的计划
POST
/api/v2/ai/plans/execute鉴权: 用户
请求体 application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| password | string | — | 当前登录口令。 |
| plan_id | AiPlanKey | 必填 | 计划号(随机,32 位十六进制)。 |
| totp_code | string | — | 动态口令(TOTP)的 6 位当前码;账号须已启用动态口令。 |
修改 AI 助手计划的参数
POST
/api/v2/ai/plans/revise鉴权: 用户
请求体 application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| domain | string | 必填 | 网站域名。 |
| origin | string | 必填 | 源站地址(IP 或域名)。 |
| plan_id | AiPlanKey | 必填 | 计划号(随机,32 位十六进制)。 |
| port | integer | 必填 | 回源端口。 |
| upid | integer | 必填 | 用哪份已购套餐(须属计划的属主租户)。 |
获取 AI 助手的计划
GET
/api/v2/ai/plans/{plan_id}鉴权: 用户
获取 AI 助手接入设置
GET
/api/v2/ai/settings鉴权: 仅管理员
保存 AI 助手接入设置
PUT
/api/v2/ai/settings鉴权: 仅管理员
请求体 application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| api_key | string | — | API 密钥;不传沿用已存的,传空串清掉(助手随之不可用)。只封存入库,不回显。 |
| api_type | AiApiType | 必填 | 接口类型:openai 为 OpenAI 兼容(/chat/completions,国内多数服务商也走它);claude 为 Anthropic 原生(/messages);moonshot 为 Kimi(OpenAI 兼容,预设地址不同)。 |
| base_url | string | — | 服务地址(公网 HTTPS);从没保存过为空。 |
| model | string | 必填 | 模型名。 |
测试 AI 助手连接
POST
/api/v2/ai/settings/probe鉴权: 仅管理员
请求体 application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| api_key | string | — | API 密钥;不传沿用已存的,传空串清掉(助手随之不可用)。只封存入库,不回显。 |
| api_type | AiApiType | 必填 | 接口类型:openai 为 OpenAI 兼容(/chat/completions,国内多数服务商也走它);claude 为 Anthropic 原生(/messages);moonshot 为 Kimi(OpenAI 兼容,预设地址不同)。 |
| base_url | string | — | 服务地址(公网 HTTPS);从没保存过为空。 |
| model | string | 必填 | 模型名。 |
获取 AI 助手可用状态
GET
/api/v2/ai/status鉴权: 用户
AI 助手对象
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| api_key | string | — | API 密钥;不传沿用已存的,传空串清掉(助手随之不可用)。只封存入库,不回显。 |
| api_type | AiApiType | — | 接口类型:openai 为 OpenAI 兼容(/chat/completions,国内多数服务商也走它);claude 为 Anthropic 原生(/messages);moonshot 为 Kimi(OpenAI 兼容,预设地址不同)。 |
| available | boolean | — | 是否显示并可用助手;代登录会话为 true 但只读(reason=delegated)。 |
| avatar_ver | integer | — | 头像版本;0 = 没传头像(显示所选形象),大于 0 时用 GET /ai/look/avatar 取图,换图后变大。 |
| base_url | string | — | 服务地址(公网 HTTPS);从没保存过为空。 |
| cert_id | integer | — | 申请的证书。 |
| cname | string | — | 建站响应给的接入名;等解析时让用户把域名 CNAME 到它。 |
| code | string | — | 失败细分:blocked 地址被拒(内网等)、auth 密钥被拒、rate_limited 上游限流、timeout 超时、refused 模型拒答、protocol 回包格式不对、http 其他状态码、connect 连不上。 |
| connect_ms | integer | — | 连通耗时毫秒(最近一次请求)。 |
| context | AiContext | — | 当前页面上下文:只有页名与打开的那条的 id,数据由服务端现取。首版带详细数据的页:home 首页、attack_logs 攻击记录(ref = 记录 id)、sites 网站列表(ref = 网站 id);其余页只带页名。 |
| conversation_id | integer | — | 接着哪段会话说;不带则开新会话(标题取这句的开头)。 |
| created_at | string | — | 创建时刻。 |
| detail | string | — | 给管理员看的说明(含上游错误摘要,不含密钥)。 |
| domain | string | 必填 | 网站域名。 |
| error | string | — | 失败原因。 |
| expires_at | string | — | 过了不能再执行。 |
| fetched_on | string | — | 取数日期。 |
| first_token_ms | integer | — | 已跑各轮里最慢的首字毫秒。 |
| high_risk | boolean | — | 执行前要当场复核本人。 |
| id | integer | — | 会话 id。 |
| items | AiConversation[] | — | 会话(不带消息)。 |
| key_set | boolean | — | 是否已设置 API 密钥(密钥本身不回显)。 |
| kind | AiPlanKind | — | create_site 新增网站(先只开 HTTP,加好解析后再申请证书);delete_site 删除网站(高危,执行前复核本人)。 |
| messages | AiMessage[] | — | 全部消息(只在获取单个会话时有)。 |
| model | string | — | 模型名。 |
| name | string | — | 助手名;空 = 用缺省名。 |
| ok | boolean | — | 是否通过。 |
| origin | string | 必填 | 源站地址(IP 或域名)。 |
| outdated | boolean | — | 取数超过 90 天,面板提示「评分可能过时」。 |
| params | AiPlanParams | — | 冻结的计划参数。新增网站有 domain、origin、port、upid、package(管理员代建另有 tenant_id);删除网站有 site_id,site_name 与 domains 给人核对。 |
| password | string | — | 当前登录口令。 |
| pet | AiPet | — | 助手形象:orb 光球、cat 猫、dog 狗、bot 机器人、ai 按 AI 定制的参数(spec)画。 |
| plan_id | AiPlanKey | 必填 | 计划号(随机,32 位十六进制)。 |
| port | integer | 必填 | 回源端口。 |
| probe_first_token_ms | integer | — | 探测 3 轮里最慢的首字毫秒;没通过为 0。 |
| probe_ok | boolean | — | 保存时探测是否通过;换模型或密钥后清零。 |
| probe_round_ms | integer | — | 探测 3 轮里最慢的整轮毫秒;没通过为 0。 |
| probed_at | string | — | 探测通过的时刻;没通过为 null。 |
| ready | boolean | — | 设置是否可用(有密钥、有模型且探测通过);授权另判,见 /ai/status。 |
| reason | string | — | 不可用的原因:unlicensed 没开通;expired 授权已过期;not_configured 管理员还没接好模型;delegated 代登录会话(仅 available=true 时出现,只读不能发送);demo 演示模式。 |
| reauth_methods | AiReauthMethod[] | — | 高危计划可用的复核方式;不高危为空。 |
| revoking_until | string | — | 服务商已收回授权时,此刻前照常可用。 |
| round_ms | integer | — | 已跑各轮里最慢的整轮毫秒。 |
| rounds | integer | — | 跑完的轮数(通过时为 3)。 |
| site_id | integer | — | 建好的网站。 |
| spec | AiLookSpec | — | AI 定制形象的参数清单(白名单内的取值,面板用固定的 SVG 部件按它画)。AiLook 里没有 = 没定制过。 写外观时 pet=ai 或 theme=custom 必须带上(code=required),不带则沿用已存的那份;服务端按同一白名单再核并规整(颜色转小写、主色压暗到白字看得清)。 |
| state | AiPlanState | — | proposed 待执行;running 执行中;wait_dns 网站已建、等用户加解析(再执行即申请证书);done 完成;failed 失败(见 error);cancelled 已取消;superseded 已被改参数后的新计划取代。 |
| step | string | — | 没通过时停在哪一步:connect 连不上或上游报错;tool 没按格式调用工具报数;echo 复述不对;first_token 首字超时;round 整轮超时。 |
| text | string | 必填 | 想要的样子,去掉控制字符与尖括号后最长 60 个字。 |
| theme | AiTheme | — | 助手主题色:蓝、青、日落、莫兰迪、墨色,custom 取 AI 定制参数(spec)里的三色。只作用于助手面板自己。 |
| title | string | — | 标题(首条提问的开头)。 |
| totp_code | string | — | 动态口令(TOTP)的 6 位当前码;账号须已启用动态口令。 |
| updated_at | string | — | 最后一条消息时刻(保留期按它算)。 |
| upid | integer | 必填 | 用哪份已购套餐(须属计划的属主租户)。 |
| usage | object | — | 本人生成后的用量与额度(本次已计入)。 |
| version | string | — | 评分口径版本。 |