OpenAPI JSON バリデーター
openapi.json または swagger.json の内容を貼り付けると、数秒で構造チェックの結果が得られます。このバリデーターは、JSON として解析できるか、バージョンフィールドがあるか、info に title と version があるか、paths が存在するかを確認します。そのうえで、不自然なパス名や未知のオペレーションキーについても警告します。
OpenAPI JSON ファイルの検証方法
-
1
ファイルをコピーする
`openapi.json` を開き、開き波括弧から閉じ波括弧まで、ドキュメント全体をコピーします。
-
2
入力欄に貼り付ける
OpenAPI / Swagger ドキュメントの入力欄に貼り付けます。空白を削除したり、整形し直したりする必要はありません。
-
3
チェックを実行する
結果のステップに進むと、検証が実行されます。
-
4
修正して繰り返す
エラーごとにファイルを修正し、もう一度貼り付けて、レポートにエラーがなくなるまで再実行します。
チェックが失敗する主な JSON の誤り
JSON は YAML より厳格なので、手で編集したファイルで失敗する原因の多くは、API の設計ではなく構文にあります。よくある原因は、最後のプロパティの後ろの末尾カンマ、ダブルクォートの代わりに使ったシングルクォート、コメント(JSON では使えません)、長い paths オブジェクトの後ろで閉じ波括弧が抜けていることです。壊れたファイルは、通常 “Could not parse as JSON or YAML” というメッセージで終わるか、有効な内容が読み取れなかったために必須フィールドのエラーが並びます。
解析エラーだけが表示される場合は、まず構文のミスを探してください。構造チェックは、ドキュメントがオブジェクトとして読み込めた後に実行されます。
実例
次の小さなドキュメントを例にします。
{
"openapi": "3.0.3",
"info": { "title": "Orders API" },
"paths": {
"orders": { "get": { "summary": "List orders" } }
}
}
これは解析でき、openapi フィールドと paths オブジェクトも存在します。それでもレポートには次の内容が表示されます。
| 検出内容 | 種別 | 理由 |
|---|---|---|
| info.version is required. | エラー | info には title はあるが version がない |
| Path ‘orders’ should start with ‘/’. | 警告 | パスのキーに先頭のスラッシュがない |
エラーが 1 件あるため、このドキュメントは有効とは判定されません。info に "version": "1.0.0" を追加し、キーを /orders に変更してください。2 回目の実行で両方の指摘が消えます。
合格が意味することと、意味しないこと
レポートがクリーンであれば、骨組みは正しいということです。$ref のリンクはたどらず、スキーマも確認せず、すべてのオペレーションにレスポンスがあるかも確認しません。ファイルをコミットする前の簡易的な関門として使い、より深いルールは完全な Linter で確認してください。
JSON 仕様の実践的なワークフロー
仕様はバージョン管理で管理し、paths に変更を加えるコミットの前に、ここへ貼り付けて確認する習慣をつけてください。チェックは短時間で済むため、複数の人の変更をマージした後の健全性確認としても有効です。重複したキーや、場所を誤った波括弧が入りやすいのはこの場面です。JSON がビルドスクリプトで生成される場合は、テンプレートではなく生成された出力を貼り付けてください。読み手が実際に受け取る内容を検証できます。レポートがクリーンであれば、ファイルを共有したり、ドキュメント生成ツールに渡したりする際に、トップレベルの構造は健全だと自信を持って言えます。
よくある質問
いいえ。空白やインデントは結果に影響しません。ファイルをそのまま貼り付けてください。
標準の JSON では、オブジェクトや配列の最後の要素の後ろにカンマを置けないため、ドキュメントを JSON として読み込めません。カンマを削除して、もう一度チェックしてください。
できます。バージョンの確認では openapi フィールドと swagger フィールドのどちらも受け付けるため、Swagger 2.0 と OpenAPI 3.x のどちらの JSON ファイルも同じ構造チェックを通ります。
いいえ。指摘はフィールドの欠落やパス名などのメッセージとして表示され、行番号は示されません。メッセージに書かれたキーをファイル内で検索してください。
関連ツール
Webpack設定ジェネレーター
素の JavaScript、React、Vue 向けに webpack 5 の webpack.config.js を生成します。TypeScript、Babel、CSS や Sass、画像、HtmlWebpackPlugin、開発サーバー、npm install のコマンドまでそろいます。
カラーティントジェネレーター
ベースカラーの明るい色合いを生成します。デザイン システム トークン、背景、ホバー状態を 3 ~ 20 段階でスケールします。
.gitignore ジェネレーター
Laravel、Node.js、Python、Rails のプロジェクト用除外ルールを組み合わせます。結果をコピーするか、.gitignore 入りの ZIP をダウンロードできます。個人用ルールは別に表示します。
CMYK から RGB への変換
標準的な計算式で CMYK の割合をおおよその RGB 値と Hex 値に変換し、画面用にすばやく確認できます。
16進数から10進数への変換ツール
16進数を10進数(10進法)に変換します。メモリアドレス、エラーコード、RGBチャンネル、任意精度の整数に対応します。
JSONからPythonデータクラスへの変換
JSONから、型ヒント、オプションフィールド、ネストされたクラス、およびdataclasses-jsonまたはPydanticサポートを備えたPythonデータクラスを生成します。
このツールは他の言語でも利用できます
- مدقق OpenAPI بصيغة JSON [AR]
- OpenAPI JSON Validator [DE]
- OpenAPI JSON-validerare [SV]
- Validador de OpenAPI JSON [PT]
- OpenAPI JSON 검증기 [KO]
- Validateur OpenAPI JSON [FR]
- OpenAPI JSON Validator [NL]
- ตัวตรวจสอบ OpenAPI JSON [TH]
- Công cụ kiểm tra OpenAPI JSON [VI]
- Validador de OpenAPI JSON [ES]
- Walidator OpenAPI JSON [PL]
- Validator OpenAPI JSON [ID]
- Валидатор OpenAPI JSON [RU]
- OpenAPI JSON Doğrulayıcı [TR]
- OpenAPI JSON 验证器 [ZH]
- OpenAPI JSON Validator [EN]
- Validatore OpenAPI JSON [IT]