API 工具

Postman 转 OpenAPI转换前后看得清

选择集合、规范或环境文件,核对请求清单与转换报告,再复制或下载当前结果。

Postman 转 OpenAPI

集合、规范或环境内容

结果

文本仅在当前浏览器处理,不发送 API 请求,不执行脚本,不获取远程引用。

输出选项

基于示例进行映射,不代表完整契约;请检查报告与剩余占位符。

500,000 字符 · 深度 60 · 50,000 节点 · 1,000 请求 · 500 条报告 · 5 秒。

结果已过期,请重新校验后导出。

复制和下载均导出所选视图的全部内容。脱敏只修改输出。

Postman 转 OpenAPI 常出现在接口交接时:手里有一组能调用的请求,却缺少可审阅的规范。集合记录具体调用,规范描述允许的输入和响应,两者包含的信息并不相同。这个工作台把能转换的部分和仍需补齐的部分一起呈现。

如果已经有规范,也可以反向生成集合。请保留原始契约,对照检查认证占位符、响应定义和参数约束;转换完成只说明文本处理成功,不代表接口已经测试通过。

为什么在这里做 Postman 转 OpenAPI

请求与遗漏都有可查的去向

Postman 转 OpenAPI 会递归读取集合中的文件夹,并把文件夹路径用作操作标签。请求清单展示读到了哪些调用,报告列出脚本、变量和未映射字段。同一路径同一方法出现两次时会停止转换,避免后面的请求覆盖前面的请求。

文件夹中的请求连接到规范文档,脚本卡片则进入带警示标记的分支。

把凭据检查放在文件交接之前

集合格式化和环境导出共用默认开启的脱敏选项。能识别的敏感值在输出中替换为占位符,禁用的环境条目另列报告。结果变短时,仍能查到哪些变量被跳过,而不是误以为所有内容都已完整迁移。

环境变量行流向配置文件,敏感值被遮罩,禁用条目进入报告列表。

导出前先确认这三件事

01

先选输入所属的格式

切换方向不会替换当前输入。切换后可载入该模式的示例,或导入匹配的本地文件。集合必须声明 2.1 格式,环境文件必须包含 values 数组,两者不能混用。

02

留意结果何时重新有效

自动转换在编辑停顿 350 ms 后执行。关闭自动后,可修改多处再按 Ctrl/Cmd + Enter 运行。输入或选项变化会立即禁用复制与下载,防止把上一次的结果带走。

03

确认正在导出哪个视图

结果视图导出转换文件,请求视图导出完整清单,报告视图导出全部问题代码和来源路径。界面每次仅展示 50 项,下载不会受这个展示数量限制。

集合、规范与环境各有对应出口

两个方向,版本写明

Postman 集合转换可生成 OpenAPI 3.0.3 的 JSON 或 YAML 文档。OpenAPI 转 Postman 接受 3.0 和 3.1 规范,输出 Collection 2.1;操作详情所需的本地引用会在当前文档内解析。

保留示例,不虚构契约约束

查询参数与普通请求头变成字符串示例,原始 JSON 请求体保留为示例,不擅自添加 required 或 enum。反向转换优先使用显式 example 或 default,缺少值时提供命名占位符,不生成随机测试数据。

认证和服务器有明确优先级

支持 Basic、Bearer,以及位于请求头或查询中的 API Key 映射。反向转换按操作、路径、根节点的顺序选择服务器,再取有效列表中的第一个。多服务器、缺失服务器和复杂认证组合会留下报告。

独立处理环境配置

Postman 环境变量从单独的环境 JSON 导出。启用的标量值转成字符串,null 转成空值,引号编码保留空格、换行和字面美元符号。非法键名或重复键会阻止导出,避免悄悄改变配置。

转换范围与需要补齐的内容

只接受声明支持的版本
集合输入限 Collection 2.1,规范输入限 OpenAPI 3.0.x 和 3.1.x。搜索 Swagger 转 Postman 时可能指向 Swagger 2.0,本工具不读取也不生成该旧版本;其他集合版本会明确报错。
脚本与作用域不能无损往返
不执行预请求脚本和测试,也不把它们改写成断言。格式化保留脚本文本,转换则报告其未映射。动态变量不求值,独立环境、全局变量和密钥库也不会自动合并进集合。
请求示例不能证明完整模型
生成的规范只描述观察到的示例。反向转换不保留响应定义和校验约束,并在报告中提示。复杂参数序列化、回调、webhooks、OAuth 流程、签名和二进制文件内容均不在映射范围内。
引用与服务器不会暗中补齐
外部文件或远程引用不获取;本地引用缺失、规范无效时停止处理。集合中的基地址变量无法解析时,规范服务器写为 / 并报告;反向转换缺少服务器时使用 example.invalid,需在实际调用前修改。
脱敏不是任意秘密识别器
会匹配敏感键名、secret 类型变量、认证值、Cookie 和 URL 凭据。JSON 请求体按结构检查,非结构化请求体整体遮罩。说明文字和脚本中的任意秘密仍可能保留,因此应复核输出;源输入不因脱敏而改写。
超限和含糊输入会停止
输入限 500,000 字符、深度 60、50,000 节点、1,000 请求和 500 条报告,结果包限 2,000,000 字符,工作线程限时 5 秒。重复键、不安全数值、YAML 别名、自定义标签和多文档均拒绝。

Postman 转 OpenAPI 常见问题

支持哪些 Swagger 或 OpenAPI 版本?

接受 OpenAPI 3.0.x 和 3.1.x 的 JSON 或 YAML 文件,输出集合为 2.1。集合转规范时固定生成 OpenAPI 3.0.3。Swagger 2.0 和 OpenAPI 3.2 不在此页的兼容范围内。

Postman 与 OpenAPI 双向转换能无损完成吗?

不能。脚本驱动的集合和声明式规范承载的信息不同。逐条检查转换报告,把输出作为迁移起点;转换成功不代表认证已可用,也不代表示例与真实接口响应一致。

生成集合时怎样确定 baseUrl?

按操作 > 路径 > 根节点选择有效服务器,将首个地址写入集合的 baseUrl 变量;后续操作使用独立的基地址变量。服务器模板使用声明的默认值,未提供服务器时用 example.invalid 并报告。

能阻止 secret 变量出现在导出文件里吗?

保持凭据脱敏开启,secret 标记或敏感名称匹配的变量会替换成 [REDACTED]。这只控制本工具的输出,不修改 Postman 的导出权限,也无法识别任意文本里隐藏的全部秘密。

导出集合时能包含所有环境变量吗?

不能自动包含。请另外导出环境 JSON,并在“环境 → .env”模式处理。这里只读取该文件中启用的值,不会补取文件里没有的本地、全局或密钥库变量。

遇到未覆盖的文档情况?

从一组可核对的请求开始

先用 Postman 转 OpenAPI 处理小集合,对照请求清单和转换报告,补齐未解析的占位符,再保存适合下一步使用的文件。