开启 3 天免费试用
注册即可免费体验全部高级功能。
*仅限新用户;每位用户只能获得一次试用。


要用 AI 创建 API 文档,先从实际 OpenAPI 文件、路由、类型、校验规则、测试和获批示例建立带版本的证据台账。要求 AI 只起草能引用台账的事实,冲突和缺失字段必须保留。发布前由 API 负责人逐项确认认证、参数、请求体、响应、错误、示例、版本和弃用说明。
模型只是文档助手,不是 API 真源。AI 使用总指南介绍输入控制和人工审批。如果只是理解函数或模块,应使用代码讲解流程;本教程的产物是供调用方依赖的契约,一个自信但虚构的字段就可能破坏集成。
关键要点:
- 先确定 API 版本和文档读者。
- 为证据来源排定优先级,不要悄悄混用。
- 每条文档事实都要能引用证据台账。
- 冲突和缺失字段保留为待审项,不由模型补全。
- 发布前由 API 负责人逐项确认。
“给 API 写文档”这个范围太宽。先决定读者是首次接入的外部开发者、内部服务负责人、SDK 维护者,还是排查请求的运维人员。明确纳入范围的产品、服务器、操作和生命周期阶段。然后冻结一个精确的证据快照:仓库提交版本、生成的规范产物、服务发布版本或获批的资料包。
OpenAPI 为 HTTP API 提供机器可读的描述格式。其版本索引是查找规范版本的稳定入口,被描述的文档应声明实际使用的版本。[1]本流程中,OAS 3.2.0 是经过核对的参考,并不表示每个 API 都使用它,或它会一直是最新版本。[2]同时记录 OpenAPI 规范版本和 API 自身的产品版本。
编写一份文档任务说明:
| 字段 | 示例 |
|---|---|
| 受众 | 正在评估某项集成的外部开发者 |
| API 版本 | 来自发布产物的 2026-08 |
| OAS 版本 | 被检查文档所声明的值 |
| 服务器 | 仅限已批准的公开或沙盒端点 |
| 操作 | 明确的许可清单 |
| 排除项 | 内部管理路由和实验性字段 |
| 审批 | API 负责人、安全审核人、文档负责人 |
不要把真实凭据、私有端点、客户记录、内部拓扑、未公开漏洞或不受限的生产日志放进模型上下文。使用脱敏的测试夹具和获批沙盒值。
一个 API 可能有多份互相冲突的描述。让 AI 合并前,先确定本项目的优先级。常见的候选顺序是:获批的契约产物、符合性测试、路由和校验代码、类型定义、持续维护的示例,最后是说明文字。但正确的顺序取决于你的团队如何治理这个 API。如果已知生成的 OpenAPI 落后于代码,就不要假定它具有权威性;如果获批契约另有规定,也不要假定实现行为就是有意为之。
每条声明建立一行台账:
| 声明 ID | 操作 | 字段 | 声称值 | 证据位置 | 证据版本 | 状态 |
|---|---|---|---|---|---|---|
| C-014 | createWidget | 必需标头 | Idempotency-Key | OAS 路径 + 测试名称 | 提交/引用 | 已确认 |
| C-015 | createWidget | limit 最大值 | 100 或 200 | 数据结构与验证器对比 | 提交/引用 | 冲突 |
AI 可以归组和比较这些行,但不得替“冲突”行选出答案。把决定交给契约负责人,并保留解决记录的引用。
把操作提取到一张表中,包括方法、路径、操作 ID、摘要、标签、可见性和证据位置。找出重复与缺口。无公开契约的路由可能是有意保留的内部功能;在 OpenAPI 中有定义却无实现的操作,可能是计划中、已过时或生成错误的。把它标记为待审核,而不是写成已可用。
让 AI 返回三份清单:
要求使用精确的路由和数据结构标识符。仅凭自然语言上的相似,不足以判定 /users/{id} 和 /accounts/{accountId} 描述的是同一资源。
认证说明调用方如何证明身份;授权决定该身份可以做什么。从获批来源中记录安全方案、凭据放置位置、权限范围或角色、环境、过期行为,以及相关的失败响应。绝不要生成真实令牌,也不要把凭据粘贴进示例。
需要区分:
示例应使用一眼可辨的假占位符,例如 YOUR_SANDBOX_TOKEN。如果规范和中间件的行为不一致,在安全和 API 负责人解决之前,不要把任何一方写成定论。
对每个路径、查询、标头和 Cookie 参数,记录名称、位置、是否必需、类型、格式、约束、默认值、示例和来源。保留各种细微区别,例如“缺失”与“空值”、“省略”与 null、字节长度与字符长度。
对请求体,记录媒体类型、数据结构变体、必需属性、嵌套约束和条件规则。生成的描述常遗漏类型定义之外实现的校验。把数据结构中的约束与验证器和契约测试对照。如果某条规则只在代码中观察到、尚未被批准为契约行为,就把它标记出来。
需要精确时,用字段表代替段落:
| 字段 | 必需 | 类型 | 约束 | 示例 | 证据 |
|---|---|---|---|---|---|
name | 是 | 字符串 | 1–80 个字符 | Sample widget | 数据结构 S-8,验证器 V-3 |
示例必须符合文档中的数据结构。用验证器或获授权的沙盒运行它们;不要因模型生成了看似合法的 JSON 就标为“已测试”。
RFC 9110 定义了 HTTP 语义,包括方法、HTTP 状态码、字段和缓存概念。[3]用它来解释协议含义,同时以 API 契约为准,确定该操作实际返回哪些状态码和标头。
对每个操作,覆盖所有获批的成功响应和相关的失败响应:
不要仅因为某个方法通常被视为幂等,就写“可以安全重试”。应用层副作用、幂等键、超时和结果不明确的失败,都需要具体的契约证据。
RFC 9457 规定了 HTTP API 的 Problem Details(问题详情),这是一种承载机器可读错误信息的结构化方式。[4]一个 API 可能使用这种格式、另一种有文档记录的封装格式,或几种遗留格式。要识别实际契约,而不是在 API 未变更时把错误改写成 Problem Details。
建立错误台账,记录状态码、稳定错误码、类型 URI(如有使用)、面向用户的消息、字段详情、是否可重试和适用的操作范围。把以下几类声明分开:
绝不要从全局枚举推断出每种可能的错误。要通过契约、代码路径或测试,证明某个操作确实会返回该错误。不要暴露堆栈跟踪、内部类名、数据库细节或敏感标识。
每个示例应以最小的完整请求讲解一项操作。使用合成名称、不可路由或获批的沙盒值,以及明显的占位符。把请求、响应和相关标头放在一起展示。注明所用环境,以及是否真的有人执行过。
建立示例登记表:
| 示例 ID | 操作 | 测试夹具 | 校验方式 | 最后检查 | 负责人 |
|---|---|---|---|---|---|
| EX-01 | createWidget | 合成对象 | 仅数据结构 / 沙盒运行 | 日期 | 姓名 |
若示例只通过了数据结构校验,就如实说明;符合数据结构的请求仍可能因授权或业务规则失败。如果在沙盒中运行过,按政策保留安全的命令、响应、发布版本和时间戳。运行任何生成的命令行指令前先审阅;AI 生成代码审阅指南介绍了权限、密钥和危险操作。
只有在有证据时,才记录分页方式、游标是否不透明、排序保证、过滤条件、最大页面大小、限流信号、并发控制和幂等性。这些既是常见的集成失败点,也是常见的幻觉对象。
对于版本,要区分规范格式版本、API 产品版本、操作版本、数据结构版本和文档修订版本。避免写“最新版本是 3.2.0”这类假定永不过时的句子,应说明检查了哪个产物及时间。对于弃用,记录受影响的元素、公告来源、替代方案、日期、兼容行为和有权决定移除的人。模型不得虚构停止服务日期。
只根据附带的证据台账起草 API 文档。
每项操作包括:
- 用途和受众;
- 认证和授权;
- 参数和请求体;
- 成功响应和已知错误;
- 一个合成示例;
- 版本、弃用和未解决事项。
每条契约陈述之后都引用声明 ID。不得解决标为“冲突”的行。
保持“未知”字段可见。不得生成真实凭据、生产端点、测试结果、
重试保证或没有依据的错误。
另外输出一份审核人检查清单。
草稿只是证据的一种视图,不是新的真源。审核人修改事实时,先更新权威契约或冲突解决记录,再重新生成或编辑正文。
对 OpenAPI 文档运行结构检查,对示例进行数据结构校验,检查链接,检查代码块格式,并比较操作覆盖情况。在获授权的情况下,对匹配的沙盒发布版本执行少量示例。记录每项批准依据的证据和检查;一次成功的请求不能为所有操作背书。
退出条件应包括:范围内所有操作都有交代;没有未解决的、阻碍发布的冲突;认证已审核;示例已脱敏并准确标注;错误目录已检查;链接有效;并且具名的 API、安全和文档负责人批准了这个确切修订版本。契约、实现、网关策略或发布版本变化时,重新运行这些检查。
# API 文档证据
- API / 发布版本:
- 产物声明的 OAS 版本:
- 仓库或产物引用:
- 受众与范围:
- 排除的操作:
## 操作
- 操作 ID:
- 方法与路径:
- 证据位置:
- 认证 / 授权:
- 参数:
- 请求数据结构:
- 成功响应:
- 错误响应:
- 分页 / 幂等 / 限制:
- 合成示例及校验状态:
- 版本 / 弃用:
- 冲突与未知项:
- 负责人:
## 审批
- 契约检查:
- 示例检查:
- 安全审核:
- API 负责人:
- 文档负责人:
可以,它能整理来自路由、类型、测试、示例和维护中说明文字的证据。由于没有单一的机器可读契约,证据台账更加重要。
用精确位置和版本记录冲突,由指定的契约负责人决定修正实现、规范还是两者。
可以根据数据结构起草,但必须使用合成数据并经过校验。要清楚区分数据结构校验和实际执行过的沙盒请求。
不一定。提供一致的错误目录并说明各操作的适用情况;恢复步骤或字段需要更多解释时,再单独展开。
它可以找出候选的代码路径,但在获批来源或负责人确认之前,不要把某个状态码作为契约行为发布。
采用同样的证据纪律,并配合适当的访问控制。不要暴露私有端点、网络拓扑、凭据或敏感的运维细节。
当契约、实现、网关策略、示例或发布版本发生变化时,重新生成并审核。自动化的是漂移检测,而不是自动批准。
至少由负责的 API 负责人和文档负责人批准;涉及认证、隐私和受监管行为时,还应由安全或相关领域负责人批准。
Sources checked 2026 年 8 月 29 日。
注册即可免费体验全部高级功能。
*仅限新用户;每位用户只能获得一次试用。