

# Referência da origem do mapeamento de parâmetros para APIs REST no API Gateway
<a name="rest-api-parameter-mapping-sources"></a>

Ao criar um mapeamento de parâmetros, especifique os parâmetros de solicitação de método ou resposta de integração a serem modificados e especifique como modificar esses parâmetros.

A tabela a seguir mostra os parâmetros de solicitação de método que você pode mapear e a expressão para criar o mapeamento. Nessas expressões, *nome* é o nome de um parâmetro de solicitação de método. Por exemplo, para mapear o parâmetro do cabeçalho da solicitação `puppies`, use a expressão `method.request.header.puppies`. A expressão deve corresponder à expressão regular `'^[a-zA-Z0-9._$-]+$]'`. É possível usar o mapeamento de parâmetros em sua solicitação de integração para integrações de proxy e não proxy. 


| **Fonte de dados mapeada** | **Expressão de mapeamento** | 
| --- | --- | 
| Caminho de solicitação de método | method.request.path.name | 
| String de consulta da solicitação de método | method.request.querystring.name | 
| String de consulta de solicitação do método de vários valores | method.request.multivaluequerystring.name | 
| Cabeçalho da solicitação de método | method.request.header.name | 
| Cabeçalho de solicitação de método de vários valores | method.request.multivalueheader.name | 
| Corpo de solicitação de método | method.request.body | 
| Corpo de solicitação de método (JsonPath) | `method.request.body.JSONPath_EXPRESSION`. *JSONPath\$1EXPRESSION* é uma expressão JSONPath para um campo JSON do corpo de uma solicitação. Consulte mais informações em [Expressão JSONPath](http://goessner.net/articles/JsonPath/index.html#e2).  | 
| Variáveis de estágio | stageVariables.name | 
| Variáveis de contexto |  `context.name` O nome deve ser uma das [variáveis de contexto compatíveis](api-gateway-mapping-template-reference.md#context-variable-reference). | 
| Valor estático | `'static_value'`. *static\$1value* é um literal de string e deve estar entre aspas simples. Por exemplo, `'https://www.example.com'`. | 

A tabela a seguir mostra os parâmetros da resposta de integração que você pode mapear e a expressão para criar o mapeamento. Nessas expressões, *nome* é o nome de um parâmetro de resposta de integração. É possível mapear cabeçalhos de resposta do método por meio de qualquer cabeçalho de resposta de integração ou corpo de resposta de integração, variáveis \$1context ou valores estáticos. Para usar o mapeamento de parâmetros para uma resposta de integração, você precisa de uma integração não proxy.


| Fonte de dados mapeada | Expressão de mapeamento | 
| --- | --- | 
| Cabeçalho da resposta de integração | integration.response.header.name | 
| Cabeçalho da resposta de integração | integration.response.multivalueheader.name | 
| Corpo da resposta de integração | integration.response.body | 
| Corpo da resposta de integração (JsonPath) | `integration.response.body.JSONPath_EXPRESSION` *JSONPath\$1EXPRESSION* é uma expressão JSONPath para um campo JSON do corpo de uma resposta. Consulte mais informações em [Expressão JSONPath](http://goessner.net/articles/JsonPath/index.html#e2). | 
| Variável de estágio | stageVariables.name | 
| Variável de contexto |  `context.name` O nome deve ser uma das [variáveis de contexto compatíveis](api-gateway-mapping-template-reference.md#context-variable-reference). | 
| Valor estático | ` 'static_value'` *static\$1value* é um literal de string e deve estar entre aspas simples. Por exemplo, `'https://www.example.com'`. | 