範囲を小文字の 4xx で書いてしまった
responses のキーに小文字の 4xx を書いた境界の例です。仕様では大文字の X だけが範囲なので、404 が受けられず未定義になり、書き方も警告されることを確かめます。
入力
OpenAPI 文書(JSON)
{"paths":{"/a":{"get":{"responses":{"200":{},"4xx":{}}}}}}観測した応答(1 行に「メソッド パス コード」)
GET /a 404
結果
エラー 0 件・警告 2 件・情報 0 件
指摘(エラー・警告・情報)
- 警告 GET /a キー「4xx」の X は大文字で書く決まりです(1XX〜5XX)。小文字だと範囲として扱われない可能性があります(OpenAPI 3.1.0)。
- 警告 1 行目 GET /a にコード 404 の定義がありません(404・4XX・default のいずれもない)。応答の定義を追加するか、観測が想定外でないか確認してください。
| 観測した応答 | 1 件 |
|---|---|
| 定義あり | 0 件 |
| default で受けるもの | 0 件 |
| 未定義 | 1 件 |
判定の一覧
| 行 | 操作 | コード | 判定 |
|---|---|---|---|
| 1 | GET /a | 404 | 未定義 |
検算(この結果になる理由)
範囲に使えるのは 1XX〜5XX の大文字の X だけです。4xx は範囲として扱えないため 404 は未定義になり、書き方の警告と合わせて警告 2 件になります。
判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。
このツールの制約
- JSON 形式の文書だけを読みます。YAML は未対応で、先に JSON に変換してください。
- $ref で別の場所を参照する応答の中身は見ません。コードのキーが定義されているかだけを判定します。
- 応答の本文やヘッダーが仕様に合っているかは検査しません。ステータスコードの有無だけです。
- paths の外(webhooks など)や、パスのテンプレートが複数の区間にまたがる指定には対応していません。
ご利用にあたって
- 運用で観測した応答が仕様にないとき、仕様が古いのか実装が想定外なのかは、このツールでは判断できません。開発の担当者と確認してください。