

# API Gateway での REST API パラメータマッピングのソースのリファレンス
<a name="rest-api-parameter-mapping-sources"></a>

パラメータマッピングを作成する際は、変更するメソッドリクエストまたは統合レスポンスパラメータを指定して、これらのパラメータを変更する方法を指定します。

次の表は、マッピングできるメソッドリクエストパラメータと、マッピングを作成する式をまとめています。これらの式での {{name}} はメソッドリクエストパラメータ名です。例えば、リクエストヘッダーパラメータ `puppies` をマッピングするには、`method.request.header.puppies` という式を使用します。式は、正規表現 `'^[a-zA-Z0-9._$-]+$]'` と一致する必要があります。プロキシ統合と非プロキシ統合の統合リクエストでは、パラメータマッピングを使用できます。


| **マッピングされたデータソース** | **マッピング式** | 
| --- | --- | 
| メソッドリクエストのパス | method.request.path.{{name}} | 
| メソッドリクエストのクエリ文字列 | method.request.querystring.{{name}} | 
| 複数値メソッドリクエストのクエリ文字列 | method.request.multivaluequerystring.{{name}} | 
| メソッドリクエストのヘッダー | method.request.header.{{name}} | 
| 複数値メソッドリクエストのヘッダー | method.request.multivalueheader.{{name}} | 
| メソッドリクエストボディ | method.request.body | 
| メソッドリクエストボディ (JsonPath) | `method.request.body.{{JSONPath_EXPRESSION}}`.<br />{{JSONPath\_EXPRESSION}} はリクエスト本文の JSON フィールドの JSONPath 式です。詳細については、「[JSONPath 式](http://goessner.net/articles/JsonPath/index.html#e2)」を参照してください。 | 
| ステージ変数 | stageVariables.{{name}} | 
| コンテキスト変数 | `context.{{name}}`<br />名前は、[サポートされるコンテキスト変数](api-gateway-mapping-template-reference.md#context-variable-reference)のいずれかである必要があります。 | 
| 静的な値 | `{{'static_value'}}`.<br />{{STATIC\_VALUE}} はリテラル文字列で、単一引用符のペアで囲まれている必要があります。例えば、`'https://www.example.com'`。 | 

次の表は、マッピングできる統合レスポンスパラメータと、マッピングを作成する式をまとめています。これらの式での {{name}} はメ統合レスポンスパラメータ名です。メソッドレスポンスヘッダーは、任意の統合レスポンスヘッダーまたは統合レスポンス本文、$context 変数、または静的な値からマップできます。統合レスポンスでパラメータマッピングを使用するには、非プロキシ統合を使用する必要があります。


| マッピングされたデータソース | マッピング式 | 
| --- | --- | 
| 統合レスポンスのヘッダー | integration.response.header.{{name}} | 
| 統合レスポンスのヘッダー | integration.response.multivalueheader.{{name}} | 
| 統合レスポンスの本文 | integration.response.body | 
| 統合レスポンスの本文 (JsonPath) | `integration.response.body.{{JSONPath_EXPRESSION}}`<br />{{JSONPath\_EXPRESSION}} はレスポンス本文の JSON フィールドの JSONPath 式です。詳細については、「[JSONPath 式](http://goessner.net/articles/JsonPath/index.html#e2)」を参照してください。 | 
| ステージ変数 | stageVariables.{{name}} | 
| コンテキスト変数 | `context.{{name}}`<br />名前は、[サポートされるコンテキスト変数](api-gateway-mapping-template-reference.md#context-variable-reference)のいずれかである必要があります。 | 
| 静的な値 | ` {{'static_value'}}`<br />{{STATIC\_VALUE}} はリテラル文字列で、単一引用符のペアで囲まれている必要があります。例えば、`'https://www.example.com'`。 | 