OpenAPI 互換性チェッカー

2 つの OpenAPI 3.x 仕様をローカルで比較し、操作およびフィールド パスごとに、破壊される可能性のある API コントラクトの変更を確認します。

オリジナルおよび改訂された OpenAPI 3.0、3.1、または 3.2 ファイルを貼り付けるか選択します。重大度と影響を受けるフィールド パスを確認し、確認のために Markdown または JSON レポートをダウンロードします。

リリース前に 2 つの OpenAPI ファイルを比較します。仕様はこのブラウザにそのまま残ります。

JSON または YAML を下に貼り付けるか、ファイルを選択します。
JSON または YAML を下に貼り付けるか、ファイルを選択します。

各ファイル: 最大 2 MB、操作数 1,000。 OpenAPI 3.0、3.1、および 3.2 をサポートします。

使用方法

API をリリースする前に OpenAPI の変更を確認する

2 つの OpenAPI 3.x 仕様をローカルで比較し、操作およびフィールド パスごとに、破壊される可能性のある API コントラクトの変更を確認します。

使い方

  1. 次の項目から元データを指定します:オリジナル仕様 / 改訂仕様。
  2. 実行する操作:互換性をチェックする。コピー、ダウンロード、ほかの用途への使用前に結果を確認します。
  3. オリジナルおよび改訂された OpenAPI 3.0、3.1、または 3.2 ファイルを貼り付けるか選択します。重大度と影響を受けるフィールド パスを確認し、確認のために Markdown または JSON レポートをダウンロードします。

設定の選び方

項目変更される内容
オリジナル仕様仕様ファイル内の参照に従います。外部ファイルまたは URL 参照は取得されず、レビュー結果として表示されます。再帰スキーマは最初に出現したときに比較され、レビュー用にマークされます。
互換性をチェックするチェッカーは、操作、パラメーター、リクエスト本文、応答コード、メディア タイプに加えて、削除されたプロパティ、新たに必要なリクエスト プロパティ、タイプの変更、列挙値などの一般的なスキーマの変更を比較します。調査結果には、影響を受ける操作とフィールド パスが含まれます。

入力例と期待される結果

改訂された GET /users/{id} レスポンスにより、オプションの「email」フィールドが必須になった場合、レポートは変更されたレスポンス コントラクトにフラグを立てます。ローカルの `$ref` 参照に従います。外部参照と複雑なスキーマ構成は手動でレビューする必要があります。これは、完全な仕様の検証や実行中の API のテストではありません。

うまく動かないとき

  • 結果は静的な契約レビューであり、完全な OpenAPI 適合性検証、ランタイム API テスト、またはセキュリティ監査ではありません。サーバーの動作、認可ロジック、および複雑なスキーマ構成については、手動によるレビューが必要になる場合があります。レポートには、どの参照または再帰構造が完全にチェックされていなかったかが記載されています。
  • 解析に失敗したら、APIの指摘を確認する前にJSONやYAMLの構文を確認します。必要なローカル参照は同じ文書に含めてください。未解決の外部参照や未対応のスキーマは手作業で確認します。このツールは参照先を取得せず、実サーバーをテストしません。

どのような変更がチェックされますか?

チェッカーは、操作、パラメーター、リクエスト本文、応答コード、メディア タイプに加えて、削除されたプロパティ、新たに必要なリクエスト プロパティ、タイプの変更、列挙値などの一般的なスキーマの変更を比較します。調査結果には、影響を受ける操作とフィールド パスが含まれます。

参照はどのように扱われますか?

仕様ファイル内の参照に従います。外部ファイルまたは URL 参照は取得されず、レビュー結果として表示されます。再帰スキーマは最初に出現したときに比較され、レビュー用にマークされます。

このチェックの外にあるものは何ですか?

結果は静的な契約レビューであり、完全な OpenAPI 適合性検証、ランタイム API テスト、またはセキュリティ監査ではありません。サーバーの動作、認可ロジック、および複雑なスキーマ構成については、手動によるレビューが必要になる場合があります。レポートには、どの参照または再帰構造が完全にチェックされていなかったかが記載されています。