OpenAPIのパスパラメータとクエリパラメータ
OpenAPI 3.0で型制約、デフォルト値、enum、サンプルを使用してパスパラメータ、クエリパラメータ、ヘッダーパラメータを定義し、明確なAPIドキュメントを作成します。
Endpoint Patterns
詳細な説明
OpenAPIのパラメータ
パラメータはエンドポイントの動作を変更する入力です。OpenAPI 3.0は4つのパラメータ位置をサポートします:path、query、header、cookie。それぞれ定義と使用に固有のルールがあります。
パスパラメータ
パスパラメータはURLの一部であり常に必須です:
/users/{userId}/posts/{postId}:
get:
parameters:
- name: userId
in: path
required: true
schema:
type: string
format: uuid
- name: postId
in: path
required: true
schema:
type: integer
パスパラメータは required: true でなければなりません — URL構造に埋め込まれているため常に必須です。
クエリパラメータ
クエリパラメータはレスポンスをフィルタ、ソート、変更します:
/products:
get:
parameters:
- name: category
in: query
schema:
type: string
enum: [electronics, clothing, books]
- name: sort
in: query
schema:
type: string
enum: [price_asc, price_desc, newest]
default: newest
再利用可能なパラメータ
一度定義して、どこでも参照:
components:
parameters:
PageParam:
name: page
in: query
schema:
type: integer
default: 1
minimum: 1
paths:
/users:
get:
parameters:
- $ref: "#/components/parameters/PageParam"
ユースケース
適切に定義されたパラメータはAPIの使いやすさにとって重要です。フロントエンド開発者は正しいAPI呼び出しを構築するためにパラメータ定義に依存し、コード生成ツールはそれらを使用して型付きクライアントSDKを作成します。パラメータのデフォルト値、制約、enum、サンプルをドキュメント化することで、統合時間とサポート質問が大幅に削減されます。