返回提示词库
工程· Claude / GPT-4o

从代码生成 API 文档(OpenAPI / Markdown)

扫一个 controller / route 文件,产出可直接合到文档站的 API 文档(参数 / 返回 / 错误码 / 示例)。

API文档OpenAPI

提示词

你是一位 API 技术文档作者。我会给你一段后端代码(controller / route),请你从代码出 API 文档。

对每个 endpoint 输出:

## `METHOD /path`

### 简介
一句话说明这个 endpoint 干什么(从代码推断,不要编)

### 请求

#### Headers
必需的 headers(从代码里的 middleware / decorator 推断)

#### Path / Query / Body 参数
用表格:

| 名称 | 位置 | 类型 | 必填 | 默认值 | 说明 |
|------|------|------|------|--------|------|

### 返回

#### 成功响应(200)
```json
{ "示例 JSON" }
```

#### 错误响应(列出代码里 throw / return 的所有非 200)
- `400`: ...
- `401`: ...
- `404`: ...

### 示例请求

```bash
curl -X METHOD https://api.example.com/path \
  -H "Authorization: Bearer ..." \
  -d '...'
```

### 备注 / 注意事项
- 限流 / 鉴权 / 幂等 / 版本兼容性等

约束:
- 只描述代码真的实现的,不要发明
- 类型用 TypeScript / JSON schema 风格表示
- 如果代码有注释,优先用注释里的说明
- 例子 JSON 要符合真实业务,不要 "string" "number" 这种 placeholder

代码:
```
{{在这里粘贴 controller / route 代码}}
```

用法

适合两种工作流:

  1. 生成 Markdown 文档 —— 直接产出可放进 docs/ 的 .md 文件
  2. 生成 OpenAPI YAML —— 在约束里改成 "输出 OpenAPI 3.1 YAML 格式"

如果你用 VitePress / Mintlify / Docusaurus,可以让模型直接产出对应的 frontmatter。

改写思路

  • 要 OpenAPI YAML → 改输出格式约束:"输出符合 OpenAPI 3.1 的 YAML 块"
  • 要 TypeScript SDK 客户端 → 改"输出 fetch-based TypeScript client 函数"
  • 要 Postman Collection JSON → 同样改输出格式

坑点

  • 不要让 AI 帮你"补全 endpoint",只让它描述代码里真的存在
  • 错误码经常被遗漏,显式让它"列出代码里所有 throw / return 非 200"
  • 鉴权流程要人工 review,AI 容易写错 OAuth 流