Skip to content

🎵 谱面评价与分析 API

谱面预览平台的公开 REST API,支持谱面查询、评论、评分、成绩提交与排行榜等功能。

平台地址

🔐 鉴权方式

业务请求须在请求头携带:

Authorization: Bearer <api-key>

获取方式:登录 https://v.wmc.pub → 顶部导航栏钥匙图标 → /api-keys 页面 → 新建 API Key。

⚠️ 注意

API Key 仅在创建时显示一次,丢失需重新创建。


获取 API Key

  1. 登录网站 (https://v.wmc.pub)
  2. 点击顶部导航栏钥匙图标,进入 /api-keys 页面
  3. 点击「新建」,输入名称,创建后复制保存

接口列表

1. 谱面接口

1.1 获取谱面列表

GET获取谱面列表
/api/v1/charts

1.2 获取谱面详情

:chartKey 格式: {songId}:{kind}:{difficulty},例如 123:dx:4

GET获取谱面详情
/api/v1/charts/:chartKey

1.3 获取谱面标签摘要

GET获取谱面标签摘要
/api/v1/charts/:chartKey/tags

字段说明:

字段类型说明
tags.difficultyClassificationobject难度分类:tag=normal/water/fake,label=正常谱/水/虚高谱
tags.difficultyClassification.estimatedLevelfloat回归模型预测的难度值
tags.difficultyClassification.deviationfloat预测值与官标的偏差(正=虚高,负=偏低)
tags.radarTagsarray雷达轴高分项,score 0-100
tags.evaluationTagsarray评估轴高分项(体力谱/底力谱/星星谱/键盘谱/高物量)
tags.featuresarray回归模型贡献最大的特征,direction=up/down 表示提升/降低难度
tags.features.contributionfloat该特征对难度值的贡献量(正=加难度,负=减难度)
tags.patternsarray检测到的谱面模式,severity=high/mid/low
tags.patterns.countint该模式出现次数
tags.patterns.severitystringhigh=高强度(strength≥5),mid=中等,low=低

radarTags 可能的 label:交互、散打、扫键、绝赞段、转圈、大位移、定拍、拆弹、爆发、纵连、跳拍、错位、一笔画、反手

evaluationTags 可能的 label:体力谱、底力谱、星星谱、键盘谱、高物量

features 可能的 label:平均密度、高密度惩罚、峰值密度、滑条占比、触摸占比、交叉手、同位连打、跳拍节奏、一笔画、偏移、爆发段、转圈、横扫

patterns 可能的 label:错位星星、交互、纵连、跳拍、一笔画、反手/大位移同押、定拍、绝赞段、爆发、扫键、转圈、触摸拆分、散打、拆弹


2. 评论接口

2.1 获取谱面评论

GET获取谱面评论
/api/v1/charts/:chartKey/comments

3. 评分接口

3.1 获取评分统计

GET获取评分统计
/api/v1/charts/:chartKey/ratings

4. 成绩接口

4.1 获取成绩提交

GET获取成绩提交
/api/v1/charts/:chartKey/scores

5. 排行榜接口

5.1 获取排行榜

GET获取排行榜
/api/v1/rankings

6. 统计接口

6.1 获取全局统计

GET获取全局统计
/api/v1/stats

7. API Key 管理接口

🔐 需登录

以下接口需要通过网页登录后调用(浏览器 Session 或 JWT)。

7.1 创建 API Key

POST创建 API Key
/api/v1/api-keys

7.2 列出我的 API Key

GET列出我的 API Key
/api/v1/api-keys

7.3 删除 API Key

DELETE删除 API Key
/api/v1/api-keys/:id

8. 管理员接口

🔒 需管理员权限

以下接口仅限管理员调用。

8.1 获取 API 使用统计

GET获取 API 使用统计
/api/v1/admin/api-usage

8.2 获取调用趋势

GET获取调用趋势
/api/v1/admin/api-usage/trends

错误响应

所有接口在出错时返回统一格式:

json
{
  "message": "错误信息"
}
状态码说明
401未认证或 API Key 无效
403权限不足
404资源不存在
500服务器内部错误

快速开始

bash
# 1. 获取谱面列表
curl -H "Authorization: Bearer mk_live_xxx" \
  https://v.wmc.pub/api/v1/charts

# 2. 获取谱面详情
curl -H "Authorization: Bearer mk_live_xxx" \
  https://v.wmc.pub/api/v1/charts/123:dx:4

# 3. 获取谱面标签(Bot 用)
curl -H "Authorization: Bearer mk_live_xxx" \
  "https://v.wmc.pub/api/v1/charts/417:standard:5/tags"

# 4. 自定义阈值(仅显示高分项)
curl -H "Authorization: Bearer mk_live_xxx" \
  "https://v.wmc.pub/api/v1/charts/417:standard:5/tags?radar_threshold=60&feature_threshold=1.0"

# 5. 获取评论
curl -H "Authorization: Bearer mk_live_xxx" \
  "https://v.wmc.pub/api/v1/charts/123:dx:4/comments"

# 6. 获取排行榜
curl -H "Authorization: Bearer mk_live_xxx" \
  "https://v.wmc.pub/api/v1/rankings?sort=rating&limit=10"

Released under the MIT License.