Forward Files API 接口说明。
描述
上传文件并创建 File。
路径
POST /api/v1/forward/files
请求头
| 头部 | 必选 | 说明 |
|---|---|---|
Authorization | 是 | Bearer <PAT 或 SAT> |
Idempotency-Key | 否 | 可选创建请求幂等键。传入时相同 key 只能用于相同请求;不传时不提供本地幂等重放保护。 |
Content-Type | 是 | multipart/form-data |
Form 字段
| 字段 | 类型 | 必选 | 说明 |
|---|---|---|---|
file | file | 是 | 待上传文件内容。支持类型见支持上传的文件类型。 |
name | string | 否 | 文件展示名,未传时使用 multipart 文件名;规范化后长度为 1-255 bytes。 |
metadata | JSON string | 否 | 元数据对象;created_by 为保留字段,不可传入(传入返回 400)。 |
示例请求
示例响应
HTTP 201 Created
响应字段解释
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | File ID。 |
type | string | 固定为 file。 |
filename | string | 文件名。 |
size_bytes | integer | 文件大小,单位为 byte。 |
mime_type | string | MIME 类型。 |
created_at | string | 创建时间,RFC 3339 格式。 |
updated_at | string | 最后更新时间,RFC 3339 格式。 |
downloadable | boolean | 是否可下载。 |
scope | object/null | 文件关联的资源作用域,如 Session。 |
metadata | object | 文件元数据。 |
identity_id | string/null | Forward 归属身份。 |
错误码
| HTTP | type | 触发条件 |
|---|---|---|
| 400 | invalid_request_error | 请求体、路径参数、查询参数或 multipart 字段非法。 |
| 400 | invalid_request_error | 文件类型不支持,详见支持上传的文件类型。 |
| 400 | invalid_request_error | 传入保留键 created_by 时,message 为 metadata key "created_by" is reserved,可据此定位到具体字段。 |
| 401 | authentication_error | 缺少或无效的认证令牌。 |
| 403 | permission_error | 当前调用方无权访问该资源。 |
| 409 | conflict_error | 资源状态、引用关系或幂等键冲突。 |
| 429 | rate_limit_error | 上传容量不足。 |
| 500/502/503 | api_error | Forward 或依赖服务失败。 |