CN Tierlist API 文档
CN Tierlist API 为开发者和玩家提供对CN Tierlist数据的程序化访问接口,支持玩家信息管理、Tier排行记录等功能。 基于 ASP.NET Core + Razor Pages 构建,所有数据请求均需使用 API Key 验证身份。 本页由 AI 生成。
API Key 认证
所有请求需在 Header 中添加 X-Api-Key 参数,未授权请求将被拒绝。如果你需要一个 API Key,请邮件至
huangyu@huangyu.win
权限控制
写操作需要具有写权限的 API Key,否则将返回一个错误页面(HTML)。
数据安全
所有数据均使用服务器端验证,避免非法操作和数据污染。
重要注意事项
- 所有 POST/PUT/DELETE 操作需要
write权限的 APIKEY - API 返回数据均为 JSON 格式
- 所有日期时间均使用 UTC 时间格式
- API 更新时间为北京时间 2025年7月25日
玩家管理 API
GET
/api/v1/players
需要API Key
获取所有玩家及其Tier记录信息
请求参数
| 参数位置 | 参数名 | 类型 | 说明 |
|---|---|---|---|
| Header | X-Api-Key | string | 用于认证的有效API Key |
响应示例
[
{
"id": 1,
"uuid": "d8d3a9e0-5f1e-4b0d-8245-0b5b8f7d8c5f",
"region": "华东",
"isBlacklisted": false,
"blacklistDate": null,
"blacklistReason": null,
"tierRecords": [
{
"id": 101,
"mode": "Axe",
"isRetired": false,
"currentTier": "LT5",
"peakTier": "HT5",
"lastUpdated": "2025-07-24T12:34:56.789Z"
}
]
}
]
GET
/api/v1/player/{UUID}
需要API Key
通过UUID获取特定玩家的完整信息
请求参数
| 参数位置 | 参数名 | 类型 | 说明 |
|---|---|---|---|
| Path | uuid | GUID | 玩家的唯一标识符 (如 d8d3a9e0-5f1e-4b0d-8245-0b5b8f7d8c5f) |
响应示例
{
"id": 1,
"uuid": "d8d3a9e0-5f1e-4b0d-8245-0b5b8f7d8c5f",
"region": "华南",
"isBlacklisted": false,
"blacklistDate": null,
"blacklistReason": null,
"tierRecords": [
{
"id": 101,
"mode": "Sword",
"isRetired": true,
"currentTier": "HT1",
"peakTier": "HT1",
"lastUpdated": "2025-07-24T12:34:56.789Z"
}
]
}
POST
/api/v1/player/add
添加新玩家到系统
请求体 (application/json)
{
"uuid": "d8d3a9e0-5f1e-4b0d-8245-0b5b8f7d8c5f",
"region": "华南"
}
响应状态
- 200 OK - 添加成功,返回创建后的玩家信息
- 400 Bad Request - 玩家已存在
- 200 OK (HTML) - API Key没有写权限
POST
/api/v1/player/update
更新玩家的部分信息(如黑名单状态、地区等)
请求体 (application/json)
{
"uuid": "d8d3a9e0-5f1e-4b0d-8245-0b5b8f7d8c5f",
"isBlacklisted": true,
"blacklistReason": "使用外挂",
"region": "华南"
}
响应状态
- 200 OK - 更新成功,返回更新后的玩家信息
- 404 Not Found - 玩家不存在
- 200 OK(HTML) - API Key没有写权限
POST
/api/v1/player/delete
从系统中删除玩家及其所有Tier记录
请求体 (application/json)
{
"uuid": "d8d3a9e0-5f1e-4b0d-8245-0b5b8f7d8c5f"
}
响应状态
- 200 OK - 删除成功
- 404 Not Found - 玩家不存在
Tier记录管理 API
GET
/api/v1/tier/{UUID}
需要API Key
获取指定玩家的所有Tier记录
请求参数
| 参数位置 | 参数名 | 类型 | 说明 |
|---|---|---|---|
| Path | uuid | GUID | 玩家的唯一标识符 |
响应示例
[
{
"id": 101,
"mode": "Vanilla",
"isRetired": false,
"currentTier": "LT2",
"peakTier": "LT1",
"lastUpdated": "2025-07-24T12:34:56.789Z"
},
{
"id": 102,
"mode": "BUHC",
"isRetired": true,
"currentTier": "HT1",
"peakTier": "HT1",
"lastUpdated": "2025-07-20T08:12:34.567Z"
}
]
POST
/api/v1/tier/update
更新玩家的Tier记录(创建新记录或更新现有记录)
请求体 (application/json)
{
"uuid": "d8d3a9e0-5f1e-4b0d-8245-0b5b8f7d8c5f",
"mode": "Mace",
"currentTier": "HT1",
"peakTier": "LT1",
"isRetired": false
}
响应状态
- 200 OK - 更新成功,返回更新后的玩家信息
- 404 Not Found - 玩家不存在
POST
/api/v1/tier/delete
删除指定玩家的特定模式Tier记录
请求体 (application/json)
{
"playerUuid": "d8d3a9e0-5f1e-4b0d-8245-0b5b8f7d8c5f",
"mode": "Mace"
}
响应状态
- 200 OK - 删除成功
- 400 Bad Request - Tier记录不存在
- 404 Not Found - 玩家不存在
数据模型定义
以下是API中使用的数据结构和枚举类型的详细说明。
数据结构
Player (玩家)
| 字段名 | 类型 | 描述 |
|---|---|---|
| id | int | 玩家唯一ID |
| uuid | GUID | 玩家UUID |
| region | Region | 玩家所属区域 |
| isBlacklisted | bool | 是否在黑名单中 |
| blacklistDate | DateTime? | 黑名单截止日期 |
| blacklistReason | string? | 黑名单原因 |
| tierRecords | List<PlayerTierRecord> | Tier记录列表 |
PlayerTierRecord (Tier记录)
| 字段名 | 类型 | 描述 |
|---|---|---|
| id | int | 记录唯一ID |
| mode | GameMode | 游戏模式 |
| isRetired | bool | 是否已退役 |
| currentTier | TierLevel | 当前段位 |
| peakTier | TierLevel | 历史最高段位 |
| lastUpdated | DateTime | 最后更新时间(UTC) |
枚举类型
Region (区域)
| 值 | 描述 |
|---|---|
| 华南 | |
| 华东 | |
| 华北 | |
| 华中 | |
| 西北 | |
| 西南 | |
| 东北 | |
| 香港 | |
| 澳门 | |
| 台湾 | |
| 其他 |
GameMode (游戏模式)
| 值 | 描述 |
|---|---|
| Axe | 盾斧 |
| Sword | 剑 |
| BUHC | 极限生存竞赛 |
| Vanilla | 水晶 |
| NPOT | 合金药水 |
| Potion | 钻石药水 |
| SMP | 多人生存 |
| Mace | 重锤 |
TierLevel (段位等级)
| 值 | 描述 |
|---|---|
| LT5 | |
| HT5 | |
| LT4 | |
| HT4 | |
| LT3 | |
| HT3 | |
| LT2 | |
| HT2 | |
| LT1 | |
| HT1 |