

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á.

# PutSlotType
<a name="API_PutSlotType"></a>

Cria um tipo de slot personalizado ou substitui um tipo de slot personalizado existente.

Para criar um tipo de slot personalizado, especifique um nome para o tipo de slot e um conjunto de valores de enumeração, que são os valores que um slot desse tipo pode assumir. Para obter mais informações, consulte [Amazon Lex: como funciona](how-it-works.md).

Se você especificar o nome de um tipo de slot existente, os campos na solicitação substituirão os valores existentes na versão `$LATEST` do tipo de slot. O Amazon Lex remove campos que você não fornece na solicitação. Se você não especificar os campos obrigatórios, o Amazon Lex lançará uma exceção. Quando você atualiza a versão `$LATEST` de um tipo de slot, o campo `$LATEST` de qualquer bot que usa a versão `status` do tipo de slot é definido como `NOT_BUILT`. 

Essa operação exige permissões para a ação `lex:PutSlotType`.

## Sintaxe da Solicitação
<a name="API_PutSlotType_RequestSyntax"></a>

```
PUT /slottypes/name/versions/$LATEST HTTP/1.1
Content-type: application/json

{
   "checksum": "string",
   "createVersion": boolean,
   "description": "string",
   "enumerationValues": [ 
      { 
         "synonyms": [ "string" ],
         "value": "string"
      }
   ],
   "parentSlotTypeSignature": "string",
   "slotTypeConfigurations": [ 
      { 
         "regexConfiguration": { 
            "pattern": "string"
         }
      }
   ],
   "valueSelectionStrategy": "string"
}
```

## Parâmetros da Solicitação de URI
<a name="API_PutSlotType_RequestParameters"></a>

