文档版本:v1.10 最后更新:2026-04-03 20:10:25
说明:
POST /auth/login/wechat-miniGET /me/entry-homeGET /events/{eventPublicID}/playPOST /events/{eventPublicID}/launchPOST /sessions/{sessionPublicID}/startPOST /sessions/{sessionPublicID}/finishGET /sessions/{sessionPublicID}/resulteventPublicID = evt_demo_001channelCode = mini-demochannelType = wechat_minilaunch 返回值为准launch.resolvedRelease.releaseIdlaunch.resolvedRelease.manifestUrllaunch.resolvedRelease.manifestChecksumSha256launch.config.configUrllaunch.config.configLabellaunch.config.releaseIdlaunch.config.routeCodelaunch.business.sessionIdlaunch.business.sessionTokenlaunch.business.sessionTokenExpiresAtplay.assignmentModeplay.courseVariants[]
idnamedescriptionrouteCodeselectablelaunch.variant.idlaunch.variant.namelaunch.variant.routeCodelaunch.variant.assignmentModesession / ongoing / recent / result 摘要中补:
variantIdvariantNamerouteCodevariantIdlaunch 返回最终绑定结果assignmentMode=manual 且前端暂时未传 variantIdGET /events/{eventPublicID}/playPOST /events/{eventPublicID}/launchGET /me/entry-homeGET /sessions/{sessionPublicID}GET /sessions/{sessionPublicID}/resultGET /me/resultsGET /me/sessionsevt_demo_variant_manual_001 曾存在历史残留的 launched session,导致 play.primaryAction=continuePOST /dev/bootstrap-demolaunchedrunning
session 改成 cancelledBootstrap Demo一键标准回归回归结果汇总GET /events/{eventPublicID}/playPOST /events/{eventPublicID}/launchGET /sessions/{sessionPublicID}/resultGET /me/sessionsGET /me/resultsBootstrap Demo一键补齐 Runtime 并发布
作为联调回归入口placemap assettile releasecourse sourcecourse setcourse variantruntime bindingpresentationcontent bundlereleasepresentation importevent 默认 active 绑定publish 默认继承resolvedReleasebusinessvariantruntimepresentationcontentBundleGET /events/{eventPublicID} 返回:
currentPresentationcurrentContentBundleGET /events/{eventPublicID}/play 返回:
currentPresentationcurrentContentBundlePOST /events/{eventPublicID}/launch 返回:
launch.presentationlaunch.contentBundleresolvedReleasebusinessvariantruntimefinishedfailedcancelledevent/*.jsonmanifestUrlPOST /sessions/{sessionPublicID}/finish 且 status=cancelledsessionToken 在该场景允许继续用于 finish(cancelled)cancelled 和 failed 后都不会再作为 ongoingSession 返回finish(cancelled)start / finish 收口成幂等处理start:launched -> 推进到 runningrunning / 终态 -> 直接返回当前 sessionfinish:launch 当前关键字段为前端正式联调契约:resolvedRelease.manifestUrlresolvedRelease.releaseIdbusiness.sessionIdbusiness.sessionTokenbusiness.sessionTokenExpiresAtb2f.md 明确通知,再安排联调变更launched 和 running 会被识别为 ongoingcancelled、failed、finished 都不会再进入 ongoing/me/entry-home 与 /events/{eventPublicID}/play 当前都复用同一 ongoing 判定逻辑/me/results 当前只返回终态 session:finishedfailedcancelledidstatuseventIdeventNamereleaseIdconfigLabelrouteCodeeventPublicIDreleaseIdmanifestUrlpublish build 只写 DB、不上传 OSS 的问题eventPublicID = evt_demo_001releaseId = rel_e7dd953743c5c0d2manifestUrl = https://oss-mbh5.colormaprun.com/gotomars/event/releases/evt_demo_001/rel_e7dd953743c5c0d2/manifest.jsonPOST /dev/bootstrap-demoGET /dev/workbench/admin/maps/admin/playfields/admin/resource-packsevent 组装接口:/admin/events/admin/events/{eventPublicID}/sourceGET /admin/events/{eventPublicID}/pipelinePOST /admin/sources/{sourceID}/buildGET /admin/builds/{buildID}POST /admin/builds/{buildID}/publishrollback 接口:POST /admin/events/{eventPublicID}/rollbackmanual 多赛道 demo 活动:eventPublicID = evt_demo_variant_manual_001releaseId = rel_demo_variant_manual_001channelCode = mini-demochannelType = wechat_miniassignmentMode = manualcourseVariants = [variant_a, variant_b]variant_a
name = A 线routeCode = route-variant-avariant_b
name = B 线routeCode = route-variant-bPOST /dev/bootstrap-demo 自动准备variant_b 的 service 层回归验证launch 选定的 variantId 会稳定回流到:GET /me/entry-homeGET /sessions/{sessionPublicID}/resultGET /me/resultsplay.assignmentMode=manualplay.courseVariants=2launch.variant.id=variant_bentry-home recent.variantId=variant_bresult.session.variantId=variant_bresults[0].session.variantId=variant_blaunch 新增兼容字段:launch.runtimeruntimeBindingIdplaceIdmapIdtileReleaseIdcourseSetIdcourseVariantIdresolvedReleasebusinessvariantcurrentPresentation.templateKeycurrentPresentation.versioncurrentContentBundle.bundleTypecurrentContentBundle.versionlaunch.presentation.templateKeylaunch.presentation.versionlaunch.contentBundle.bundleTypelaunch.contentBundle.versionGET /events/{eventPublicID}GET /events/{eventPublicID}/playPOST /events/{eventPublicID}/launchresolvedReleasebusinessvariantruntimetemplateKey / version / bundleTypefinish(cancelled)failed / cancelled 后 ongoing 消失start / finish 不再打断主链play -> launch -> map loadB2F-015f2b.md 标具体接口和返回值