Files
hfb_sys/docs/api.md
T
2026-06-03 12:21:23 +08:00

4.6 KiB

API 规划

API 规划以 项目计划 第 10 章为准。

一期接口按模块推进:

  • 认证:短信验证码、手机号登录、Token 刷新、退出登录。
  • 实名:发起认证、查询状态、服务回调。
  • 发布:创建、修改、提交审核、下架、列表、详情。
  • 订单:创建、取消、确认收号、发起结账、确认结账、修改结账、确认/拒绝修正、发起申诉。
  • 交接:提交交接说明、查看交接记录。
  • 钱包:余额、流水、提现预留。
  • 通知:站内信列表、标记已读。
  • 后台:审核、订单、仲裁、资金流水、系统配置、审计日志。

已实现接口

  • POST /api/auth/sms/send
  • POST /api/auth/sms/login
  • POST /api/auth/refresh
  • POST /api/auth/logout
  • GET /api/me
  • POST /api/realname/start
  • GET /api/realname/status
  • POST /api/open/listing-uploads
  • GET /api/listings
  • GET /api/listings/default-upload-screenshot
  • GET /api/listings/{id}
  • POST /api/listings
  • PUT /api/listings/{id}
  • POST /api/listings/{id}/submit-review
  • DELETE /api/listings/{id}
  • GET /api/seller/listings
  • GET /api/seller/listings/{id}
  • POST /api/orders
  • GET /api/orders
  • GET /api/orders/{id}
  • POST /api/orders/{id}/pay
  • POST /api/orders/{id}/pay/query
  • POST /api/orders/{id}/cancel
  • POST /api/orders/{id}/handoff
  • GET /api/orders/{id}/handoff-records
  • POST /api/orders/{id}/confirm-receive
  • POST /api/orders/{id}/checkout
  • POST /api/orders/{id}/checkout/confirm
  • POST /api/orders/{id}/checkout/counter
  • POST /api/orders/{id}/checkout/accept
  • POST /api/orders/{id}/dispute
  • GET /api/disputes
  • GET /api/disputes/{id}
  • GET /api/wallet/balance
  • GET /api/wallet/ledger
  • POST /api/wallet/recharge/pay
  • POST /api/wallet/recharge/pay/{id}/query
  • POST /api/files/upload
  • GET /api/files/object
  • POST /api/payments/leshua/notify
  • GET /api/notifications
  • POST /api/notifications/{id}/read
  • GET /api/admin/auth/captcha
  • POST /api/admin/auth/login
  • POST /api/admin/auth/logout
  • GET /api/admin/me
  • GET /api/admin/dashboard
  • GET /api/admin/users
  • POST /api/admin/users/{id}/freeze
  • POST /api/admin/users/{id}/unfreeze
  • GET /api/admin/orders
  • GET /api/admin/orders/{id}
  • GET /api/admin/orders/{id}/handoff-records
  • GET /api/admin/listings
  • GET /api/admin/listings/pending
  • GET /api/admin/listings/{id}
  • POST /api/admin/listings/{id}/approve
  • POST /api/admin/listings/{id}/reject
  • POST /api/admin/listings/{id}/offline
  • POST /api/admin/listings/{id}/mark-abnormal
  • POST /api/admin/orders/{id}/close
  • POST /api/admin/orders/{id}/mark-abnormal
  • GET /api/admin/disputes
  • POST /api/admin/disputes/{id}/arbitrate
  • GET /api/admin/wallet/ledger
  • GET /api/admin/system-configs
  • PUT /api/admin/system-configs/{key}
  • GET /api/admin/audit-logs
  • GET /api/admin/files/object

说明:POST /api/listingsPUT /api/listings/{id} 支持 screenshot_urls 数组,用于保存号主上传的账号资产截图地址。GET /api/admin/listings 支持按 owner_idstatusreview_statuslimit 查询商品。GET /api/admin/wallet/ledger 支持按 user_idorder_idbiz_typelimit 查询最近资金流水。GET /api/admin/audit-logs 支持按 actor_idactionbiz_typelimit 查询最近审计日志。/api/admin/* 当前已使用独立后台登录,后续接入 RBAC 和 Casbin 权限后再按角色收紧访问控制。

开放上传说明:POST /api/open/listing-uploads 不需要登录鉴权,用于接收外部软件上传的账号资料。请求体包含 uploadTimeuploaderNamedata,默认按单条账号对象处理,也兼容少量数组。后端会按 uploaderName 优先匹配 admin_users.username,未匹配时再匹配唯一 nickname,只使用 status = active 的后台用户;匹配成功后自动创建/复用对应的客服代发布普通用户,生成 draft + pending 的待审核商品,并使用 /api/listings/default-upload-screenshot 作为默认账号截图。上传原始内容和转换结果记录在 listing_uploads 表中。

文件上传说明:POST /api/files/upload 使用 multipart/form-data,文件字段名为 file,可选 scenelistinghandoffdisputerealnameavatar;当前允许 10MB 内的 JPG、PNG、WebP 和 PDF。返回的 url 为后端代理访问地址。后台查看私有文件使用 GET /api/admin/files/object?key=...

订单超时扫描任务为后端内部任务,不暴露公开 API;超时阈值通过 /api/admin/system-configs 调整。