Skip to main content

Interface 规范

目标

规范定义和使用接口

接口分类

分类 publicpublic(公开接口) adminadmin(管理员接口) internalinternal(内部接口)

谁在用

第三方集成伙伴、外部开发者、移动/前端应用

内部运营/客服/风控团队,或企业租户管理员(B2B)

微服务间调用、批处理/定时任务、数据/搜索/风控等内部系统

典型场景

资源查询/搜索、下单/提交、用户自助操作、Webhook 订阅管理

账户治理与封禁、权限/组织/策略管理、退款/对账、数据导出与擦除(GDPR)、密钥轮换、开关/灰度配置

库存预留与释放、账单结算与对齐、索引/缓存重建、异步事件发布、批量回填与迁移

示例接口

GET /api/v1/public/products/{id}

POST /api/v1/admin/users/{id}:block

POST /ap/v1/internal/search:index

如何选择

面向第三方或终端客户端且需长期稳定

仅运营/管理员可执行、影响资金/权限/合规

仅服务/Job 调用、内部数据形态、可频繁调整

接口定义

interface库新建或者修改proto文件,在自己的项目里面是否使用脚手架生成的服务端和客户端代码不做硬性要求。

公共接口,位置:yeying/api/common/

专有接口,位置:yeying/api/<app name>/

兼容性,尽量不动路经的版本号/api/v1/xx,除非无法向下兼容,才使用/api/v2/xx