游玩记录 (Records)
复制页面
Milracle-v2
认证 (Auth)
重定向认证操作 (OIDC / GitHub OAuth 回调)
GET
认证操作
POST
谱面 (Charts)
获取谱面列表或详情
GET
删除谱面
DELETE
删除谱面 (兼容旧客户端,使用 POST 代替 DELETE)
POST
Studio 管理:获取审核队列(支持待审核 / 上架申请 / 已通过 / 已上架 / 已拒绝等)
GET
Studio 操作:投票 / 申请上架 / 处理上架
POST
成绩 (Scores)
获取成绩
GET
上传成绩
POST
游玩记录 (Records)
获取游玩记录
GET
上传游玩记录
POST
资源包 (Resource Packs)
获取资源包列表/详情或下载资源包
GET
上传资源包或审核资源包
POST
用户 (User)
获取用户信息或用户列表
GET
用户操作(某些操作需管理员权限,例如修改其他用户)
POST
管理员 (Admin)
管理员查询
GET
管理员更新
PUT
内容 (Content)
获取内容
GET
创建内容
POST
更新内容
PUT
删除内容
DELETE
上传 (Upload)
获取 presigned 上传地址 / 头像代理
文件上传
工具 (Utils)
获取谱面元数据(不再服务端打包 zip)
工单 (Tickets)
工单: 列表 / 详情 / 统计
工单: 创建 / 回复 / 认领 / 结案 / 驳回
数据模型
User
Chart
ChartAsset
Error
Score
Record
ResourcePack
RecordProperties
游玩记录 (Records)
复制页面
上传游玩记录
POST
/api/v2/records
调试
Run in Apifox
Run in Apifox
action=upload。请求体为客户端用公钥加密后的原始二进制(Content-Type: application/octet-stream,无任何表单包装);服务端用本地 RSA 私钥解密,校验 ASAR 结构(meta / hit-objects / input-trace)并将后两者 zstd 解压,全部通过后才写库,避免无效输入留下残留对象或行。解密后的明文记录存入 R2 并作为 file_url 返回,file_hash 为该明文文件的 SHA-512。任何校验失败(无法解密、结构缺失、解压失败)均返回 422「未通过检验,可疑伪造内容」。每个「用户 × 谱面」在云端最多保留 4 条:按 score 从高到低、created_at 从新到旧排序,超出部分及其 R2 对象会被自动删除;若请求既未带 chartId、记录 meta 中也没有 chart_hash,则无法定位谱面,此时跳过裁剪(不会误删该用户其他谱面的记录)。
请求参数
Authorization
JWT Bearer
在 Header 添加参数
Authorization
示例:
Authorization: ********************
or
Query 参数
生成代码
Body 参数
application/octet-stream
必填
未设置
请求示例代码
Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例
请求示例
Shell
JavaScript
Java
Swift
cURL
cURL-Windows
Httpie
wget
PowerShell
返回响应
🟢
200
application/json
上传成功。返回 { message, id, file_url?, file_hash? }(上传后记录进入审核/裁剪逻辑,列表可能延后最多 60 秒可见)。
Body
application/json
生成代码
示例
{
"data"
:
{
"id"
:
0
}
}
🟠
400
🟠
401
🟠
422
🔴
500
修改于
2026-10-07 10:19:10
上一页
获取游玩记录
下一页
获取资源包列表/详情或下载资源包