{"openapi":"3.1.0","info":{"title":"舒澳官网 Agent 预约申请 API","version":"0.2.1","description":"request_only：无实时号源、不占号、不自动建患者、不承诺预约成功。Agent只创建无身份信息草稿，将confirmationUrl交给患者本人确认。首版成年人为本人申请。手机号未经短信验证，必须由门店回拨核实。不得收集病历。MCP暂未提供。"},"servers":[{"url":"https://www.shuao.cc/api/agent-booking/v1"}],"paths":{"/capabilities":{"get":{"operationId":"get_capabilities","description":"先读取submissionEnabled，关闭时仅可查看接入说明。","responses":{"200":{"description":"JSON response; consult state, never infer an appointment from HTTP success."}}}},"/clinics":{"get":{"operationId":"list_clinics","description":"读取开放门店的公开资料。","responses":{"200":{"description":"JSON response; consult state, never infer an appointment from HTTP success."}}}},"/services":{"get":{"operationId":"list_services","description":"读取检查和咨询项目，不判断适应证。","responses":{"200":{"description":"JSON response; consult state, never infer an appointment from HTTP success."}}}},"/availability":{"get":{"operationId":"get_availability","description":"request_only，无可保证时段，空slots不等于门店已满。","responses":{"200":{"description":"JSON response; consult state, never infer an appointment from HTTP success."}}}},"/drafts":{"post":{"operationId":"create_booking_draft","description":"不接受姓名、电话、病历或内部branchId。原样展示返回的患者确认链接；GET链接不提交申请。Idempotency-Key为至少32随机字节的base64url编码，须保密，不用手机号或固定字符串。","parameters":[{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{43,100}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["clinicRef","serviceCode","preferredDate","preferredPeriod"],"properties":{"clinicRef":{"type":"string","enum":["shuyuan-road"]},"serviceCode":{"type":"string","enum":["oral-checkup","implant-consultation","orthodontic-consultation","restoration-consultation"]},"preferredDate":{"type":"string","format":"date","description":"Asia/Shanghai, today through the next 30 days"},"preferredPeriod":{"type":"string","enum":["morning","afternoon","evening"]}}}}}},"responses":{"201":{"description":"草稿，30分钟有效；confirmationUrl含短期能力令牌，请勿公开转发。","content":{"application/json":{"schema":{"type":"object","properties":{"draftRef":{"type":"string"},"draftVersion":{"const":1},"accessToken":{"type":"string"},"confirmationUrl":{"type":"string","format":"uri"},"expiresAt":{"type":"string","format":"date-time"},"availabilityMode":{"const":"request_only"}}}}}},"400":{"description":"JSON response; consult state, never infer an appointment from HTTP success."},"409":{"description":"JSON response; consult state, never infer an appointment from HTTP success."},"410":{"description":"JSON response; consult state, never infer an appointment from HTTP success."},"429":{"description":"JSON response; consult state, never infer an appointment from HTTP success."}}}},"/drafts/{draftRef}/operation":{"get":{"operationId":"get_booking_operation","security":[{"draftCapability":[]}],"parameters":[{"name":"draftRef","in":"path","required":true,"schema":{"type":"string"}}],"description":"使用草稿accessToken，只返回脱敏申请状态。SUBMITTING/RECONCILING不能称已接收；PENDING_CLINIC表示官网预约申请工作台已持久保存、等回拨，始终不是预约成功。令牌30分钟过期后联系门店核实。","responses":{"200":{"description":"JSON response; consult state, never infer an appointment from HTTP success."},"404":{"description":"JSON response; consult state, never infer an appointment from HTTP success."},"410":{"description":"JSON response; consult state, never infer an appointment from HTTP success."}}}}},"components":{"securitySchemes":{"draftCapability":{"type":"http","scheme":"bearer","description":"仅此草稿的短期只读访问令牌，不授予患者身份或自动提交权限。"}}}}