|
2 | 2 | sidebarDepth: 4 |
3 | 3 | title: OpenAPI Specification 3.0.3規約 |
4 | 4 | author: フューチャー株式会社 |
5 | | -meta: |
6 | | - - name: keywords |
7 | | - content: OpenAPI,命名規約,コーディング規約 |
| 5 | +head: |
| 6 | + - - meta |
| 7 | + - name: keywords |
| 8 | + content: OpenAPI,命名規約,コーディング規約 |
8 | 9 | --- |
9 | 10 |
|
10 | 11 | <page-title/> |
@@ -39,16 +40,16 @@ OpenAPI ドキュメントを構成する要素はオブジェクトと呼ばれ |
39 | 40 |
|
40 | 41 | 各オブジェクトの詳細については[公式ドキュメント](https://spec.openapis.org/oas/v3.0.3#openapi-object)を参照されたい。 |
41 | 42 |
|
42 | | -| フィールド名 | 必須 | 説明 | |
43 | | -| ------------ | :--: | ----------------------------------------------------------- | |
44 | | -| openapi | ○ | OpenAPI ドキュメントが使用する OpenAPI 仕様のバージョン番号 | |
45 | | -| info | ○ | API に関するメタデータ | |
46 | | -| servers | | API サーバへの接続情報 | |
47 | | -| paths | ○ | API の利用可能なパスと操作方法 | |
48 | | -| components | | 複数の API における共通の定義 | |
49 | | -| security | | API 全体で利用可能なセキュリティ(認証)機構 | |
50 | | -| tags | | 各種 API をグルーピングするためのタグ | |
51 | | -| externalDocs | | 追加の外部ドキュメント | |
| 43 | +| フィールド名 | 必須 | 説明 | |
| 44 | +| ------------ | :---: | ----------------------------------------------------------- | |
| 45 | +| openapi | ○ | OpenAPI ドキュメントが使用する OpenAPI 仕様のバージョン番号 | |
| 46 | +| info | ○ | API に関するメタデータ | |
| 47 | +| servers | | API サーバへの接続情報 | |
| 48 | +| paths | ○ | API の利用可能なパスと操作方法 | |
| 49 | +| components | | 複数の API における共通の定義 | |
| 50 | +| security | | API 全体で利用可能なセキュリティ(認証)機構 | |
| 51 | +| tags | | 各種 API をグルーピングするためのタグ | |
| 52 | +| externalDocs | | 追加の外部ドキュメント | |
52 | 53 |
|
53 | 54 | # 要素規約 |
54 | 55 |
|
@@ -78,14 +79,14 @@ openapi: 3.0 |
78 | 79 |
|
79 | 80 | `title`, `description`, `version` を必須項目とする。 |
80 | 81 |
|
81 | | -| フィールド名 | 必須 | 記載内容 | |
82 | | -| -------------- | :--: | -------------------------------- | |
83 | | -| title | ○ | Web API の総称 | |
84 | | -| description | ○ | Web API の簡単な説明 | |
85 | | -| version | ○ | OpenAPI ドキュメントのバージョン | |
86 | | -| termsOfService | | 利用規約の URL | |
87 | | -| contact | | 連絡先情報 | |
88 | | -| license | | ライセンス情報 | |
| 82 | +| フィールド名 | 必須 | 記載内容 | |
| 83 | +| -------------- | :---: | -------------------------------- | |
| 84 | +| title | ○ | Web API の総称 | |
| 85 | +| description | ○ | Web API の簡単な説明 | |
| 86 | +| version | ○ | OpenAPI ドキュメントのバージョン | |
| 87 | +| termsOfService | | 利用規約の URL | |
| 88 | +| contact | | 連絡先情報 | |
| 89 | +| license | | ライセンス情報 | |
89 | 90 |
|
90 | 91 | ### info > title |
91 | 92 |
|
@@ -229,20 +230,20 @@ API の利用可能なエンドポイントと操作方法を記載する。 |
229 | 230 |
|
230 | 231 | - HTTP メソッドの配下に定義されるオペレーションオブジェクトは、下記の項目を必須項目とする |
231 | 232 |
|
232 | | -| フィールド名 | 必須 | 記載内容 | |
233 | | -|--------------| :--: |------------------------| |
234 | | -| tags | ○ | API の論理的なグループ | |
235 | | -| summary | ○ | API の操作概要 | |
236 | | -| description | ○ | API の振る舞いの詳細や注意点 | |
237 | | -| externalDocs | | API に関する追加の文書 | |
238 | | -| operationId | ○ | API の利用可能なエンドポイントと操作方法 | |
239 | | -| parameters | | API のリクエストパラメータ | |
240 | | -| requestBody | | API のリクエストボディ | |
241 | | -| responses | ○ | API のレスポンス | |
242 | | -| callbacks | | | |
243 | | -| deprecated | | API が非推奨であることの宣言 | |
244 | | -| security | | API のセキュリティ機構 | |
245 | | -| servers | | API に対応する代替サーバ | |
| 233 | +| フィールド名 | 必須 | 記載内容 | |
| 234 | +| ------------ | :---: | ---------------------------------------- | |
| 235 | +| tags | ○ | API の論理的なグループ | |
| 236 | +| summary | ○ | API の操作概要 | |
| 237 | +| description | ○ | API の振る舞いの詳細や注意点 | |
| 238 | +| externalDocs | | API に関する追加の文書 | |
| 239 | +| operationId | ○ | API の利用可能なエンドポイントと操作方法 | |
| 240 | +| parameters | | API のリクエストパラメータ | |
| 241 | +| requestBody | | API のリクエストボディ | |
| 242 | +| responses | ○ | API のレスポンス | |
| 243 | +| callbacks | | | |
| 244 | +| deprecated | | API が非推奨であることの宣言 | |
| 245 | +| security | | API のセキュリティ機構 | |
| 246 | +| servers | | API に対応する代替サーバ | |
246 | 247 |
|
247 | 248 | ### paths > {path} > {method} > tags |
248 | 249 |
|
@@ -618,17 +619,17 @@ API の認証方式を記載する。 |
618 | 619 |
|
619 | 620 | API 定義で利用する共通のデータモデルを定義する。定義方針は下記の通りである。 |
620 | 621 |
|
621 | | -| フィールド名 | 方針 | |
622 | | -|-----------------|------------------------------------------------| |
| 622 | +| フィールド名 | 方針 | |
| 623 | +| --------------- | -------------------------------------------------------------------------------------- | |
623 | 624 | | schemas | API 共通的なリソース(例. ユーザや商品など)やエラー等のドメインオブジェクトを定義する | |
624 | | -| responses | API 共通的なレスポンス(例. 異常系(`4xx`, `5xx`)のレスポンス)を定義する | |
625 | | -| parameters | API 共通的なリクエストパラメータ(HTTP ヘッダやクエリパラメータ等)を定義する | |
626 | | -| examples | 原則何も定義しない | |
627 | | -| requestBodies | 原則何も定義せず、リクエストボディは API 個別に定義する | |
628 | | -| headers | API 共通的なレスポンスヘッダを定義する | |
629 | | -| securitySchemes | 標準で用いる API 認証のスキームを定義する | |
630 | | -| links | 原則何も定義しない | |
631 | | -| callbacks | 原則何も定義しない | |
| 625 | +| responses | API 共通的なレスポンス(例. 異常系(`4xx`, `5xx`)のレスポンス)を定義する | |
| 626 | +| parameters | API 共通的なリクエストパラメータ(HTTP ヘッダやクエリパラメータ等)を定義する | |
| 627 | +| examples | 原則何も定義しない | |
| 628 | +| requestBodies | 原則何も定義せず、リクエストボディは API 個別に定義する | |
| 629 | +| headers | API 共通的なレスポンスヘッダを定義する | |
| 630 | +| securitySchemes | 標準で用いる API 認証のスキームを定義する | |
| 631 | +| links | 原則何も定義しない | |
| 632 | +| callbacks | 原則何も定義しない | |
632 | 633 |
|
633 | 634 | ※ リクエストボディやレスポンスボディにおいてオブジェクトがネストする場合、 API 固有のオブジェクトであっても `schemas` に定義する。 |
634 | 635 | これは、定義するオブジェクトの `properties` 配下に更に `type: object` が定義される場合に、生成ツールによってはうまく型が生成されないためである。 |
|
0 commit comments