A solicitação usa os seguintes parâmetros de URI:

 ** [name](#API_PutSlotType_RequestSyntax) **   <a name="lex-PutSlotType-request-uri-name"></a>
O nome do tipo de slot. O nome *não* é sensível a maiúsculas e minúsculas.   
O nome não pode corresponder a um nome de tipo de slot incorporado ou a um nome de tipo de slot incorporado com “AMAZON.” removido. Por exemplo, como há um tipo de slot integrado chamado `AMAZON.DATE`, você não pode criar um tipo de slot personalizado chamado `DATE`.   
Para obter uma lista de tipos de slot integrados, consulte [Referência do tipo de slot](https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built-in-intent-ref/slot-type-reference) no *Alexa Skills Kit*.  
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.  
Padrão: `^([A-Za-z]_?)+$`   
Obrigatório: Sim

## Corpo da Solicitação
<a name="API_PutSlotType_RequestBody"></a>

A solicitação aceita os dados a seguir no formato JSON.

 ** [checksum](#API_PutSlotType_RequestSyntax) **   <a name="lex-PutSlotType-request-checksum"></a>
Identifica uma revisão específica da versão `$LATEST`.  
Ao criar um novo tipo de slot, deixe o campo `checksum` em branco. Se você especificar uma soma de verificação, obterá uma exceção `BadRequestException`.  
Quando quiser atualizar um tipo de slot, defina o campo `checksum` como a soma de verificação da revisão mais recente da versão `$LATEST`. Se você não especificar o campo ` checksum` ou se a soma de verificação não corresponder à versão `$LATEST`, você receberá uma exceção `PreconditionFailedException`.  
Tipo: String  
Obrigatório: não

 ** [createVersion](#API_PutSlotType_RequestSyntax) **   <a name="lex-PutSlotType-request-createVersion"></a>
Quando configurado para `true`, uma nova versão numerada do tipo de slot é criada. Isso é o mesmo que chamar a operação `CreateSlotTypeVersion`. Se você não especificar `createVersion`, o valor padrão será `false`.  
Tipo: booliano  
Obrigatório: não

 ** [description](#API_PutSlotType_RequestSyntax) **   <a name="lex-PutSlotType-request-description"></a>
Uma descrição do tipo de slot.  
Tipo: String  
Restrições de tamanho: tamanho mínimo 0. Tamanho máximo de 200.  
Obrigatório: não

 ** [enumerationValues](#API_PutSlotType_RequestSyntax) **   <a name="lex-PutSlotType-request-enumerationValues"></a>
Uma lista de objetos `EnumerationValue` que define os valores que o tipo de slot pode ter. Cada valor pode ter uma lista de `synonyms`, que são valores adicionais que ajudam a treinar o modelo de machine learning sobre os valores que ele resolve para o slot.   
Um tipo de slot de expressão regular não exige valores de enumeração. Todos os outros tipos de slots exigem uma lista de valores de enumeração.  
Quando o Amazon Lex resolve um valor de slot, ele gera uma lista de resolução que contém até cinco valores possíveis para o slot. Se você estiver usando uma função do Lambda, essa lista de resolução será passada para a função. Se você não estiver usando uma função do Lambda, poderá optar por retornar o valor que o usuário inseriu ou o primeiro valor na lista como o valor de slot. O campo `valueSelectionStrategy` indica a opção a ser usada.   
Tipo: matriz de objetos [EnumerationValue](API_EnumerationValue.md)  
Membros da Matriz: número mínimo de 0 itens. Número máximo de 10.000 itens.  
Obrigatório: não

 ** [parentSlotTypeSignature](#API_PutSlotType_RequestSyntax) **   <a name="lex-PutSlotType-request-parentSlotTypeSignature"></a>
O tipo de slot integrado usado como pai do tipo de slot. Quando você define um tipo de slot pai, o novo tipo de slot tem todas as mesmas configurações do pai.  
Somente `AMAZON.AlphaNumeric` é suportado.  
Tipo: String  
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.  
Padrão: `^((AMAZON\.)_?|[A-Za-z]_?)+`   
Obrigatório: não

 ** [slotTypeConfigurations](#API_PutSlotType_RequestSyntax) **   <a name="lex-PutSlotType-request-slotTypeConfigurations"></a>
Informações de configuração que estendem o tipo de slot integrado principal. A configuração é adicionada às configurações do tipo de slot principal.  
Tipo: matriz de objetos [SlotTypeConfiguration](API_SlotTypeConfiguration.md)  
Membros da Matriz: número mínimo de 0 itens. Número máximo de 10 itens.  
Obrigatório: não

 ** [valueSelectionStrategy](#API_PutSlotType_RequestSyntax) **   <a name="lex-PutSlotType-request-valueSelectionStrategy"></a>
Determina a estratégia de resolução de slots que o Amazon Lex usa para retornar valores do tipo de slot. O campo pode ser definido com os dos seguintes valores:  
+  `ORIGINAL_VALUE` - Retorna o valor inserido pelo usuário, se o valor do usuário for semelhante ao valor de um slot.
+  `TOP_RESOLUTION` - Se houver uma lista de resolução para o slot, retornará o primeiro valor na lista como o valor do tipo de slot. Se não houver uma lista de resolução, retornará o valor “null”.
Se `valueSelectionStrategy` não for especificado, o valor padrão será `ORIGINAL_VALUE`.  
Tipo: String  
Valores válidos: `ORIGINAL_VALUE | TOP_RESOLUTION`   
Obrigatório: não

## Sintaxe da resposta
<a name="API_PutSlotType_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "checksum": "string",
   "createdDate": number,
   "createVersion": boolean,
   "description": "string",
   "enumerationValues": [ 
      { 
         "synonyms": [ "string" ],
         "value": "string"
      }
   ],
   "lastUpdatedDate": number,
   "name": "string",
   "parentSlotTypeSignature": "string",
   "slotTypeConfigurations": [ 
      { 
         "regexConfiguration": { 
            "pattern": "string"
         }
      }
   ],
   "valueSelectionStrategy": "string",
   "version": "string"
}
```

## Elementos de resposta
<a name="API_PutSlotType_ResponseElements"></a>

Se a ação for bem-sucedida, o serviço retornará uma resposta HTTP 200.

Os dados a seguir são retornados no formato JSON pelo serviço.

 ** [checksum](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-checksum"></a>
Soma de verificação da versão `$LATEST` do tipo de slot.  
Tipo: String

 ** [createdDate](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-createdDate"></a>
A data em que o tipo de slot foi criado.  
Tipo: Timestamp

 ** [createVersion](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-createVersion"></a>
 `True` se uma nova versão do tipo de slot tiver sido criada. Se o campo `createVersion` não tiver sido especificado na solicitação, o campo `createVersion` será definido como falso na resposta.  
Tipo: booliano

 ** [description](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-description"></a>
Uma descrição do tipo de slot.  
Tipo: String  
Restrições de tamanho: tamanho mínimo 0. Tamanho máximo de 200.

 ** [enumerationValues](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-enumerationValues"></a>
Uma lista de objetos `EnumerationValue` que define os valores que o tipo de slot pode ter.  
Tipo: matriz de objetos [EnumerationValue](API_EnumerationValue.md)  
Membros da Matriz: número mínimo de 0 itens. Número máximo de 10.000 itens.

 ** [lastUpdatedDate](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-lastUpdatedDate"></a>
A data em que o tipo de slot foi atualizado. Quando você cria um tipo de slot, a data de criação e a data da última atualização são as mesmas.  
Tipo: Timestamp

 ** [name](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-name"></a>
O nome do tipo de slot.  
Tipo: String  
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.  
Padrão: `^([A-Za-z]_?)+$` 

 ** [parentSlotTypeSignature](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-parentSlotTypeSignature"></a>
O tipo de slot integrado usado como pai do tipo de slot.  
Tipo: String  
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.  
Padrão: `^((AMAZON\.)_?|[A-Za-z]_?)+` 

 ** [slotTypeConfigurations](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-slotTypeConfigurations"></a>
Informações de configuração que estendem o tipo de slot integrado principal.  
Tipo: matriz de objetos [SlotTypeConfiguration](API_SlotTypeConfiguration.md)  
Membros da Matriz: número mínimo de 0 itens. Número máximo de 10 itens.

 ** [valueSelectionStrategy](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-valueSelectionStrategy"></a>
A estratégia de resolução de slot que o Amazon Lex usa para determinar o valor de slot. Para obter mais informações, consulte [PutSlotType](#API_PutSlotType).  
Tipo: String  
Valores válidos: `ORIGINAL_VALUE | TOP_RESOLUTION` 

 ** [version](#API_PutSlotType_ResponseSyntax) **   <a name="lex-PutSlotType-response-version"></a>
A versão do tipo de slot. Para um novo tipo de slot, a versão é sempre `$LATEST`.   
Tipo: string  
Restrições de tamanho: tamanho mínimo 1. O comprimento máximo é 64.  
Padrão: `\$LATEST|[0-9]+` 

## Erros
<a name="API_PutSlotType_Errors"></a>

 ** BadRequestException **   
A solicitação não está bem formada. Por exemplo, um valor é inválido ou um campo obrigatório está faltando. Verifique os valores dos campos e tente novamente.  
Código de status HTTP: 400

 ** ConflictException **   
 Houve um conflito ao processar a solicitação. Tente sua solicitação novamente.   
Código de Status HTTP: 409

 ** InternalFailureException **   
Ocorreu um erro interno do Amazon Lex. Tente sua solicitação novamente.  
Código de status HTTP: 500

 ** LimitExceededException **   
A solicitação excedeu um limite. Tente sua solicitação novamente.  
Código de status HTTP: 429

 ** PreconditionFailedException **   
 A soma de verificação do recurso que você está tentando alterar não corresponde à soma de verificação na solicitação. Verifique a soma de verificação e tente novamente.  
Código de status HTTP: 412

## Consulte também
<a name="API_PutSlotType_SeeAlso"></a>

Para obter mais informações sobre como usar essa API em uma das linguagens específicas AWS SDKs, consulte o seguinte:
+  [AWS Interface de linha de comando V2](https://docs.aws.amazon.com/goto/cli2/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para Python](https://docs.aws.amazon.com/goto/boto3/lex-models-2017-04-19/PutSlotType) 
+  [AWS SDK para Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/lex-models-2017-04-19/PutSlotType) 