Skip to main content
所有路径都挂在 $BASE/v1 下,并要求 Authorization: Bearer <secret>。本页是地图,详情在两处:
  • 本 tab 的**「接口」**分组逐一收录每个操作——完整的请求/响应结构、逐字段说明,并带 Try it 调试台,可用密钥发起调用。
  • API 返回 OpenAPI 规范:GET $BASE/openapi.json 是 OpenAPI 3.1 规范(可用于生成客户端),$BASE/docs 由部署提供同一份交互式文档。
本页覆盖的是 Secret 密钥的开放 API。面向浏览器的 Storefront API 有自己的参考:本 tab 的**「Storefront 接口」**分组、GET $BASE/storefront/openapi.json,以及 $BASE/storefront/docs。

活动

控制台的规则原样生效:发布需要开始时间(400);活动一旦产生过订单,币种即锁定(412);变更起始日期会清空议程——第一次尝试返回 412,带上 "confirmAgendaReset": true 重发才会执行。

票种

改价永远不会改写已售订单——订单上的金额是购买时刻的快照。权益绑定、报名表单与退款政策在控制台配置,不经 API。

报名

需要纳入设计的行为:
  • 审批模式的票种,API 录入落在 pending ——与控制台操作员不同,API 不代表准入决定,需显式审批。
  • 票已满 → 412(票种开候补则落 waitlisted)。
  • 邮箱重复 → 200 且 "created": false,返回已有报名——绝不重复,绝不报错。
  • 审批/驳回只对 pending 生效;其余状态返回 412。
  • 每条报名带 checkinCode(CHK-…)——签到用的胸卡凭证——以及 passUrl:托管入场凭证页(二维码、钱包通行证、证书、问卷),打开前会要求此人输入邮箱。

兑换码

自定义 code 与活动内已有的重复时返回 409。

加购与捆绑

捆绑内每个项目必须是同一活动中真实存在的票种或加购项(否则 400)。

订单与购买流

付费单的结算由平台的 Stripe webhook 完成——轮询订单直到 paid。退款仍是控制台决定。端到端全流程见从后端发起购买流。

签到

只有 confirmed 状态的报名能签到(412)。同一扇门第二次扫码返回 200 和 "alreadyCheckedIn": true。

议程、讲者与场地

参会者

展商

设计为只读:确认展商、编辑名册、分配摊位都是控制台里的决定。registrationId 过滤返回该报名所属的展商——例如扫到徽章、解析出报名之后。

错误包络

所有错误,无论状态码,使用相同的结构:

限流与重试

每把密钥每分钟 120 次请求。超出后返回 429,直到窗口重置。对 429 做退避。重复报名与重复扫码都以确认代替失败,因此写操作的重试是安全的。

相关页面

快速上手

同一流程,端到端。

订单

只读订单实际代表什么。