

# 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`. *JSONPath\$1EXPRESSION* はリクエスト本文の JSON フィールドの JSONPath 式です。詳細については、「[JSONPath 式](http://goessner.net/articles/JsonPath/index.html#e2)」を参照してください。  | 
| ステージ変数 | stageVariables.name | 
| コンテキスト変数 |  `context.name` 名前は、[サポートされるコンテキスト変数](api-gateway-mapping-template-reference.md#context-variable-reference)のいずれかである必要があります。 | 
| 静的な値 | `'static_value'`. *STATIC\$1VALUE* はリテラル文字列で、単一引用符のペアで囲まれている必要があります。例えば、`'https://www.example.com'`。 | 

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


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