OpenAPI (Swagger 2.0) 仕様に対する IBM 拡張
OpenAPI (Swagger 2.0) 定義ファイルに x-ibm-configuration オブジェクトを使用して、IBM® API Connect に固有の拡張を追加します。
x-ibm-configuration 拡張の構造は以下のとおりです。
x-ibm-configuration:
enforced: enforced_boolean
phase: Phase
testable: test_boolean
cors:
enabled: cors_boolean
assembly:
execute:
- assembly_component
properties:
properties_extension
catalogs:
catalogs_extension
以下の表に、API Connect で使用されるさまざまな拡張をリストし、それぞれの拡張について、必須であるか、用途と動作の説明、およびタイプを示します。
拡張 | 必須 | 説明 | タイプ |
---|---|---|---|
phase | はい | API の成熟度を記述するために使用します。この拡張には次の値を指定できます。
|
ストリング |
testable | はい | 開発者ポータルでテスト・ツールを使用して API をテストできるかどうかを指定するために使用します。 | ブール |
enforced | はい | API Connect ゲートウェイを使用して API を強制するかどうかを指定するために使用します。
|
ブール |
cors | はい | API に CORS アクセス制御を使用するかどうかを指定するために使用します。この拡張には、ブール型の enabled フィールドが含まれています。 | オブジェクト (ブール型フィールドを 1 つ含む) |
assembly | いいえ | API へのポリシーとロジックの適用を記述するために使用します。この拡張には、ポリシーを適用順に並べた配列を含んだ execute フィールドが含まれています。この拡張に、catch されるエラー・ケースの配列を含んだ catch フィールドを含めることができます。 execute フィールドの使用法については、execute を参照してください。 catch フィールドの使用法については、catch を参照してください。 |
オブジェクト |
gateway | いいえ | 使用するゲートウェイのタイプを指定するために使用します。DataPower® Gateway または Micro Gateway を使用する場合は、以下のいずれかの値で指定する必要があります。
|
ストリング |
properties | いいえ | API で使用するプロパティーを定義する場合に使用します。 | オブジェクト (properties) |
catalogs | いいえ | properties 拡張内で定義されたプロパティーに対してカタログ固有の値を定義するには catalogs 拡張を使用します。 | オブジェクト (catalogs) |
以下の例に示す API の x-ibm-extension セクションでは、API が、API Connect によって強制されること、realized 状態にあること、開発者ポータルでテスト・ツールを使用してテストできること、CORS アクセス制御が有効であること、および URL を呼び出して要求または応答のフィールドを編集する単純なアセンブリーを含んでいることが記述されています。
x-ibm-configuration:
enforced: true
phase: realized
testable: true
cors:
enabled: true
assembly:
execute:
- invoke:
title: Example Invoke
target-url: 'https://example.com/api'
description: Example description
- redact:
actions:
- action: redact
from:
- request
- response
path: //*[@name='secondaryAddress']/*[@name='streetAddress']
properties:
ID:
value: 1234
description: An ID to be used for validating.
encoded: false
catalogs:
Sandbox:
properties:
ID: 5678