OpenAPI 仕様に対する IBM 拡張
OpenAPI 定義ファイル内の x-ibm-configuration オブジェクトを使用して、 IBM®
API Connectに固有の拡張機能を追加します。
x-ibm-configuration 拡張の構造は以下のとおりです。
x-ibm-configuration:
enforced: enforced_boolean
forceHttp500ForSoap11: forceHttp500ForSoap11_boolean
compile-json-schemas: compile_json_schemas_boolean
enforce-form-data-parameter: enforce_form_data_parameter_boolean
phase: Phase
testable: test_boolean
cors:
enabled: cors_boolean
buffering: buffering_boolean
activity-log:
activity_logging_extension
assembly:
execute:
- assembly_component
gateway: gateway_type
type: api_type
properties:
properties_extension
catalogs:
catalogs_extension
以下の表に、 API Connectで使用されるさまざまな拡張機能、それらが必要かどうか、それらの使用と動作の説明、およびそれらのタイプをリストします。
| 拡張子 | 必須 | 説明 | タイプ |
|---|---|---|---|
| phase | いいえ | API の成熟度を記述するために使用します。 この拡張には次の値を指定できます。
|
ストリング |
| testable | いいえ | この testable 拡張機能を使用して、 Consumer Catalog のテストツールで API をテストできるかどうかを指定します。 |
ブール値 |
| enforced | いいえ | enforced 拡張を使用して、API を強制するために API Connect ゲートウェイを使用するかどうかを指定します。
|
ブール値 |
| cors | いいえ | CORS アクセス制御を API で使用するかどうかを指定するには、この cors 拡張機能を使用します。 この拡張には、ブール型の enabled フィールドが含まれています。 |
オブジェクト (ブール型フィールドを 1 つ含む) |
| いいえ | 分析に保管されている API アクティビティー用にロギングの設定を構成するには、activity-log 拡張を使用します。 ユーザーが指定する設定は、API アクティビティーの詳細の収集および保管に関するデフォルトの設定値をオーバーライドします。 |
オブジェクト | |
| assembly | いいえ | assembly 拡張を使用して、ポリシーおよびロジックの API への適用を記述します。 この拡張には、ポリシーを適用順に並べた配列を含んだ execute フィールドが含まれています。 この拡張に、catch されるエラー・ケースの配列を含んだ catch フィールドを含めることができます。
この |
オブジェクト |
| gateway | いいえ | gateway 拡張を使用して、使用するゲートウェイのタイプを指定します。 DataPower® Gateway (v5 compatible) または DataPower API Gatewayを使用している場合は、以下のいずれかの値を指定する必要があります。
ゲートウェイの種類については、 「ゲートウェイ API Connect の種類」 を参照してください。 |
ストリング |
| type | いいえ | type 拡張には、次の値を指定します。
|
|
| properties | いいえ | properties 拡張を使用して、API で使用するプロパティーを定義します。 |
オブジェクト( プロパティ ) |
| catalogs | いいえ | properties 拡張内で定義されたプロパティーに対してカタログ固有の値を定義するには catalogs 拡張を使用します。 |
オブジェクト( カタログ ) |
| いいえ | forceHttp500ForSoap11 拡張を使用して、SOAP 1.1 API でエラーが発生したときに 500 レスポンスコードを強制します。 このプロパティは、APAR IT46043 を含む DataPower フィックスパックでのみ動作します。 |
ブール値 | |
| compile-json-schemas | いいえ | この拡張機能を使用すると、設定のデプロイ時にJSONスキーマの事前コンパイルを有効にできます。 true に設定すると、新しい設定が適用される際に JSON スキーマがコンパイルされ、キャッシュされます。これにより、最初のメッセージが処理される時点でコンパイルが完了し、利用可能な状態になります。 | ブール値 |
| buffering | いいえ | この拡張機能を使用して、処理の前にAPIリクエストとレスポンスをバッファリングするかどうかを制御します。 これにより、 DataPower message-buffering コマンドが有効になります
|
ブール値 |
| enforce-form-data-parameter | いいえ | このコマンドは、APIルーティング中にフォームデータパラメータを解決して設定するかどうかを指定します。
|
ブール値 |
次の例は、 API Connectによって強制され、実現済み状態であり、 Consumer Catalog 内のテストツールを通じてテスト可能で、 CORS によるアクセス制御が有効化されており、 URL を呼び出した後、リクエストまたはレスポンスからフィールドをマスキングする単純なアセンブリを持つAPI x-ibm-extension のセクションを示しています。
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