JSONスキーマジェネレーター
JSONデータからJSONスキーマを自動生成
JSON入力
生成されたスキーマ
JSONスキーマジェネレーターとは?
JSON SchemaはJSONデータの構造を記述します:必須フィールド、型、許可値、フォーマット。スキーマジェネレーターはサンプルJSONからスキーマを推論します。サンプルデータを貼り付けると、その構造を記述するスキーマを生成します。スキーマを使って他のJSONを検証したり、APIをドキュメント化したりできます。
このツールはブラウザで実行されます。JSONを貼り付けるとJSON Schemaドラフトを生成します。サーバーには送信されません。
使い方
サンプルJSONを貼り付け
記述したい構造を表すJSONを貼り付けます。必要に応じてサンプルまたはアップロードを使用してください。ジェネレーターは値(string、number、boolean、array、object)から型を推論します。
スキーマを確認
右パネルに生成されたスキーマが表示されます。type、properties、required、オブジェクト用のネストされたスキーマが含まれる場合があります。必要に応じて手動で編集できます。
コピーまたはダウンロード
スキーマを取得するには<strong>コピー</strong>または<strong>ダウンロード</strong>を使用してください。スキーマに対してJSONを検証するにはJSONバリデーターまたは<a href="https://ajv.js.org/" target="_blank" rel="noopener">Ajv</a>などのライブラリを使用してください。
JSONスキーマの例
サンプルJSONからスキーマを生成。通信テーマの例:
JSON入力
生成されたスキーマ
生成スキーマを使う場面
生成されたスキーマは出発点です。サンプルデータの構造を捉えますが、厳しすぎたり緩すぎたりする場合があります。required配列の追加、型の調整、許可値用のenumの追加が必要な場合があります。JSON Schemaのドキュメントで完全な語彙を説明しています。APIドキュメントにはOpenAPIなどのツールがJSON Schemaを参照できます。
よくある質問
このスキーマでJSONを検証できますか?
このツールはスキーマの生成のみ行います。検証にはJSONバリデーターまたはコード内で<a href="https://ajv.js.org/" target="_blank" rel="noopener">Ajv</a>などのライブラリを使用してください。
JSONの形状が異なる場合は?
ジェネレーターは提供したサンプルから推論します。JSONが複数の形状(オプションフィールドなど)を持つ場合、スキーマは手動編集が必要な場合があります。バリアントにはoneOfまたはanyOfを使用してください。
データは送信されますか?
いいえ。生成はブラウザで実行されます。
どのJSON Schemaドラフトが使用されますか?
ツールはdraft-07またはdraft-2020-12を使用する場合があります。バージョン確認には生成されたスキーマの$schemaを確認してください。JSON Schema仕様に詳細があります。
APIレスポンスに使えますか?
はい。典型的なAPIレスポンスを貼り付けてください。生成されたスキーマがその構造を記述します。OpenAPI/Swaggerやドキュメントで使用できます。
関連ツール
json-schema.orgとJSON Schema learnで詳細を確認してください。コードでの検証にはAjvを参照してください。JSONについてはjson.org、MDN、RFC 8259を参照してください。APIドキュメントにはOpenAPIを参照してください。