

Aviso de fim do suporte: em 15 de setembro de 2025, o suporte para o Amazon Lex V1 AWS será interrompido. Após 15 de setembro de 2025, você não poderá mais acessar o console do Amazon Lex V1 nem os respectivos recursos. Se você estiver usando o Amazon Lex V2, consulte o [guia do Amazon Lex V2](https://docs.aws.amazon.com/lexv2/latest/dg/what-is.html) em vez disso. 

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Definição de atributos de solicitação
<a name="context-mgmt-request-attribs"></a>

*Atributos de solicitação contêm informações específicas da solicitação e aplicam-se apenas à solicitação atual.* Um aplicativo cliente envia essas informações ao Amazon Lex. Use atributos de solicitação para passar informações que não precisam ser mantidas durante toda a sessão. Você pode criar seus próprios atributos de solicitação ou usar atributos predefinidos. Para enviar atributos de solicitação, use o cabeçalho `x-amz-lex-request-attributes` em uma [PostContent](API_runtime_PostContent.md) ou no campo `requestAttributes` em uma solicitação [PostText](API_runtime_PostText.md). Como os atributos de solicitação não são persistentes entre as solicitações como os atributos de sessão, eles não são retornados em respostas `PostContent` ou `PostText`. 

**nota**  
Para enviar informações que são mantidas nas solicitações, use atributos de sessão.

O namespace `x-amz-lex:` é reservado para os atributos de solicitação predefinidos. Não crie atributos de solicitação com o prefixo `x-amz-lex:`.

## Definição de atributos de solicitação predefinidos
<a name="context-mgmt-special"></a>

O Amazon Lex fornece atributos de solicitação predefinidos para gerenciar a maneira como ele processa as informações enviadas a seu bot. Os atributos não são mantidos durante toda a sessão. Por isso, você deve enviar os atributos predefinidos em cada solicitação. Todos os atributos predefinidos estão no namespace `x-amz-lex:`.

Além dos atributos predefinidos a seguir, o Amazon Lex fornece atributos predefinidos para plataformas de sistemas de mensagens. Para obter uma lista desses atributos, consulte [Implantação de um bot do Amazon Lex em uma plataforma de sistema de mensagens](example1.md).

### Como configurar o tipo de resposta
<a name="special-response"></a>

Se tiver dois aplicativos clientes com diferentes recursos, talvez seja necessário restringir o formato das mensagens em uma resposta. Por exemplo, talvez você queira restringir as mensagens enviadas a um cliente web a textos sem formatação, mas permitir que um cliente móvel use o texto sem formatação e Speech Synthesis Markup Language (SSML). Para definir o formato das mensagens retornadas pelas operações [PostContent](API_runtime_PostContent.md) e [PostText](API_runtime_PostText.md), use o atributo de solicitação `x-amz-lex:accept-content-types"`. 

Você pode definir o atributo para qualquer combinação dos seguintes tipos de mensagem: 
+ `PlainText`: a mensagem contém texto sem formatação UTF-8.
+ `SSML`: a mensagem contém texto formatado para saída de voz.
+ `CustomPayload`: a mensagem contém um formato personalizado que você criou para seu cliente. Você pode definir a carga útil para atender às necessidades de seu aplicativo.

O Amazon Lex retorna apenas mensagens com o tipo especificado no campo `Message` da resposta. Você pode definir mais de um valor. Para isso, separe os valores com uma vírgula. Se estiver usando grupos de mensagens, cada um deverá conter pelo menos uma mensagem do tipo especificado. Do contrário, você receberá um erro `NoUsableMessageException`. Para obter mais informações, consulte [Grupos de mensagens](howitworks-manage-prompts.md#message-groups).

**nota**  
O atributo de solicitação `x-amz-lex:accept-content-types` não tem efeito sobre o conteúdo do corpo HTML. O conteúdo da resposta de uma operação `PostText` sempre é texto sem formatação UTF-8. O corpo da resposta de uma operação `PostContent` contém dados no formato definido no cabeçalho `Accept` da solicitação.

### Definição do fuso horário preferido
<a name="special-time-zone"></a>

Para definir o fuso horário usado para resolver datas de forma que seja relativo ao fuso horário do usuário, use o atributo de solicitação `x-amz-lex:time-zone`. Se um fuso horário não está especificado no atributo `x-amz-lex:time-zone`, o padrão depende da região que você está usando para o seu bot.


| Região | Fuso horário padrão | 
| --- | --- | 
| Leste dos EUA (N. da Virgínia) |  America/New\$1York  | 
| Oeste dos EUA (Oregon) |  America/Los\$1Angeles  | 
| Ásia-Pacífico (Singapura) |  Asia/Singapore  | 
| Ásia-Pacífico (Sydney) |  Australia/Sydney  | 
| Ásia-Pacífico (Tóquio) |  Asia/Tokyo  | 
| Europa (Frankfurt) |  Europe/Berlin  | 
| Europa (Irlanda) |  Europe/Dublin  | 
| Europa (Londres) |  Europe/London  | 

Por exemplo, se o usuário responde `tomorrow` em resposta ao prompt "Quando você gostaria que seu pacote fosse entregue?" a *data* em que o pacote será entregue depende do fuso horário do usuário. Por exemplo, quando ele é 01:00 de 16 de setembro em Nova York, são 22:00 de 15 de setembro em Los Angeles. Se uma pessoa no Leste dos EUA (Norte da Virgínia) encomendar um pacote a ser entregue "amanhã" usando o fuso horário padrão, o pacote será entregue no dia 17, e não no dia 16. No entanto, se você definir o atributo de solicitação `x-amz-lex:time-zone` para `America/Los_Angeles`, o pacote será entregue no dia 16.

Você pode definir o atributo para qualquer um nomes de fuso horário IANA (Internet Assigned Number Authority). Para ver a lista de nomes de fuso horário, consulte a [Lista de fusos horários do banco de dados tz](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) na Wikipédia.

## Definição de atributos de solicitação definidos pelo usuário
<a name="context-mgmt-user"></a>

O *atributo de solicitação definido pelo usuário* são os dados que você envia para seu bot em cada solicitação. Você enviar as informações no cabeçalho `amz-lex-request-attributes` de uma solicitação `PostContent` ou no campo `requestAttributes` de uma solicitação `PostText`. 

Para enviar atributos de solicitação para o Amazon Lex, você cria um string-to-string mapa dos atributos. As considerações a seguir mostram como mapear atributos de solicitação: 

```
{
   "attributeName": "attributeValue",
   "attributeName": "attributeValue"
}
```

Para a operação `PostText`, insira o mapa no corpo da solicitação usando o campo `requestAttributes`, como a seguir:

```
"requestAttributes": {
   "attributeName": "attributeValue",
   "attributeName": "attributeValue"
}
```

Para a operação `PostContent`, codifique o mapa em base64 e o envie como o cabeçalho `x-amz-lex-request-attributes`.

Se você está enviando dados binários ou estruturados em um atributo de solicitação, você deve primeiro transformar os dados em uma string simples. Para obter mais informações, consulte [Configuração de atributos complexos](context-mgmt-complex-attributes.md).