版本 v2.0 | 最后更新:2026-5-15
本文档描述了网盘更新中心系统的全部API接口,供开发者集成使用。
所有API响应均为JSON格式,Content-Type为 application/json; charset=UTF-8。
本系统支持以下三种认证方式:
| 认证方式 | 说明 | 适用场景 |
|---|---|---|
| Cookie认证 | 用户通过Web端登录后自动获得Cookie,请求时自动携带 | Web前端、同域请求 |
| API密钥认证 | 在请求参数中携带 api_key 参数,值为用户的API密钥 |
第三方应用、CLI工具 |
| Token认证 | 通过 user_token 参数或 Authorization: Bearer <token> 请求头传递 |
App开发、跨域请求 |
{
"code": 0,
"msg": "操作成功",
"data": { ... }
}
其中 code=0 表示成功,负数表示各类错误。
| 错误码 | 含义 | 处理建议 |
|---|---|---|
| 0 | 操作成功 | 正常处理响应数据 |
| -1 | 通用错误 / 参数错误 | 检查请求参数是否符合要求 |
| -4 | 功能未开启 / 未知操作 | 确认API开关已打开或action参数正确 |
| -5 | 账号已被禁用 | 联系管理员解封账号 |
| -6 | 认证失败 | 检查Token或API密钥是否正确 |
接口文件: api_v2.php | 不需要认证的接口: 登录、注册
使用用户名和密码登录,返回用户Token。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| username | String | 是 | 用户名,4-20位字母数字下划线 |
| password | String | 是 | 登录密码 |
{
"code": 0,
"msg": "登录成功",
"data": {
"uid": 1,
"username": "demo",
"nickname": "demo",
"email": "demo@example.com",
"level": 0,
"storage_used_mb": 15.23,
"storage_limit_mb": 100,
"traffic_used_mb": 45.6,
"traffic_limit_mb": 500,
"api_key": "a1b2c3d4...",
"user_token": "enc_token_string",
"token_expire": 1715731200,
"register_time": "2024-01-01 12:00:00"
}
}注册新用户账号,成功后自动返回Token。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| username | String | 是 | 用户名,4-20位字母数字下划线 |
| password | String | 是 | 密码,6-32位 |
| nickname | String | 否 | 昵称,不超过20字符,默认同用户名 |
| String | 否 | 邮箱地址 |
{
"code": 0,
"msg": "注册成功",
"data": {
"uid": 2,
"username": "newuser",
"nickname": "新用户",
"api_key": "a1b2c3d4...",
"user_token": "enc_token_string",
"token_expire": 1715731200,
"storage_limit_mb": 100,
"traffic_limit_mb": 500
}
}获取当前登录用户的详细资料信息。需要认证。
{
"code": 0,
"data": {
"uid": 1,
"username": "demo",
"nickname": "demo",
"email": "demo@example.com",
"level": 0,
"enable": 1,
"api_key": "a1b2c3d4...",
"storage_used_mb": 15.23,
"storage_limit_mb": 100,
"traffic_used_mb": 45.6,
"traffic_limit_mb": 500,
"register_time": "2024-01-01 12:00:00",
"last_login_time": "2024-05-01 08:30:00"
}
}更新当前用户的昵称和邮箱。需要认证。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| nickname | String | 是 | 新昵称,不超过20字符 |
| String | 否 | 新邮箱地址 |
修改当前用户的登录密码。需要认证。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| old_password | String | 是 | 旧密码 |
| new_password | String | 是 | 新密码,6-32位 |
获取当前用户的API密钥,如果尚未生成则自动创建。需要认证。
重新生成API密钥,旧的密钥将立即失效。需要认证。
通过 multipart/form-data 格式直接上传文件。这是最简单的上传方式。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file | File | 是 | 待上传的文件(multipart格式) |
| show | Int | 否 | 是否首页显示,1显示0隐藏,默认1 |
| ispwd | Int | 否 | 是否设置下载密码,1设置0不设置 |
| pwd | String | 否 | 下载密码(ispwd=1时必填),仅支持字母和数字 |
| folder_id | Int | 否 | 目标文件夹ID(需登录) |
| api_key | String | 否 | API密钥,用于身份认证 |
| format | String | 否 | 返回格式: json(默认) / jsonp / form |
| callback | String | 否 | JSONP回调函数名(format=jsonp时) |
{
"code": 0,
"msg": "文件上传成功!",
"hash": "f1e807cb0d6ba52d71bdb02864e6ba8",
"name": "example.jpg",
"size": 58937,
"type": "jpg",
"id": 123,
"downurl": "https://pan.fosare.com/down.php?hash=...",
"viewurl": "https://pan.fosare.com/view.php?hash=...jpg"
}{
"code": 0,
"msg": "本站已存在该文件",
"exists": 1,
"hash": "...",
"name": "example.jpg",
"size": 58937,
"type": "jpg",
"id": 123,
"downurl": "https://pan.fosare.com/down.php?hash=..."
}在大文件上传前进行检查,包括文件大小限制、格式限制、配额检查等。需要CSRF Token。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| csrf_token | String | 是 | CSRF Token |
| name | String | 是 | 文件名 |
| hash | String | 是 | 文件MD5(32位hex) |
| size | Int | 是 | 文件大小(字节) |
| show | Int | 否 | 是否首页显示 |
| ispwd | Int | 否 | 是否设置密码 |
| pwd | String | 否 | 下载密码 |
| folder_id | Int | 否 | 目标文件夹ID |
{
"code": 0,
"third": false,
"hash": "...",
"chunksize": 8388608,
"chunks": 3
}上传文件的单个分块。每块大小由pre_upload返回的chunksize决定(默认8MB)。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file | File | 是 | 当前分块的文件数据 |
| hash | String | 是 | 文件MD5 |
| chunk | Int | 是 | 当前分块编号(从1开始) |
当使用第三方云存储直接上传后,调用此接口通知服务端完成数据入库。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| hash | String | 是 | 文件MD5 |
在指定文件夹内快速上传文件。需要认证。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file | File | 是 | 待上传的文件 |
| folder_id | Int | 否 | 目标文件夹ID |
接口文件: api_v2.php | 所有接口需要认证
获取当前用户上传的文件列表,支持分页和排序。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| page | Int | 否 | 页码,默认1 |
| limit | Int | 否 | 每页数量,默认20,最大100 |
| folder_id | Int | 否 | 文件夹ID筛选,0或省略表示全部文件 |
| sort | String | 否 | 排序字段: id/name/size/addtime/count,默认id |
| order | String | 否 | 排序方向: ASC/DESC,默认DESC |
{
"code": 0,
"data": {
"page": 1,
"limit": 20,
"total": 85,
"total_page": 5,
"list": [
{
"id": 123,
"name": "example.jpg",
"type": "jpg",
"size": 58937,
"size_formatted": "57.6 KB",
"hash": "f1e807cb...",
"addtime": "2024-05-01 12:00:00",
"hide": 0,
"folder_id": 0,
"download_count": 12,
"download_url": "https://pan.fosare.com/down.php?hash=...",
"view_url": "https://pan.fosare.com/view.php?hash=...jpg"
}
]
}
}获取单个文件的详细信息,通过ID或Hash查询。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | Int | 二选一 | 文件ID |
| hash | String | 二选一 | 文件MD5 Hash(32位hex) |
根据关键词搜索用户的文件。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| kw | String | 是 | 搜索关键词 |
| type | String | 否 | 文件类型筛选,多个用逗号分隔 |
| page | Int | 否 | 页码,默认1 |
| limit | Int | 否 | 每页数量,默认20,最大100 |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file_id | Int | 是 | 文件ID |
| new_name | String | 是 | 新文件名 |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file_id | Int | 是 | 文件ID |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file_id | Int | 是 | 文件ID |
接口文件: folder_api.php / api_v2.php | 需要认证
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| parent_id | Int | 否 | 父文件夹ID,0表示根目录,默认0 |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | String | 是 | 文件夹名称,不超过50字符 |
| parent_id | Int | 否 | 父文件夹ID,默认0(根目录) |
以下操作通过 folder_api.php 实现,支持的操作:
| act参数 | 说明 | 关键参数 |
|---|---|---|
| create | 创建文件夹 | name, parent_id |
| rename | 重命名文件夹 | folder_id, new_name |
| delete | 删除文件夹 | folder_id |
| batch_delete | 批量删除 | folder_ids, file_ids |
| sort | 排序文件夹 | folder_id, sort(1-999) |
| move | 移动文件/文件夹 | target_id, folder_ids, file_ids |
| list | 获取文件夹内容 | parent_id, kw |
| get_share_info | 获取文件夹分享信息 | folder_id |
| set_share | 设置文件夹分享 | folder_id, share_need_pwd, share_pwd, share_notice |
| rename_file | 重命名文件 | file_id, new_name |
| get_password | 获取文件密码 | file_id |
| set_password | 设置文件密码 | file_id, password |
| batch_rename | 批量重命名 | file_ids, pattern |
| batch_copy | 批量复制 | file_ids, target_id |
| transfer | 转存文件/文件夹 | url, password, target_folder |
| transfer_preview | 转存预览 | url |
| get_file_share_info | 获取文件分享信息 | file_id |
| set_file_share | 设置文件分享 | file_id, share_type, share_notice |
接口文件: api_v2.php | 需要认证
获取当前用户的存储、流量、文件、文件夹综合统计数据。
{
"code": 0,
"data": {
"storage": {
"used_bytes": 15728640,
"used_mb": 15.0,
"limit_mb": 100,
"limit_bytes": 104857600,
"is_unlimited": false,
"usage_percent": 15.0
},
"traffic": {
"used_bytes": 52428800,
"used_mb": 50.0,
"limit_mb": 500,
"limit_bytes": 524288000,
"is_unlimited": false,
"usage_percent": 10.0,
"reset_interval_days": 30
},
"files": {
"total_count": 85,
"today_uploads": 3,
"total_downloads": 452
},
"folders": {
"total_count": 5
}
}
}获取存储空间详细使用情况,包含按文件类型的分类统计。
获取用户的流量消耗日志记录。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| page | Int | 否 | 页码,默认1 |
| limit | Int | 否 | 每页数量,默认20,最大100 |
| days | Int | 否 | 查询最近N天,默认7天,最大90天 |
接口文件: api_v2.php | 需要认证
使用卡密代码兑换存储空间和流量配额。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| card_code | String | 是 | 卡密代码 |
{
"code": 0,
"msg": "兑换成功",
"data": {
"storage_added_mb": 50,
"traffic_added_mb": 100,
"resource_info": { ... }
}
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| page | Int | 否 | 页码,默认1 |
| limit | Int | 否 | 每页数量,默认20,最大100 |