Forward Skills API 接口说明。
⚠️ 已弃用:PUT /skills/{id}是内容更新的旧路径,响应头会返回Deprecation: true。请改用 创建 Skill 版本 追加不可变版本;本端点保留以兼容存量客户端。
描述
通过 PUT 修改 Skill 的展示信息或整体内容。技能名不可修改;传入 content 时会创建一个新的不可变版本(等价于追加版本),latest_version 指向新版本。
路径
PUT /api/v1/forward/skills/{id}
请求头
| 头部 | 必选 | 说明 |
|---|---|---|
Authorization | 是 | Bearer <PAT 或 SAT> |
Content-Type | 是 | application/json |
路径参数
| 参数 | 类型 | 必选 | 说明 |
|---|---|---|---|
id | string | 是 | Skill ID。 |
请求体
| 字段 | 类型 | 必选 | 说明 |
|---|---|---|---|
description | string | 否 | 新描述。 |
content | string | 否 | 新内容(zip 包内容)。压缩包本身与解压后总大小均不超过 50 MB,超过返回 400;请求体整体(含 base64 编码与 JSON 信封)上限约 67.7 MB,超过返回 413。 |
content_encoding | string | 否 | content 的编码。支持 base64、utf-8、utf8、plain、text;省略时按 UTF-8 文本处理。传入该字段时必须同时提供非空 content。 |
metadata | object | 否 | 元数据对象,会替换当前 metadata(非合并);传入时不能为 null,value 必须为 string。created_by 为保留字段,不可传入(传入返回 400)。 |
icon_id | string | null | 否 | 更新或清空 Forward icon。 |
name | string | 否 | ⚠️ 已弃用:技能名不可修改。传入必须与当前规范名完全一致,否则返回 400;一致时为空操作。 |
响应头
命中此端点时,响应头包含 Deprecation: true(不带 Sunset 具体日期)。
示例请求
示例响应
HTTP 200 OK
响应字段
响应为 Skill 对象。
错误码
| HTTP | type | 触发条件 |
|---|---|---|
| 400 | invalid_request_error | 请求体非法、name 与当前规范名不一致、content_encoding 未搭配 content 等。 |
| 400 | invalid_request_error | 传入保留键 created_by 时,message 为 metadata key "created_by" is reserved,可据此定位到具体字段。 |
| 400 | skill_content_too_large | content 的压缩包本身或解压后总大小超过 50 MB。 |
| 401 | authentication_error | 缺少或无效的认证令牌。 |
| 403 | permission_error | 当前调用方无权修改该 Skill。 |
| 404 | not_found_error | Skill 不存在或不可见。 |
| 413 | invalid_request_error | 请求体整体超过约 67.7 MB。 |
| 429 | rate_limit_error | 当前调用方超过接口限流。 |
| 500/502/503 | api_error | Forward 或依赖服务失败。 |