API设计文档的核心要素
写API设计文档不是为了应付差事,而是为了让团队成员能快速理解接口用途。比如你同事刚接手项目,打开文档一眼就能看懂每个接口是干啥的、怎么调用,这就说明文档写到位了。
一个清晰的API文档至少包含:接口地址、请求方法、参数说明、返回示例、错误码解释。别小看这些内容,漏掉任何一个都可能让人卡半天。
明确接口基本信息
每个接口都要标明URL路径和HTTP方法。比如用户登录接口,应该是POST /api/v1/login。这个信息必须放在最前面,不能藏在段落里让人猜。
接着列出所有请求参数,区分必填和选填项。可以用表格形式展示,字段名、类型、是否必填、描述四栏足够清楚。比如:
| 字段 | 类型 | 必填 | 说明 |
|----------|--------|------|--------------|
| username | string | 是 | 用户名 |
| password | string | 是 | 密码(加密后)|
| device_id| string | 否 | 设备唯一标识 |
提供真实的请求与响应示例
光有字段说明不够直观,加上实际数据才靠谱。比如登录成功时返回的数据结构长这样:
{
"code": 0,
"message": "success",
"data": {
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"expire_at": 1735689600
}
}
再补上一个失败的情况,比如密码错误:
{
"code": 401,
"message": "用户名或密码错误",
"data": null
}
前后端对接时,这类例子比千言万语都有用。
别忘了错误码清单
项目做大了以后,错误码容易混乱。建议单独列一张表,把常见状态码和业务错误码统一管理。比如4001代表token过期,4002是权限不足。前端看到这个就知道该跳转到哪个页面,而不是一脸懵。
有些团队喜欢用HTTP状态码代替一切,但实际开发中你会发现,光靠200、404、500根本不够用。自定义业务错误码更精准。
保持文档可维护性
很多人写完初版文档就再也不碰了,结果代码改了好几轮,文档还停留在第一版。避免这种情况的办法是把文档纳入开发流程——每次改接口,必须同步更新文档。
可以用Swagger这类工具自动生成基础结构,但别完全依赖它。机器生成的内容往往缺少上下文解释,人工补充使用场景和注意事项才更有价值。比如提醒“此接口每分钟限流10次”,这种信息不会自动出来。
让文档对新手友好
试着站在新人角度读一遍文档。如果某个术语没解释,某个流程断在半路,那就要补全。可以加一句“首次调用前需先完成OAuth授权”,或者附上测试环境的访问地址。
有时候一张简单的调用流程图也胜过大段文字。不需要多精美,画出关键节点就行。