更新 Forward Session 的标题、metadata 或环境变量。
POST /api/v1/forward/sessions/{session_id}
只更新稳定的会话字段;config 当前仅支持更新 environment_variables。
请求头
| Header | 是否必填 | 说明 |
|---|---|---|
| Authorization | 是 | Bearer <PAT 或 SAT> |
| Content-Type | 是 | application/json |
| Idempotency-Key | 否 | 有副作用请求可选的幂等键。 |
路径参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| session_id | string | 是 | Session ID。 |
请求体参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| title | string | 否 | 新的 Session 标题。 |
| metadata | object | 否 | metadata merge patch;传入的 key 覆盖已有 key,未出现的 key 保留。 |
| config | object | 否 | Session 配置更新,当前只允许包含 environment_variables。null 不合法。 |
| config.environment_variables | object | 否 | Session 环境变量 key-value,value 必须为 string。null 不合法。传入的 map 整组替换已有的 Session 级环境变量,替换后在 Template + Identity Config 编译结果基础上追加合并,同名变量覆盖基础层的值。 |
config.environment_variables 更新语义:
- 缺省或
config为{}:不修改环境变量。 - 非空 object:整组替换 Session 级环境变量 map,不与旧值增量合并,未出现的旧 key 会被删除。
- 空 object
{}:清空 Session 级环境变量。 - 整组替换只作用于 Session 级这一层;更新后 Session 的运行时环境变量仍在 Template + Identity Config 编译结果基础上追加合并,同名变量以 Session 级的值覆盖。
- 环境变量名称、保留字与容量限制由运行时校验,不合法时返回 400。
示例请求
示例响应
HTTP 200 OK
响应字段
| 字段 | 类型 | 说明 |
|---|---|---|
| 返回值 | object | 更新后的 Session 对象。 |
错误
| HTTP | Type | Code | 触发条件 |
|---|---|---|---|
| 400 | invalid_request_error | invalid_request | 更新请求体不合法。 |
| 400 | invalid_request_error | invalid_request_body | 请求体 JSON 不合法,或 config、config.environment_variables 为 null。 |
| 404 | not_found_error | session_not_found | Session 不存在。 |
| 409 | conflict_error | session_archived | Session 已归档。 |
| 401 | authentication_error | authentication_required | PAT 或 SAT 无效或已过期。 |
备注
resources是创建时配置,不能通过本接口修改;如需在会话进行中追加文件资源,请使用添加 Session 资源接口。- 响应中的
config.environment_variables反映更新后的结果。