YamlBox

JSON ツール

JSON ~ JSON スキーマジェネレータ

サンプル ペイロードを貼り付けて、それを文書化して将来のデータを検証する、すぐに使用できる JSON スキーマを取得します。配列項目は合理的にマージされ、必須フィールドは自動的に検出されます。

変換オプション

サンプル JSON

例: API ペイロード · レコードの配列 —⌘/Ctrl + Enter 変換 · ファイルをドロップしてロード · ローカルで処理

JSON スキーマ

出力は読み取り専用です。コピー、ダウンロード、または共有を使用して移動します。

JSON ~ JSON スキーマ ツールの使用方法

  1. 代表的なサンプルを貼り付けます

    サンプルが豊富であればあるほど、スキーマはより優れたものになります。オプションのフィールド、NULL、および少なくとも 2 つの配列項目を含めて、それらの形状をマージできるようにします。

  2. ドラフトを選択する

    Draft-07 は、ほぼすべてのバリデーターとエディターでサポートされています。 2020-12 が現在の仕様です。ツールチェーンごとに選択してください。

  3. スキーマを使用する

    これを AJV、Prisma、OpenAPI コンポーネント ブロック、またはエディターのスキーマ設定に貼り付けると、即時検証とオートコンプリートが可能になります。

このツールの違い

  • 配列項目を共通の必須フィールドを持つ単一のスキーマにマージします
  • 整数と数値の正しい検出
  • オプションのタイトル、ドラフト-07 または 2020-12 出力
  • ネストされたオブジェクトと配列は、任意の深さまで再帰的に推論されます
  • データがブラウザから出ないため、実際の顧客のペイロードに対して安全です

アーキテクチャによるプライバシー: このページには入力を受け取る分析は含まれておらず、変換コードはタブで実行されます。ロード後にネットワークから切断して作業を続けることができます。

JSON ~ JSON スキーマ — よくある質問

推定される JSON スキーマはどの程度正確ですか?

提供されたサンプルの種類と構造は正確です。推論で知り得ないのは、年齢が正でなければならない、またはフィールドが列挙型であるというビジネス ルールです。出力を強力な開始点として扱い、手動で制約を追加します。

異なる項目形状を持つ配列はどのように処理されますか?

項目スキーマはマージされます。すべての項目に存在するプロパティは必須になりますが、一部の項目にのみ存在するプロパティはオプションのままです。型の違いにより、type: ["string", "number"] などの共用体が生成されます。

ドラフト-07 または 2020-12 を選択する必要がありますか?

バリデーターが AJV 6/7、古いエディター、または最近更新されていないものである場合は、draft-07 を選択してください。これは最も広範なサポートがあり、ほとんどの OpenAPI 3.0 ツールが期待するものです。新しいプロジェクトと AJV 8 には 2020-12 を選択してください。

生成されたスキーマはどこで使用できますか?

実行時チェックのための AJV およびその他のバリデータ、JSON ファイルのオートコンプリートと検証のための VS Code、API 応答を文書化するための OpenAPI 仕様、および応答がコントラクトから逸脱した場合にビルドを失敗させる CI パイプライン。

“JSONスキーマを推測する”, “jsonからjsonスキーマを生成”, “オンラインのJSONスキーマジェネレーター” をお探しですか?あなたは正しい場所にいます — すべての 19 ツールを参照する.

より深い読書

ブログ記事 · 6 分で読まれました JSON ~ JSON スキーマ: サンプル ペイロードからコントラ ブラウザで JSON から JSON スキーマに変換します。実際のペイロードからドラフトを推論し、必要なフィールド、形式、列挙型を強化し、推論の制限も加えます。 ガイドを読む→