JSON Schema 生成器

粘贴一份 JSON 样例即可推断出 draft-07 JSON Schema;用 --- 分隔多份样例可合并推断:类型取并集、数组 items 全量合并、required 只保留出现在全部样例中的公共键,还能自动识别 date-time、email、uuid、uri 格式。全程本地生成。

JSON 样例

多份样例之间用单独一行 --- 分隔,用于推断公共必填键。

Schema 输出

// 生成的 JSON Schema 将显示在这里

场景模板 · 顶层结构树 · YAML / TypeScript 导出

10 份常见接口样例一键填入并生成;同一份 Schema 实时转成 YAML 与 TypeScript interface,右侧结构树按类型着色。

导出格式与预览
// 生成 Schema 后可在此预览 YAML / TypeScript
顶层结构树(按类型着色,● 为必填)
尚无 Schema:先在上方粘贴样例并点击「生成 Schema」。

方案管理 · 数值对比 · 导出

调好的参数可存成方案随时载入,也能生成可分享链接;结果里的数值列会自动画成对比图,并支持导出 CSV / JSON。

最近方案 暂无

📐口径说明与常见误填

多份样例合并推断,draft-07 直接可用

多样例合并
用 --- 分隔粘贴多份 JSON,字段取并集、类型推断更准。
三个开关
format 推断、additionalProperties 设 false、全部必填随心切换。
顶层概览
字段类型分布与必填建议一屏列清。
即用产出
输出 draft-07 Schema,复制或下载 .json 文件。
本地推断
解析全在浏览器完成,样例数据不上传。

这个工具解决什么问题

手写 JSON Schema 费时又易错。本工具粘贴 JSON 样例即推断出 draft-07 JSON Schema:自动识别字段类型、date-time 与 email 等 format,支持多份样例(--- 分隔)合并推断,可一键切换 additionalProperties 收紧与必填策略,接口文档和参数校验一步到位。

三条推断守则

① 样例给足分支:单份样例看不到可选字段与类型边界,贴 3 至 5 份覆盖不同场景,推断质量立刻不同。

② required 要人审:推断只能标"所有样例都出现"的字段,业务上必填与否请手动调整。

③ 枚举要补上:状态码、类型字段生成后改成 enum 白名单,防止脏数据混进接口。

怎么用

  1. 第 1 步 · 粘贴 JSON 样例
    输入框粘贴一份或多份样例,多份用 --- 分隔。
  2. 第 2 步 · 切换推断选项
    按需打开 format 推断、additionalProperties 设 false、全部必填。
  3. 第 3 步 · 生成 Schema
    查看推断结果与顶层字段概览。
  4. 第 4 步 · 复制或下载
    复制 Schema 或下载 .json,接进 Ajv 或文档。

更新记录

  • v1.0 2026-11-02
  • 2026-11-02 上线首个版本
  • 2026-11-02 新增多样例合并与 format 推断开关

常见问题

JSON Schema 怎么快速生成?
粘贴一份或多份 JSON 样例(--- 分隔),按需切换 format 推断、additionalProperties 与必填策略,点击生成立刻得到 draft-07 Schema,复制或下载 .json 即用。
在线生成有什么坑?
最大的坑是单样例推断:可选字段看不见、null 与数值类型易误判。解法是多份样例合并——本页支持 --- 分隔多样例,字段取并集后再定类型。
required 字段怎么写?
默认把所有样例中都出现的字段标为 required,也可切换全部必填或全不必填。但"样例里出现"不等于"业务必须传",最终清单要人工确认一轮。
能用来校验接口参数吗?
可以:把生成的 Schema 交给 Ajv 等校验库,按 properties、required、format 逐项检查请求体;format 校验需要显式启用。Schema 也能直接贴进 OpenAPI 文档。
draft-07 和 2020-12 有什么区别?
2020-12 是最新规范:definitions 改名 $defs、注解与断言关键字分离、if-then-else 正式化。draft-07 生态兼容性最好,Ajv 与 OpenAPI 工具链普遍支持,本页默认产出 draft-07。

💬 留言板 0

全部留言需审核通过后展示
💬

还没有留言,来抢沙发吧!

✍️ 说点什么
0 / 500
图形验证码
👣 做完这一步,顺便看看
🏛️ 凯撒密码解密 凯撒密码解密 :1~25 位位移加解密、ROT13 一键转换… → 🔤 乱码转换器在线修复 乱码转换器在线 :把“锟斤拷”“�”“涓枃”“😀”等乱… → 📸 代码截图美化工具 在线代码转图片工具:粘贴或输入代码(支持 JavaScrip… → 🎨 WCAG 对比度检测工具 在线颜色对比度检测工具:输入前景文字色与背景色(支持 #he… →
全部工具 →