29 KiB
API 清单
文档版本:v1.23 最后更新:2026-04-07 16:08:37
本文档只记录当前 backend 已实现接口,不写未来规划接口。
当前已实现接口总数:
115
1. Health
GET /healthz
用途:
- 健康检查
0. Workbench
GET /dev/workbench
用途:
- 调试工作台
- 一键回归、日志查看、摘要排查
GET /admin/ops-workbench
用途:
- 运维后台第一期页面
- 资源录入、OSS 纳管、地图瓦片导入、KML 批量导入
2. Auth
POST /auth/sms/send
用途:
- 发登录验证码
- 发绑定手机号验证码
核心参数:
countryCodemobileclientTypedeviceKeyscene
POST /auth/login/sms
用途:
- APP 手机号验证码登录
返回重点:
usertokens.accessTokentokens.refreshToken
POST /auth/login/wechat-mini
用途:
- 微信小程序登录
开发态:
- 支持
dev-前缀 code
POST /auth/bind/mobile
鉴权:
- Bearer token
用途:
- 已登录用户绑定手机号
- 必要时执行账号合并
POST /auth/refresh
用途:
- 刷新 access token
POST /auth/logout
用途:
- 撤销 refresh token
2.1 Ops Auth
说明:
- 运维账号与前端玩家账号完全分离
- 生产环境走手机号验证码运维账号
- 开发环境为了录资源和调发布方便,
/admin/ops-workbench与/ops/admin/*默认免登录可用
POST /ops/auth/sms/send
用途:
- 发送运维账号登录 / 注册验证码
POST /ops/auth/register
用途:
- 注册独立运维账号
- 首个账号默认授予
owner
POST /ops/auth/login/sms
用途:
- 运维账号手机号验证码登录
POST /ops/auth/refresh
用途:
- 刷新运维 access token
POST /ops/auth/logout
用途:
- 撤销运维 refresh token
GET /ops/me
鉴权:
- Ops bearer token
用途:
- 获取当前运维账号信息和主角色
2.2 Ops Admin(地图资源管理第一刀)
GET /ops/admin/summary
用途:
- 运维后台总览聚合接口
- 返回资源、活动、运行绑定、发布版本统计
GET /ops/admin/assets
用途:
- 读取受管资源列表
- 给运维后台资源总览与录入校验使用
POST /ops/admin/assets/register-link
用途:
- 登记已有正式外链资源
- 统一纳管到 backend 资源对象
POST /ops/admin/assets/upload
用途:
- 上传文件给 backend,再统一存入 OSS
- 运维不需要自己处理底层存储细节
GET /ops/admin/assets/{assetPublicID}
用途:
- 查看单个受管资源详情
- 返回资源类型、版本、正式 URL 和元数据
GET /ops/admin/places
用途:
- 读取地点列表
- 给运维后台地图资源管理区做浏览入口
POST /ops/admin/places
用途:
- 新建地点
GET /ops/admin/places/{placePublicID}
用途:
- 读取地点详情
- 返回当前地点下的地图资源列表
POST /ops/admin/places/{placePublicID}/map-assets
用途:
- 在指定地点下新建地图资源
GET /ops/admin/map-assets/{mapAssetPublicID}
用途:
- 读取地图资源详情
- 返回当前瓦片版本、关联赛道集和关联活动摘要
GET /ops/admin/map-assets
用途:
- 读取地图列表
- 返回地点、当前瓦片版本和关联活动摘要
PUT /ops/admin/map-assets/{mapAssetPublicID}
用途:
- 更新地图基础信息
- 支持名称、封面、摘要、状态维护
POST /ops/admin/map-assets/{mapAssetPublicID}/tile-releases
用途:
- 给地图资源追加新的瓦片版本
POST /ops/admin/ops/tile-releases/import
用途:
- 一次录入
place + map asset + tile release - 运维录入地图瓦片版本的最小入口
GET /ops/admin/course-sources
用途:
- 运维后台读取 KML / GeoJSON 输入源列表
GET /ops/admin/course-sources/{sourcePublicID}
用途:
- 运维后台读取单个赛道输入源详情
GET /ops/admin/course-sets/{courseSetPublicID}
用途:
- 运维后台读取赛道集合详情
- 用于默认路线和路线预览
POST /ops/admin/ops/course-sets/import-kml-batch
用途:
- 批量录入一组 KML
- 自动生成
course set + variants
GET /ops/admin/events
用途:
- 运维后台活动列表
- 给地图关联活动区做浏览入口
POST /ops/admin/events
用途:
- 运维后台新建活动
- 先录活动基础信息,再进入默认绑定和发布链
GET /ops/admin/events/{eventPublicID}
用途:
- 运维后台活动详情
- 返回默认绑定和当前 source 摘要
PUT /ops/admin/events/{eventPublicID}
用途:
- 运维后台更新活动基础信息
- 支持名称、摘要、slug、状态维护
POST /ops/admin/events/{eventPublicID}/presentations/import
用途:
- 导入活动展示定义
- 用于当前活动默认绑定与发布
POST /ops/admin/events/{eventPublicID}/content-bundles/import
用途:
- 导入活动内容包
- 用于当前活动默认绑定与发布
POST /ops/admin/events/{eventPublicID}/defaults
用途:
- 保存活动默认绑定
- 固化
runtime / presentation / content bundle三元组
GET /ops/admin/events/{eventPublicID}/pipeline
用途:
- 读取活动发布链概览
- 返回 source / build / release 摘要
POST /ops/admin/sources/{sourceID}/build
用途:
- 基于 source 构建 build
GET /ops/admin/builds/{buildID}
用途:
- 读取单个 build 明细
POST /ops/admin/builds/{buildID}/publish
用途:
- 发布 build 为正式 release
GET /ops/admin/releases/{releasePublicID}
用途:
- 读取单个 release 详情
POST /ops/admin/events/{eventPublicID}/rollback
用途:
- 将活动当前 release 回滚到指定版本
3. Entry / Home
GET /entry/resolve
用途:
- 解析当前入口归属哪个 tenant / channel
查询参数:
channelCodechannelTypeplatformAppId
3.1 Public Experience
GET /public/experience-maps
用途:
- 游客模式地图列表
- 返回可公开体验的地图与默认活动摘要
GET /public/experience-maps/{mapAssetPublicID}
用途:
- 游客模式地图详情
- 返回某张地图下挂载的默认体验活动
GET /public/events/{eventPublicID}
用途:
- 游客模式活动详情
- 只允许默认体验活动
GET /public/events/{eventPublicID}/play
用途:
- 游客模式准备页聚合接口
- 返回
canLaunch、assignmentMode、courseVariants、preview
POST /public/events/{eventPublicID}/launch
用途:
- 游客模式启动一局
- 返回与正式 launch 近似结构,并带
business.isGuest = true
核心参数:
releaseIdvariantIdclientTypedeviceKeytenantCode
GET /home
用途:
- 返回入口首页卡片
- 当前卡片摘要字段已统一补齐:
summarystatusstatusCodetimeWindowctaTextisDefaultExperienceeventTypecurrentPresentationcurrentContentBundle
GET /cards
用途:
- 只返回卡片列表
- 当前与
/home使用同一套卡片摘要语义
当前额外补充:
showInEventList
GET /experience-maps
用途:
- 地图资源列表
- 返回每张地图下默认体验活动数量和默认活动 ID 列表
返回重点:
placeIdplaceNamemapIdmapNamecoverUrlsummarydefaultExperienceCountdefaultExperienceEventIds
GET /experience-maps/{mapAssetPublicID}
用途:
- 地图详情
- 返回地图基础信息和默认体验活动摘要
返回重点:
tileBaseUrltileMetaUrldefaultExperiences[]
defaultExperiences[] 当前包含:
eventIdtitlesubtitleeventTypestatusstatusCodectaTextisDefaultExperienceshowInEventListcurrentPresentationcurrentContentBundle
GET /me/entry-home
鉴权:
- Bearer token
用途:
- 首页聚合接口
- 当前
cards也已统一使用活动卡片最小摘要字段
返回重点:
usertenantchannelcardsongoingSessionrecentSession
ongoingSession / recentSession 当前会额外带:
variantIdvariantNamerouteCode
4. Event
GET /events/{eventPublicID}
用途:
- Event 详情
返回重点:
eventreleaseresolvedReleaseruntimepreviewcurrentPresentationcurrentContentBundle
当前摘要字段最少包括:
currentPresentation.presentationIdcurrentPresentation.templateKeycurrentPresentation.versioncurrentContentBundle.contentBundleIdcurrentContentBundle.bundleTypecurrentContentBundle.version
当前 preview 为准备页地图预览 V1 只读增强字段,最小包括:
preview.modepreview.baseTiles.tileBaseUrlpreview.baseTiles.zoompreview.baseTiles.tileSizepreview.viewport.width / heightpreview.viewport.minLon / minLat / maxLon / maxLatpreview.variants[].controlspreview.variants[].legspreview.selectedVariantId
GET /events/{eventPublicID}/play
鉴权:
- Bearer token
用途:
- 活动详情页 / 开始前准备页聚合
返回重点:
eventreleaseresolvedReleaseruntimepreviewcurrentPresentationcurrentContentBundleplay.assignmentModeplay.courseVariantsplay.canLaunchplay.primaryActionplay.launchSourceplay.ongoingSessionplay.recentSession
当前 play.canLaunch=true 的最小前置条件为:
- event
status = active - 当前已发布 release 存在
- 当前已发布 release 有
manifest - 当前已发布 release 已绑定
runtime - 当前已发布 release 已绑定
presentation - 当前已发布 release 已绑定
content bundle
当前摘要字段最少包括:
currentPresentation.presentationIdcurrentPresentation.templateKeycurrentPresentation.versioncurrentContentBundle.contentBundleIdcurrentContentBundle.bundleTypecurrentContentBundle.version
当前 preview 继续表示准备页地图预览 V1 只读增强字段,结构与 GET /events/{eventPublicID} 相同。
POST /events/{eventPublicID}/launch
鉴权:
- Bearer token
用途:
- 基于当前 event 的可启动 release 创建一局 session
请求体重点:
releaseIdvariantIdclientTypedeviceKey
补充说明:
- 如果当前 release 声明了
play.courseVariants[] launch会返回最终绑定的launch.variant- 当前为兼容旧调用方,
assignmentMode=manual且未传variantId时,backend 会先回退到首个可选 variant - 当前
launch与play.canLaunch使用同一套前置条件 - 若当前发布 release 缺少:
runtimepresentationcontent bundle之一,launch会直接返回409
返回重点:
launch.sourcelaunch.resolvedReleaselaunch.variantlaunch.runtimelaunch.presentationlaunch.contentBundlelaunch.configlaunch.business.sessionIdlaunch.business.sessionToken
当前活动运营摘要最少包括:
launch.presentation.presentationIdlaunch.presentation.templateKeylaunch.presentation.versionlaunch.contentBundle.contentBundleIdlaunch.contentBundle.bundleTypelaunch.contentBundle.version
launch.runtime 当前为兼容新增字段,最少会带:
runtimeBindingIdplaceIdmapIdtileReleaseIdcourseSetIdcourseVariantId
如当前 release 尚未挂接 runtime binding,则该字段为空。
GET /events/{eventPublicID}/config-sources
鉴权:
- Bearer token
用途:
- 查看某个 event 的 source config 列表
GET /config-sources/{sourceID}
鉴权:
- Bearer token
用途:
- 查看单条 source config 明细
GET /config-builds/{buildID}
鉴权:
- Bearer token
用途:
- 查看单次 build 明细
5. Session
GET /sessions/{sessionPublicID}
鉴权:
- Bearer token
用途:
- 查询一局详情
返回重点:
sessioneventresolvedRelease
session 当前会额外带:
assignmentModevariantIdvariantNamerouteCode
POST /sessions/{sessionPublicID}/start
鉴权:
sessionToken
用途:
- 将 session 从
launched推进到running
补充约束:
- 幂等
- 重复调用时:
launched会推进到runningrunning或已终态直接返回当前 session
POST /sessions/{sessionPublicID}/finish
鉴权:
sessionToken
用途:
- 结束一局
- 同时沉淀结果摘要
当前结束语义:
finished:正常完成failed:超时或规则失败cancelled:主动退出或放弃恢复
补充约束:
- 幂等
- 已终态重复调用直接返回当前 session / result
finish(cancelled)是当前“放弃恢复”的官方后端语义- 同一局旧
sessionToken在finish(cancelled)场景允许继续使用
请求体重点:
sessionTokenstatussummary.finalDurationSecsummary.finalScoresummary.completedControlssummary.totalControlssummary.distanceMeterssummary.averageSpeedKmhsummary.maxHeartRateBpm
GET /me/sessions
鉴权:
- Bearer token
用途:
- 查询用户最近 session
6. Result
GET /sessions/{sessionPublicID}/result
鉴权:
- Bearer token
用途:
- 查询单局结果页数据
返回重点:
sessionresult
session 中会带:
releaseIdconfigLabelvariantIdvariantNamerouteCode
GET /me/results
鉴权:
- Bearer token
用途:
- 查询用户最近结果列表
7. Profile
GET /me
鉴权:
- Bearer token
用途:
- 当前用户基础信息
GET /me/profile
鉴权:
- Bearer token
用途:
- “我的页”聚合接口
返回重点:
userbindingsrecentSessions
8. Dev
POST /dev/bootstrap-demo
环境:
- 仅 non-production
用途:
- 自动准备 demo tenant / channel / event / release / card
POST /dev/client-logs
环境:
- 仅 non-production
用途:
- 接收 frontend 主动上报的调试日志
- 供 backend 通过 workbench 统一查看和排查
请求体重点:
sourcelevelcategorymessageeventIdreleaseIdsessionIdmanifestUrlrouteoccurredAtdetails
补充说明:
- 当前只保存在内存中
- 默认最多保留最近 200 条
- 仅用于联调调试
GET /dev/client-logs
环境:
- 仅 non-production
用途:
- 获取 frontend 最近上报的调试日志
查询参数:
limit
DELETE /dev/client-logs
环境:
- 仅 non-production
用途:
- 清空当前内存中的 frontend 调试日志
GET /dev/workbench
环境:
- 仅 non-production
用途:
- 后端自带 API 测试面板
当前支持:
- bootstrap
- auth
- entry/home
- event/play/launch
- session start/finish/detail
- result 查询
- profile 查询
- quick flows
- scenarios
- request history
- curl 导出
- frontend 调试日志查看/清空
GET /dev/manifest-summary
环境:
- 仅 non-production
用途:
- 由 backend 代读指定 manifest
- 返回最小调试摘要:
schemaVersionplayfield.kindgame.mode
GET /dev/demo-assets/presentations/{demoKey}
环境:
- 仅 non-production
用途:
- 返回联调用的示例展示定义 schema
- 给 workbench 的玩法切换自动填充真实
presentation schema资源地址
路径参数:
demoKey- 当前支持:
classic、score-o、manual-variant
- 当前支持:
GET /dev/demo-assets/content-manifests/{demoKey}
环境:
- 仅 non-production
用途:
- 返回联调用的示例内容 manifest
- 给 workbench 的玩法切换自动填充真实
content manifest资源地址
路径参数:
demoKey- 当前支持:
classic、score-o、manual-variant
- 当前支持:
补充说明:
- 只用于 workbench 联调排查
- 不参与正式客户端运行链路
GET /dev/config/local-files
环境:
- 仅 non-production
用途:
- 列出本地配置目录中的 JSON 文件
POST /dev/events/{eventPublicID}/config-sources/import-local
环境:
- 仅 non-production
用途:
- 从本地配置目录导入 source config
请求体重点:
fileNamenotes
POST /dev/config-builds/preview
环境:
- 仅 non-production
用途:
- 基于 source config 生成 preview build
请求体重点:
sourceId
POST /dev/config-builds/publish
环境:
- 仅 non-production
用途:
- 将成功的 preview build 发布成正式 release
- 自动切换
event.current_release_id
请求体重点:
buildIdruntimeBindingId可选presentationId可选contentBundleId可选
返回重点:
release.releaseIdrelease.manifestUrlrelease.configLabelruntime.runtimeBindingId可选
9. Admin 资源对象
说明:
- 当前是后台第一版的最小对象接口
- 先只做 Bearer 鉴权
- 暂未接正式 RBAC / 管理员权限模型
- 运维后台当前已开始切到独立前缀:
/ops/admin/*- 这批接口在运维后台中与
/admin/*使用同一套 handler,语义一致
GET /admin/maps
鉴权:
- Bearer token
用途:
- 获取地图对象列表
POST /admin/maps
鉴权:
- Bearer token
用途:
- 新建地图对象
请求体重点:
codenamestatusdescription
GET /admin/maps/{mapPublicID}
鉴权:
- Bearer token
用途:
- 获取地图对象详情和版本列表
POST /admin/maps/{mapPublicID}/versions
鉴权:
- Bearer token
用途:
- 新建地图版本
请求体重点:
versionCodemapmetaUrltilesRootUrlstatuspublishedAssetRootboundsmetadatasetAsCurrent
GET /admin/playfields
鉴权:
- Bearer token
用途:
- 获取赛场 / KML 对象列表
POST /admin/playfields
鉴权:
- Bearer token
用途:
- 新建赛场对象
请求体重点:
codenamekindstatusdescription
GET /admin/playfields/{playfieldPublicID}
鉴权:
- Bearer token
用途:
- 获取赛场对象详情和版本列表
POST /admin/playfields/{playfieldPublicID}/versions
鉴权:
- Bearer token
用途:
- 新建赛场版本
请求体重点:
versionCodesourceTypesourceUrlcontrolCountstatuspublishedAssetRootboundsmetadatasetAsCurrent
GET /admin/resource-packs
鉴权:
- Bearer token
用途:
- 获取资源包对象列表
POST /admin/resource-packs
鉴权:
- Bearer token
用途:
- 新建资源包对象
请求体重点:
codenamestatusdescription
GET /admin/resource-packs/{resourcePackPublicID}
鉴权:
- Bearer token
用途:
- 获取资源包对象详情和版本列表
POST /admin/resource-packs/{resourcePackPublicID}/versions
鉴权:
- Bearer token
用途:
- 新建资源包版本
请求体重点:
versionCodecontentEntryUrlaudioRootUrlthemeProfileCodestatuspublishedAssetRootmetadatasetAsCurrent
GET /admin/events
鉴权:
- Bearer token
用途:
- 获取后台 Event 列表
POST /admin/events
鉴权:
- Bearer token
用途:
- 新建后台 Event
请求体重点:
tenantCodeslugdisplayNamesummarystatus
GET /admin/events/{eventPublicID}
鉴权:
- Bearer token
用途:
- 获取后台 Event 详情
- 返回最新 source config 摘要
PUT /admin/events/{eventPublicID}
鉴权:
- Bearer token
用途:
- 更新 Event 基础信息
请求体重点:
tenantCodeslugdisplayNamesummarystatus
POST /admin/events/{eventPublicID}/source
鉴权:
- Bearer token
用途:
- 用地图版本、赛场版本、资源包版本组装一版 source config
- 直接落到现有
event_config_sources
请求体重点:
map.mapIdmap.versionIdplayfield.playfieldIdplayfield.versionIdresourcePack.resourcePackIdresourcePack.versionIdgameModeCoderouteCodeoverridesnotes
GET /admin/events/{eventPublicID}/presentations
鉴权:
- Bearer token
用途:
- 查看某个 event 下的展示定义列表
POST /admin/events/{eventPublicID}/presentations
鉴权:
- Bearer token
用途:
- 为 event 创建一条最小 presentation 定义
请求体重点:
codenamepresentationTypeschema
POST /admin/events/{eventPublicID}/presentations/import
鉴权:
- Bearer token
用途:
- 通过统一导入入口创建展示定义
- 第一阶段只记录:
templateKeysourceTypeschemaUrlversiontitle
核心参数:
titletemplateKeysourceTypeschemaUrlversion
GET /admin/presentations/{presentationPublicID}
鉴权:
- Bearer token
用途:
- 查看单条 presentation 明细
GET /admin/events/{eventPublicID}/content-bundles
鉴权:
- Bearer token
用途:
- 查看某个 event 下的内容包列表
POST /admin/events/{eventPublicID}/content-bundles
鉴权:
- Bearer token
用途:
- 为 event 创建一条最小 content bundle
请求体重点:
codenameentryUrlassetRootUrlmetadata
POST /admin/events/{eventPublicID}/content-bundles/import
鉴权:
- Bearer token
用途:
- 通过统一导入入口为 event 创建内容包
- 先记录
bundleType / sourceType / manifestUrl / version / assetManifest
请求体重点:
titlebundleTypesourceTypemanifestUrlversionassetManifest
GET /admin/content-bundles/{contentBundlePublicID}
鉴权:
- Bearer token
用途:
- 查看单条 content bundle 明细
POST /admin/events/{eventPublicID}/defaults
鉴权:
- Bearer token
用途:
- 固化 event 当前默认 active 绑定
- 后续 publish 在未显式传参时,优先继承:
presentationIdcontentBundleIdruntimeBindingId
核心参数:
presentationIdcontentBundleIdruntimeBindingId
GET /admin/events/{eventPublicID}/pipeline
鉴权:
- Bearer token
用途:
- 从后台视角聚合查看某个 event 的:
- sources
- builds
- releases
- current release
POST /admin/sources/{sourceID}/build
鉴权:
- Bearer token
用途:
- 基于某个 source 生成 preview build
GET /admin/builds/{buildID}
鉴权:
- Bearer token
用途:
- 查看某次 build 详情
POST /admin/builds/{buildID}/publish
鉴权:
- Bearer token
用途:
- 将某次成功 build 发布成正式 release
- 自动切换 event 当前 release
- 可选在发布时直接挂接:
runtimeBindingIdpresentationIdcontentBundleId
- 如果未显式传入
runtimeBindingId / presentationId / contentBundleId,会优先按 event 当前默认 active 绑定自动补齐
请求体重点:
runtimeBindingId可选presentationId可选contentBundleId可选
GET /admin/releases/{releasePublicID}
鉴权:
- Bearer token
用途:
- 查看单个 release 明细
- 带出当前已挂接的最小 runtime / presentation / content bundle 摘要
当前 release 摘要最少包括:
presentation.presentationIdpresentation.templateKeypresentation.versioncontentBundle.contentBundleIdcontentBundle.bundleTypecontentBundle.versionruntime.runtimeBindingIdruntime.placeIdruntime.mapIdruntime.tileReleaseIdruntime.courseVariantId
POST /admin/releases/{releasePublicID}/runtime-binding
鉴权:
- Bearer token
用途:
- 将某个
runtimeBindingId挂接到指定 release - 为后续
launch.runtime提供运行对象来源
请求体重点:
runtimeBindingId
POST /admin/events/{eventPublicID}/rollback
鉴权:
- Bearer token
用途:
- 将 event 当前 release 显式切回某个已发布 release
请求体重点:
releaseId
10. Admin 生产骨架
说明:
- 当前是总控确认后的第一阶段生产骨架接口
- 重点先覆盖:
PlaceMapAssetTileReleaseCourseSourceCourseSetCourseVariantMapRuntimeBinding
- 这批接口不会替换现有
events / event_releases / launch主链,而是增量补运行域对象
GET /admin/places
鉴权:
- Bearer token
用途:
- 获取地点对象列表
POST /admin/places
鉴权:
- Bearer token
用途:
- 新建地点对象
请求体重点:
codenameregioncoverUrldescriptioncenterPointstatus
GET /admin/places/{placePublicID}
鉴权:
- Bearer token
用途:
- 查看地点详情
- 同时带出该地点下的地图资产列表
POST /admin/places/{placePublicID}/map-assets
鉴权:
- Bearer token
用途:
- 在某个地点下创建地图资产
请求体重点:
codenamemapTypelegacyMapIdcoverUrldescriptionstatus
GET /admin/map-assets/{mapAssetPublicID}
鉴权:
- Bearer token
用途:
- 查看地图资产详情
- 同时带出瓦片版本和赛道集合摘要
GET /admin/map-assets
鉴权:
- Bearer token
用途:
- 查看地图资产列表
- 返回地点、当前瓦片版本和关联活动摘要
PUT /admin/map-assets/{mapAssetPublicID}
鉴权:
- Bearer token
用途:
- 更新地图资产基础信息
- 支持名称、封面、摘要、状态维护
POST /admin/map-assets/{mapAssetPublicID}/tile-releases
鉴权:
- Bearer token
用途:
- 为某个地图资产创建瓦片版本
请求体重点:
legacyVersionIdversionCodetileBaseUrlmetaUrlpublishedAssetRootmetadatastatussetAsCurrent
GET /admin/course-sources
鉴权:
- Bearer token
用途:
- 获取赛道原始输入源列表
POST /admin/course-sources
鉴权:
- Bearer token
用途:
- 新建赛道原始输入源
- 用于承接 KML / GeoJSON 等输入
请求体重点:
legacyPlayfieldIdlegacyVersionIdsourceTypefileUrlchecksumparserVersionimportStatusmetadata
GET /admin/course-sources/{sourcePublicID}
鉴权:
- Bearer token
用途:
- 查看单个赛道输入源详情
POST /admin/map-assets/{mapAssetPublicID}/course-sets
鉴权:
- Bearer token
用途:
- 在某个地图资产下创建赛道集合
请求体重点:
codemodenamedescriptionstatus
GET /admin/course-sets/{courseSetPublicID}
鉴权:
- Bearer token
用途:
- 查看赛道集合详情
- 同时带出它的 variant 列表
POST /admin/course-sets/{courseSetPublicID}/variants
鉴权:
- Bearer token
用途:
- 为某个赛道集合创建具体可运行赛道方案
请求体重点:
sourceIdnamerouteCodemodecontrolCountdifficultyconfigPatchmetadatastatusisDefault
GET /admin/runtime-bindings
鉴权:
- Bearer token
用途:
- 获取活动运行绑定列表
POST /admin/runtime-bindings
鉴权:
- Bearer token
用途:
- 把活动和地点、地图资产、瓦片版本、赛道方案正式绑定起来
请求体重点:
eventIdplaceIdmapAssetIdtileReleaseIdcourseSetIdcourseVariantIdstatusnotes
GET /admin/runtime-bindings/{runtimeBindingPublicID}
鉴权:
- Bearer token
用途:
- 查看单个运行绑定详情
POST /admin/ops/tile-releases/import
鉴权:
- Bearer token
用途:
- 运维入口第一期:按
place + map asset + tile release一次录入瓦片版本 - 可在录入时直接指定
setAsCurrent
请求体重点:
placeCodeplaceNamemapAssetCodemapAssetNamemapTypeversionCodetileBaseUrlmetaUrlpublishedAssetRootsetAsCurrent
POST /admin/ops/course-sets/import-kml-batch
鉴权:
- Bearer token
用途:
- 运维入口第一期:按一组 KML 路线批量录入赛道集合与 variants
- 适合把同一场地的一批路线一次性整理成
course set
请求体重点:
placeCodeplaceNamemapAssetCodemapAssetNamemapTypecourseSetCodecourseSetNamemodedefaultRouteCoderoutes[]
GET /admin/assets
鉴权:
- Bearer token
用途:
- 查看当前 backend 已纳管的正式资源对象列表
POST /admin/assets/register-link
鉴权:
- Bearer token
用途:
- 登记一个已有正式外链为受管资源
请求体重点:
assetTypeassetCodeversionpublicUrlstatusmetadata
POST /admin/assets/upload
鉴权:
- Bearer token
用途:
- 通过 backend 上传一个正式资源文件到 OSS,并自动纳管
表单重点:
assetTypeassetCodeversiontitleobjectDir可选statusmetadataJson可选file
GET /admin/assets/{assetPublicID}
鉴权:
- Bearer token
用途:
- 查看单个已纳管资源对象详情
GET /home
用途:
- 返回入口首页摘要
- 当前卡片摘要字段已统一补齐:
summarystatusstatusCodetimeWindowctaTextisDefaultExperienceeventTypecurrentPresentationcurrentContentBundle
GET /cards
用途:
- 按入口返回活动卡片列表
- 当前与
/home使用同一套卡片摘要语义
GET /me/entry-home
鉴权:
- Bearer token
用途:
- 返回“我的首页”聚合
- 当前
cards也已统一使用活动卡片最小摘要字段