

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

# AWS SAM modelo
<a name="sam-specification"></a>

Depois de executar o **sam init** comando e concluir o fluxo de trabalho subsequente, AWS SAM cria o diretório do projeto do aplicativo, que é o seu AWS SAM projeto. Você define seu aplicativo sem servidor adicionando código ao seu AWS SAM projeto. Embora seu AWS SAM projeto consista em um conjunto de arquivos e pastas, o arquivo com o qual você trabalha principalmente é o seu AWS SAM modelo (nomeado`template.yaml`). Nesse modelo, você escreve o código para expressar os recursos, os mapeamentos da origem do evento e outras propriedades que definem a aplicação com tecnologia sem servidor.

**nota**  
Um elemento-chave do AWS SAM modelo é a especificação do AWS SAM modelo. Essa especificação fornece a sintaxe abreviada que, quando comparada a CloudFormation, permite que você use menos linhas de código para definir os recursos, mapeamentos de origem de eventos APIs, permissões e outras propriedades do seu aplicativo sem servidor.

Esta seção fornece detalhes sobre como você usa as seções no AWS SAM modelo para definir tipos de recursos, propriedades de recursos, tipos de dados, atributos de recursos, funções intrínsecas e extensões do API Gateway.

AWS SAM os modelos são uma extensão dos CloudFormation modelos, com tipos de sintaxe exclusivos que usam sintaxe abreviada com menos linhas de código do que. CloudFormation Isso acelera o desenvolvimento na criação de uma aplicação sem servidor. Para obter mais informações, consulte [AWS SAM recursos e propriedades](sam-specification-resources-and-properties.md). Para obter a referência completa dos CloudFormation modelos, consulte [Referência do CloudFormation modelo](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-reference.html) no *Guia AWS CloudFormation do usuário*.

Ao desenvolver, muitas vezes você achará vantajoso dividir o código do aplicativo em arquivos separados para melhor organizar e gerenciar seu aplicativo. Um exemplo básico disso é usar um arquivo separado para seu código de AWS Lambda função em vez de ter esse código em seu AWS SAM modelo. Faça isso organizando o código da função Lambda em um subdiretório do seu projeto e referenciando seu caminho local em seu modelo (). AWS Serverless Application Model AWS SAM

**Topics**
+ [AWS SAM anatomia do modelo](sam-specification-template-anatomy.md)
+ [AWS SAM recursos e propriedades](sam-specification-resources-and-properties.md)
+ [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md)
+ [Atributos de recursos suportados por AWS SAM](sam-specification-resource-attributes.md)
+ [Extensões do API Gateway para AWS SAM](sam-specification-api-gateway-extensions.md)
+ [Funções intrínsecas para AWS SAM](sam-specification-intrinsic-functions.md)

# AWS SAM anatomia do modelo
<a name="sam-specification-template-anatomy"></a>

Um arquivo AWS SAM de modelo segue rigorosamente o formato de um arquivo de CloudFormation modelo, que é descrito em [Anatomia do modelo](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) no *Guia do AWS CloudFormation usuário*. As principais diferenças entre arquivos AWS SAM de modelo e arquivos CloudFormation de modelo são as seguintes:
+ **Declaração de transformação.** A declaração `Transform: AWS::Serverless-2016-10-31` é necessária para arquivos AWS SAM de modelo. Essa declaração identifica um arquivo CloudFormation de modelo como um arquivo AWS SAM de modelo. Para obter mais informações sobre transformações, consulte [Transformações](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html) no *Guia do usuário do AWS CloudFormation *.
+ **Seção global.** A `Globals` seção é exclusiva de AWS SAM. Ele define propriedades que são comuns a todas as suas funções sem servidor e. APIs Todos os `AWS::Serverless::StateMachine` recursos `AWS::Serverless::Function` `AWS::Serverless::Api``AWS::Serverless::CapacityProvider`,`AWS::Serverless::HttpApi`,`AWS::Serverless::SimpleTable`,, e herdam as propriedades definidas na `Globals` seção. Para obter mais informações sobre essa seção, consulte [Seção Global do modelo AWS SAM](sam-specification-template-anatomy-globals.md).
+ **Seção de recursos.** Nos AWS SAM modelos, a `Resources` seção pode conter uma combinação de CloudFormation recursos e AWS SAM recursos. Para obter mais informações sobre CloudFormation recursos, consulte a [referência de tipos de AWS recursos e propriedades](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) no *Guia AWS CloudFormation do usuário*. Para obter mais informações sobre AWS SAM recursos, consulte[AWS SAM recursos e propriedades](sam-specification-resources-and-properties.md).

Todas as outras seções de um arquivo de AWS SAM modelo correspondem à seção CloudFormation de arquivo de modelo com o mesmo nome.

## YAML
<a name="template-anatomy-outline.yaml"></a>

O exemplo a seguir mostra um modelo de estilhaço formatado em YAML.

```
Transform: AWS::Serverless-2016-10-31

Globals:
  set of globals

Description:
  String

Metadata:
  template metadata

Parameters:
  set of parameters

Mappings:
  set of mappings

Conditions:
  set of conditions

Resources:
  set of resources

Outputs:
  set of outputs
```

## Seções do modelo
<a name="template-anatomy-sections"></a>

AWS SAM os modelos podem incluir várias seções principais. Somente as seções `Transform` e `Resources` são obrigatórias.

Você pode incluir seções de modelo em qualquer ordem. No entanto, se você estiver usando extensões de linguagem, deverá adicionar `AWS::LanguageExtensions` *antes* da transformação sem servidor (ou seja, antes de `AWS::Serverless-2016-10-31`), conforme mostrado no seguinte exemplo:

```
Transform:
  - AWS::LanguageExtensions
  - AWS::Serverless-2016-10-31
```

À medida que você cria o modelo, pode ser útil usar a ordem lógica mostrada na lista a seguir. Isso ocorre porque os valores em uma seção podem se referir aos valores de uma seção anterior.

**[Transformar (obrigatório)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html)**  
Para AWS SAM modelos, você deve incluir esta seção com um valor de`AWS::Serverless-2016-10-31`.  
Transformações adicionais são opcionais. Para obter mais informações sobre transformações, consulte [Transformações](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html) no *Guia do usuário do AWS CloudFormation *.

**[Globais (opcional)](sam-specification-template-anatomy-globals.md)**  
Propriedades que são comuns a todas as suas funções sem servidor e APIs tabelas simples. Todos os `AWS::Serverless::StateMachine` recursos `AWS::Serverless::Function` `AWS::Serverless::Api``AWS::Serverless::CapacityProvider`,`AWS::Serverless::HttpApi`,`AWS::Serverless::SimpleTable`,, e herdam as propriedades definidas na `Globals` seção.  
Esta seção é exclusiva de AWS SAM. Não há uma seção correspondente nos modelo CloudFormation s.

**[Description (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-description-structure.html)**  
Uma sequência de texto que descreve o modelo.  
Esta seção corresponde diretamente à `Description` seção de CloudFormation modelos.

**[Metadata (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html)**  
Os objetos que fornecem informações adicionais sobre o modelo.  
Esta seção corresponde diretamente à `Metadata` seção de CloudFormation modelos.

**[Parameters (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html)**  
Os valores a serem passados para seu modelo no runtime (ao criar ou atualizar uma pilha). Você pode fazer referência a parâmetros nas seções `Resources` e `Outputs` do modelo. Os objetos declarados na `Parameters` seção fazem com que o **sam deploy --guided** comando apresente solicitações adicionais ao usuário.  
Os valores transmitidos usando o parâmetro `--parameter-overrides` do comando `sam deploy` e as entradas no arquivo de configuração têm precedência sobre as entradas no arquivo de modelo do AWS SAM . Para obter mais informações sobre o comando `sam deploy`, consulte [sam deploy](sam-cli-command-reference-sam-deploy.md) na AWS SAM Referência de comandos da CLI. Para obter mais informações sobre o arquivo de configuração, consulte [Arquivo de configuração do AWS SAM CLI](serverless-sam-cli-config.md).

**[Mappings (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/mappings-section-structure.html)**  
Um mapeamento de chaves e valores associados que você pode usar para especificar valores de parâmetros condicionais, semelhante a uma tabela de pesquisa. Você pode vincular uma chave a um valor correspondente usando a função intrínseca [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html) nas seções `Resources` e `Outputs`.  
Esta seção corresponde diretamente à `Mappings` seção de CloudFormation modelos.

**[Condições (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/conditions-section-structure.html) **  
As condições que controlam se determinados recursos são criados ou se determinadas propriedades de recursos são atribuídas a um valor durante a criação ou a atualização da pilha. Por exemplo, condicionalmente, você pode criar um recurso que depende de se a pilha é de um ambiente de teste ou de produção.  
Esta seção corresponde diretamente à `Conditions` seção de CloudFormation modelos.

**[Resources (obrigatório)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html)**  
Os recursos da pilha e suas propriedades, como uma instância do Amazon Elastic Compute Cloud (Amazon EC2) ou um bucket do Amazon Simple Storage Service (Amazon S3). Você pode fazer referência a recursos nas seções `Resources` e `Outputs` do modelo.  
Essa seção é semelhante à seção `Resources` de modelos CloudFormation . Nos AWS SAM modelos, essa seção pode conter AWS SAM recursos além CloudFormation dos recursos.

**[Outputs (opcional)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/outputs-section-structure.html)**  
Os valores que são retornados sempre que você visualiza as propriedades da pilha. Por exemplo, você pode declarar uma saída para o nome de um bucket do S3 e, em seguida, chamar o comando `aws cloudformation describe-stacks` AWS Command Line Interface (AWS CLI) para ver o nome.  
Esta seção corresponde diretamente à seção `Outputs` de modelos CloudFormation .

## Próximas etapas
<a name="template-anatomy-next-steps"></a>

Para baixar e implantar um aplicativo sem servidor de amostra que contém um arquivo AWS SAM de modelo, consulte [Começando com AWS SAM](serverless-getting-started.md) e siga as instruções em. [Tutorial: implante um aplicativo Hello World com AWS SAM](serverless-getting-started-hello-world.md)

# Seção Global do modelo AWS SAM
<a name="sam-specification-template-anatomy-globals"></a>

Às vezes, os recursos que você declara em um AWS SAM modelo têm configurações comuns. Por exemplo, você pode ter um aplicativo com vários recursos `AWS::Serverless::Function` que têm configurações `Runtime`, `Memory`, `VPCConfig`, `Environment` e `Cors` idênticas. Em vez de duplicar essas informações em todos os recursos, você pode declará-las uma vez na seção `Globals` e permitir que seus recursos as herdem.

A `Globals` seção oferece suporte aos seguintes tipos de AWS SAM recursos:
+ `AWS::Serverless::Api`
+ `AWS::Serverless::CapacityProvider`
+ `AWS::Serverless::Function`
+ `AWS::Serverless::HttpApi`
+ `AWS::Serverless::SimpleTable`
+ `AWS::Serverless::StateMachine`

Exemplo:

```
Globals:
  Function:
    Runtime: nodejs12.x
    Timeout: 180
    Handler: index.handler
    Environment:
      Variables:
        TABLE_NAME: data-table

Resources:
  HelloWorldFunction:
    Type: AWS::Serverless::Function
    Properties:
      Environment:
        Variables:
          MESSAGE: "Hello From SAM"

  ThumbnailFunction:
    Type: AWS::Serverless::Function
    Properties:
      Events:
        Thumbnail:
          Type: Api
          Properties:
            Path: /thumbnail
            Method: POST
```

Neste exemplo, `HelloWorldFunction` e `ThumbnailFunction` usam “nodejs12.x” para `Runtime`, “180” segundos para `Timeout` e “index.handler” para `Handler`. `HelloWorldFunction` adiciona a variável de ambiente MESSAGE, além do TABLE\$1NAME herdado. `ThumbnailFunction` herda todas as propriedades `Globals` e adiciona uma fonte de eventos de API.

## Recursos e propriedades compatíveis
<a name="sam-specification-template-anatomy-globals-supported-resources-and-properties"></a>

AWS SAM suporta os seguintes recursos e propriedades.

```
Globals:
  Api:
    AccessLogSetting:
    Auth:
    BinaryMediaTypes:
    CacheClusterEnabled:
    CacheClusterSize:
    CanarySetting:
    Cors:
    DefinitionUri:
    Domain:
    EndpointConfiguration:
    GatewayResponses:
    MethodSettings:
    MinimumCompressionSize:
    Name:
    OpenApiVersion:
    PropagateTags:
    TracingEnabled:
    Variables:
  
  CapacityProvider:
    InstanceRequirements:
    KmsKeyArn:
    OperatorRole:
    PropagateTags:
    ScalingConfig:
    Tags:
    VpcConfig:
  
  Function:
    Architectures:
    AssumeRolePolicyDocument:
    AutoPublishAlias:
    AutoPublishAliasAllProperties:
    CapacityProviderConfig:
    CodeSigningConfigArn:
    CodeUri:
    DeadLetterQueue:
    DeploymentPreference:
    Description:
    DurableConfig:
    Environment:
    EphemeralStorage:
    EventInvokeConfig:
    FileSystemConfigs:
    FunctionScalingConfig:
    FunctionUrlConfig:
    Handler:
    KmsKeyArn:
    Layers:
    LoggingConfig:
    MemorySize:
    PermissionsBoundary:
    PropagateTags:
    ProvisionedConcurrencyConfig:
    PublishToLatestPublished:
    RecursiveLoop:
    ReservedConcurrentExecutions:
    RolePath:
    Runtime:
    RuntimeManagementConfig:
    SnapStart:
    SourceKMSKeyArn:
    Tags:
    TenancyConfig:
    Timeout:
    Tracing:
    VersionDeletionPolicy:
    VpcConfig:

  HttpApi:
    AccessLogSettings:
    Auth:
    PropagateTags:
    StageVariables:
    Tags:

  SimpleTable:
    SSESpecification:
    
  StateMachine:
    PropagateTags:
```

**nota**  
Os recursos e propriedades que não fazem parte da lista anterior não são aceitas. Alguns motivos para não apoiá-los incluem: 1) Eles abrem possíveis problemas de segurança ou 2) Eles tornam o modelo difícil de entender.

## Implícito APIs
<a name="sam-specification-template-anatomy-globals-implicit-apis"></a>

AWS SAM cria *implícito APIs* quando você declara uma API na `Events` seção. Você pode usar `Globals` para substituir todas as propriedades de implícito APIs.

## Propriedades substituíveis
<a name="sam-specification-template-anatomy-globals-overrideable"></a>

Os recursos podem substituir as propriedades que você declara na seção `Globals`. Por exemplo, você pode adicionar novas variáveis a um mapa de variáveis de ambiente ou substituir variáveis declaradas globalmente. Mas o recurso não pode remover uma propriedade especificada na seção `Globals`.

De forma mais geral, a seção `Globals` declara propriedades que todos os seus recursos compartilham. Alguns recursos podem fornecer novos valores para propriedades declaradas globalmente, mas não podem removê-las. Se alguns recursos usam uma propriedade, mas outros não, você não deve declará-los na seção `Globals`.

As seções a seguir descrevem como a substituição funciona para diferentes tipos de dados.

### Os tipos de dados primitivos são substituídos
<a name="sam-specification-template-anatomy-globals-overrideable-primitives"></a>

Os tipos de dados primitivos incluem cadeias de caracteres, números, booleanos, e assim por diante.

O valor especificado na seção `Resources` substitui o valor na seção `Globals`.

Exemplo:

```
Globals:
  Function:
    Runtime: nodejs12.x

Resources:
  MyFunction:
    Type: AWS::Serverless::Function
    Properties:
      Runtime: python3.9
```

O `Runtime` para `MyFunction` foi definido como `python3.9`.

### Os mapas são mesclados
<a name="sam-specification-template-anatomy-globals-overrideable-maps"></a>

Os mapas também são conhecidos como dicionários ou coleções de pares de chave-valor.

As entradas do mapa na seção `Resources` são mescladas com as entradas do mapa global. Se houver duplicatas, a entrada da seção `Resource` substituirá a entrada da seção `Globals`.

Exemplo:

```
Globals:
  Function:
    Environment:
      Variables:
        STAGE: Production
        TABLE_NAME: global-table

Resources:
  MyFunction:
    Type: AWS::Serverless::Function
    Properties:
      Environment:
        Variables:
          TABLE_NAME: resource-table
          NEW_VAR: hello
```

As variáveis de ambiente de `MyFunction` são definidas da seguinte forma:

```
{
  "STAGE": "Production",
  "TABLE_NAME": "resource-table",
  "NEW_VAR": "hello"
}
```

### As listas são aditivas
<a name="sam-specification-template-anatomy-globals-overrideable-lists"></a>

As listas também são conhecidas como matrizes.

As entradas da lista na seção `Globals` são anexadas à lista na seção `Resources`.

Exemplo:

```
Globals:
  Function:
    VpcConfig:
      SecurityGroupIds:
        - sg-123
        - sg-456

Resources:
  MyFunction:
    Type: AWS::Serverless::Function
    Properties:
      VpcConfig:
        SecurityGroupIds:
          - sg-first
```

Os `SecurityGroupIds` para `MyFunction` `VpcConfig` estão definidos da seguinte forma:

```
[ "sg-123", "sg-456", "sg-first" ]
```

# AWS SAM recursos e propriedades
<a name="sam-specification-resources-and-properties"></a>

Esta seção descreve os tipos de recursos e propriedades que são específicos de. AWS SAM Você define esses recursos e propriedades usando a AWS SAM sintaxe abreviada. AWS SAM também suporta tipos CloudFormation de recursos e propriedades. Para obter informações de referência sobre todos os tipos de AWS recursos e propriedades CloudFormation e AWS SAM suporte, consulte a [referência de tipos de AWS recursos e propriedades](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html) no *Guia AWS CloudFormation do usuário*.

**Topics**
+ [AWS::Serverless::Api](sam-resource-api.md)
+ [AWS::Serverless::Application](sam-resource-application.md)
+ [AWS::Serverless::CapacityProvider](sam-resource-capacityprovider.md)
+ [AWS::Serverless::Connector](sam-resource-connector.md)
+ [AWS::Serverless::Function](sam-resource-function.md)
+ [AWS::Serverless::GraphQLApi](sam-resource-graphqlapi.md)
+ [AWS::Serverless::HttpApi](sam-resource-httpapi.md)
+ [AWS::Serverless::LayerVersion](sam-resource-layerversion.md)
+ [AWS::Serverless::SimpleTable](sam-resource-simpletable.md)
+ [AWS::Serverless::StateMachine](sam-resource-statemachine.md)

# AWS::Serverless::Api
<a name="sam-resource-api"></a>

Cria uma coleção de recursos e métodos do Amazon API Gateway que podem ser invocados por meio de endpoints HTTPS.

Um [AWS::Serverless::Api](#sam-resource-api) recurso não precisa ser adicionado explicitamente a um modelo de definição de aplicativo AWS sem servidor. Um recurso desse tipo é criado implicitamente a partir da união de eventos de API definidos nos recursos [AWS::Serverless::Function](sam-resource-function.md) definidos no modelo que não se referem a um recurso [AWS::Serverless::Api](#sam-resource-api).

Um [AWS::Serverless::Api](#sam-resource-api) recurso deve ser usado para definir e documentar o uso da API OpenApi, o que fornece mais capacidade de configurar os recursos subjacentes do Amazon API Gateway.

Recomendamos que você use CloudFormation ganchos ou políticas do IAM para verificar se os recursos do API Gateway têm autorizadores vinculados a eles para controlar o acesso a eles.

Para obter mais informações sobre o uso de CloudFormation ganchos, consulte [Registrando ganchos](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/registering-hook-python.html) no guia do *usuário da CloudFormation CLI* e no repositório. [apigw-enforce-authorizer](https://github.com/aws-cloudformation/aws-cloudformation-samples/tree/main/hooks/python-hooks/apigw-enforce-authorizer/) GitHub 

Para obter mais informações sobre o uso de políticas do IAM, consulte [Exigir que as rotas de API tenham autorização](https://docs.aws.amazon.com/apigateway/latest/developerguide/security_iam_id-based-policy-examples.html#security_iam_id-based-policy-examples-require-authorization) no *Guia do desenvolvedor do API Gateway*.

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

## Sintaxe
<a name="sam-resource-api-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-api-syntax.yaml"></a>

```
Type: AWS::Serverless::Api
Properties:
  [AccessLogSetting](#sam-api-accesslogsetting): [AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting)
  AlwaysDeploy: Boolean
  [ApiKeySourceType](#sam-api-apikeysourcetype): String
  [Auth](#sam-api-auth): ApiAuth
  [BinaryMediaTypes](#sam-api-binarymediatypes): List
  [CacheClusterEnabled](#sam-api-cacheclusterenabled): Boolean
  [CacheClusterSize](#sam-api-cacheclustersize): String
  [CanarySetting](#sam-api-canarysetting): [CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting)
  [Cors](#sam-api-cors): String | CorsConfiguration
  [DefinitionBody](#sam-api-definitionbody): JSON
  [DefinitionUri](#sam-api-definitionuri): String | ApiDefinition
  [Description](#sam-api-description): String
  [DisableExecuteApiEndpoint](#sam-api-disableexecuteapiendpoint): Boolean
  [Domain](#sam-api-domain): DomainConfiguration
  [EndpointConfiguration](#sam-api-endpointconfiguration): EndpointConfiguration
  [FailOnWarnings](#sam-api-failonwarnings): Boolean
  [GatewayResponses](#sam-api-gatewayresponses): Map
  MergeDefinitions: Boolean
  [MethodSettings](#sam-api-methodsettings): MethodSettings
  [MinimumCompressionSize](#sam-api-minimumcompressionsize): Integer
  [Mode](#sam-api-mode): String
  [Models](#sam-api-models): Map
  [Name](#sam-api-name): String
  [OpenApiVersion](#sam-api-openapiversion): String
  PropagateTags: Boolean
  [Policy](#sam-api-policy): JSON
  [StageName](#sam-api-stagename): String
  [Tags](#sam-api-tags): Map
  [TracingEnabled](#sam-api-tracingenabled): Boolean
  [Variables](#sam-api-variables): Map
```

## Propriedades
<a name="sam-resource-api-properties"></a>

 `AccessLogSetting`   <a name="sam-api-accesslogsetting"></a>
Configura a configuração do log de acesso para um estágio.  
*Digite*: [AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting)` propriedade de um `AWS::ApiGateway::Stage` recurso.

 `AlwaysDeploy`   <a name="sam-api-alwaysdeploy"></a>
Sempre implanta a API, mesmo quando nenhuma alteração na API foi detectada.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ApiKeySourceType`   <a name="sam-api-apikeysourcetype"></a>
A origem da chave de API para as solicitações de medição de acordo com um plano de uso. Os valores válidos são `HEADER` e `AUTHORIZER`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ApiKeySourceType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-apikeysourcetype)` propriedade de um `AWS::ApiGateway::RestApi` recurso.

 `Auth`   <a name="sam-api-auth"></a>
Configure a autorização para controlar o acesso à sua API API Gateway.  
Para obter mais informações sobre como configurar o acesso usando, AWS SAM consulte[Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md). Para ver um exemplo de como substituir um autorizador global, consulte [Substitua um autorizador global para sua API REST do Amazon API Gateway](sam-property-function-apifunctionauth.md#sam-property-function-apifunctionauth--examples--override).  
*Digite*: [ApiAuth](sam-property-api-apiauth.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `BinaryMediaTypes`   <a name="sam-api-binarymediatypes"></a>
Lista de tipos de MIME que sua API pode retornar. Use isso para ativar o suporte binário paraAPIs.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[BinaryMediaTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-binarymediatypes)` propriedade de um `AWS::ApiGateway::RestApi` recurso. A lista de BinaryMediaTypes é adicionada ao CloudFormation recurso e ao documento da OpenAPI.

 `CacheClusterEnabled`   <a name="sam-api-cacheclusterenabled"></a>
Indica se o cache está habilitado para o estágio. Para armazenar respostas em cache, você também deve definir `CachingEnabled` como `true` abaixo `MethodSettings`.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CacheClusterEnabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclusterenabled)` propriedade de um `AWS::ApiGateway::Stage` recurso.

 `CacheClusterSize`   <a name="sam-api-cacheclustersize"></a>
O tamanho do cluster de cache da etapa.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CacheClusterSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclustersize)` propriedade de um `AWS::ApiGateway::Stage` recurso.

 `CanarySetting`   <a name="sam-api-canarysetting"></a>
Configure uma configuração de canário para um estágio de uma implantação regular.  
*Digite*: [CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting)` propriedade de um `AWS::ApiGateway::Stage` recurso.

 `Cors`   <a name="sam-api-cors"></a>
Gerencie o compartilhamento de recursos de origem cruzada (CORS) para todo o seu API Gateway. APIs Especifique o domínio a ser permitido como uma string ou especifique um dicionário com configuração adicional do Cors.   
O CORS exige que AWS SAM você modifique sua definição de OpenAPI. Crie uma definição de OpenAPI em linha no `DefinitionBody` para ativar o CORS.
Para obter mais informações sobre o CORS, consulte [Habilitar o CORS para um recurso API REST para a API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) no *Guia do desenvolvedor do API Gateway*.  
*Tipo*: String \$1 [CorsConfiguration](sam-property-api-corsconfiguration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `DefinitionBody`   <a name="sam-api-definitionbody"></a>
Especificação OpenAPI que descreve sua API. Se o `DefinitionUri` nem o `DefinitionBody` for especificado, o SAM gerará um `DefinitionBody` para você com base na configuração do seu modelo.  
Para fazer referência a um arquivo OpenAPI local que define sua API, use a transformação `AWS::Include`. Para saber mais, consulte [Como AWS SAM carrega arquivos locais](deploy-upload-local-files.md).  
*Type*: JSON  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body)` propriedade de um `AWS::ApiGateway::RestApi` recurso. Se determinadas propriedades forem fornecidas, o conteúdo poderá ser inserido ou modificado no DefinitionBody antes de ser passado para CloudFormation. As propriedades incluem `Auth`, `BinaryMediaTypes`, `Cors`, `GatewayResponses`, `Models`, e um `EventSource` tipo API para um arquivo `AWS::Serverless::Function`.

 `DefinitionUri`   <a name="sam-api-definitionuri"></a>
Uri do Amazon S3, caminho de arquivo local ou objeto de localização do documento OpenAPI que define a API. O objeto do Amazon S3 a que essa propriedade faz referência deve ser um arquivo OpenAPI válido. Se o `DefinitionUri` nem o `DefinitionBody` for especificado, o SAM gerará um `DefinitionBody` para você com base na configuração do seu modelo.  
Se um caminho de arquivo local for fornecido, o modelo deverá passar pelo fluxo de trabalho que inclui o comando `sam deploy` ou `sam package` para que a definição seja transformada adequadamente.  
As funções intrínsecas não são suportadas em OpenApi arquivos externos referenciados por. `DefinitionUri` Em vez disso, use a `DefinitionBody` propriedade com a [Transformação Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) para importar uma OpenApi definição para o modelo.  
*Tipo*: String \$1 [ApiDefinition](sam-property-api-apidefinition.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[BodyS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location)` propriedade de um `AWS::ApiGateway::RestApi` recurso. As propriedades aninhadas do Amazon S3 têm nomes diferentes.

 `Description`   <a name="sam-api-description"></a>
Uma descrição do recurso da API.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-description)` propriedade de um `AWS::ApiGateway::RestApi` recurso.

 `DisableExecuteApiEndpoint`   <a name="sam-api-disableexecuteapiendpoint"></a>
Especifica se os clientes podem invocar sua API usando o endpoint `execute-api` padrão. Por padrão, os clientes podem invocar sua API com o padrão `https://{api_id}.execute-api.{region}.amazonaws.com`. Para exigir que os clientes usem um nome de domínio personalizado para invocar sua API, especifique `True`.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[ DisableExecuteApiEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-disableexecuteapiendpoint)` propriedade de um `AWS::ApiGateway::RestApi` recurso. Ele é passado diretamente para a propriedade `disableExecuteApiEndpoint` de uma extensão `[ x-amazon-apigateway-endpoint-configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html)`, que é adicionada à propriedade ` [ Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body)` de um recurso `AWS::ApiGateway::RestApi`.

 `Domain`   <a name="sam-api-domain"></a>
Configura um domínio personalizado para essa API do API Gateway.  
*Digite*: [DomainConfiguration](sam-property-api-domainconfiguration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `EndpointConfiguration`   <a name="sam-api-endpointconfiguration"></a>
O tipo de endpoint de uma API REST.  
*Digite*: [EndpointConfiguration](sam-property-api-endpointconfiguration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[EndpointConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration)` propriedade de um `AWS::ApiGateway::RestApi` recurso. As propriedades aninhadas de configuração têm nomes diferentes.

 `FailOnWarnings`   <a name="sam-api-failonwarnings"></a>
Especifica se deve reverter a criação da API (`true`) ou não (`false`) quando um aviso é encontrado. O valor padrão é `false`.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FailOnWarnings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-failonwarnings)` propriedade de um `AWS::ApiGateway::RestApi` recurso.

 `GatewayResponses`   <a name="sam-api-gatewayresponses"></a>
Configura as respostas do Gateway para uma API. As respostas do Gateway são respostas retornadas pelo API Gateway, diretamente ou por meio do uso de autorizadores do Lambda. Para obter mais informações, consulte a documentação da [ OpenApi extensão Api Gateway para respostas do Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.html).  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `MergeDefinitions`   <a name="sam-api-mergedefinitions"></a>
AWS SAM gera uma OpenAPI especificação da sua fonte de eventos de API. Especifique `true` para AWS SAM mesclar isso na OpenAPI especificação embutida definida em seu `AWS::Serverless::Api` recurso. Especifique `false` para não mesclar.  
O `MergeDefinitions` requer que `DefinitionBody` a propriedade `AWS::Serverless::Api` seja definida. O `MergeDefinitions` não é compatível com a propriedade `DefinitionUri` para `AWS::Serverless::Api`.  
*Valor padrão*: `false`  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `MethodSettings`   <a name="sam-api-methodsettings"></a>
Define todas as configurações para o estágio da API, incluindo Logging, Métricas, CacheTTL, controle de utilização.  
*Tipo*: lista de [ MethodSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-methodsetting.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MethodSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings)` propriedade de um `AWS::ApiGateway::Stage` recurso.

 `MinimumCompressionSize`   <a name="sam-api-minimumcompressionsize"></a>
Permita a compactação dos corpos de resposta com base no cabeçalho Accept-Encoding do cliente. A compressão é acionada quando o tamanho do corpo da resposta é maior ou igual ao limite configurado. O limite máximo de tamanho do corpo é de 10 MB (10.485.760 bytes). - Os seguintes tipos de compactação são suportados: gzip, deflate e identity.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MinimumCompressionSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-minimumcompressionsize)` propriedade de um `AWS::ApiGateway::RestApi` recurso.

 `Mode`   <a name="sam-api-mode"></a>
Essa propriedade se aplica somente quando você usa a OpenAPI para definir sua API REST. O `Mode` determina como o API Gateway trata atualizações de recursos. Para obter mais informações, consulte a propriedade [Mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode) do tipo de recurso [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html).  
*Valores válidos*: `overwrite` ou `merge`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode)` propriedade de um `AWS::ApiGateway::RestApi` recurso.

 `Models`   <a name="sam-api-models"></a>
Os esquemas a serem usados pelos seus métodos de API. Esses esquemas podem ser descritos usando JSON ou YAML. Consulte a seção Exemplos na parte inferior desta página para ver exemplos de modelos.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Name`   <a name="sam-api-name"></a>
Um nome para o RestApi recurso API Gateway  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-name)` propriedade de um `AWS::ApiGateway::RestApi` recurso.

 `OpenApiVersion`   <a name="sam-api-openapiversion"></a>
Versão do OpenApi para usar. Isso pode ser `2.0` para a especificação Swagger ou para uma das versões OpenApi 3.0, como. `3.0.1` Para obter mais informações sobre a OpenAPI, consulte a [Especificação da OpenAPI.](https://swagger.io/specification/)  
 AWS SAM cria um estágio chamado `Stage` por padrão. Definir essa propriedade com qualquer valor válido impedirá a criação do estágio `Stage`. 
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`PropagateTags`  <a name="sam-api-propagatetags"></a>
Indique se deseja ou não passar as tags da propriedade `Tags` para os recursos [AWS::Serverless::Api](sam-specification-generated-resources-api.md) gerados. Especifique `True` para propagar as tags nos recursos gerados.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `False`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`Policy`  <a name="sam-api-policy"></a>
Um documento de política que contenha as permissões para a API. Para definir o ARN da política, use a função intrínseca `!Join` com `""` como delimitador e valores de `"execute-api:/"` e `"*"`.  
*Type*: JSON  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a propriedade [Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-policy) de um `AWS::ApiGateway::RestApi` recurso.

 `StageName`   <a name="sam-api-stagename"></a>
O nome do estágio, que o API Gateway usa como o primeiro segmento de caminho no URI (Uniform Resource Identifier) invocado.  
Para referenciar o recurso do estágio, use `<api-logical-id>.Stage`. Para obter mais informações sobre como referenciar recursos gerados quando um recurso [AWS::Serverless::Api](#sam-resource-api) é especificado, consulte [CloudFormation recursos gerados quando AWS::Serverless::Api é especificado](sam-specification-generated-resources-api.md). Para obter informações gerais sobre CloudFormation os recursos gerados, consulte[CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[StageName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-stagename)` propriedade de um `AWS::ApiGateway::Stage` recurso. É obrigatório no SAM, mas não no API Gateway  
*Outras observações*: A API implícita tem o nome de estágio de “Prod”.

 `Tags`   <a name="sam-api-tags"></a>
Um mapa (string para string) que especifica as tags a serem adicionadas a esse estágio do API Gateway. Para obter detalhes sobre chaves e valores válidos para tags, consulte [Etiqueta de recurso](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) no *AWS CloudFormation Guia do usuário*.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tags)` propriedade de um `AWS::ApiGateway::Stage` recurso. A propriedade Tags no SAM consiste em pares de chave-valor; CloudFormation nela consiste em uma lista de objetos Tag.

 `TracingEnabled`   <a name="sam-api-tracingenabled"></a>
Indica se o rastreamento ativo com o X-Ray está habilitado para esse estágio. Para obter mais informações sobre o X-Ray, consulte [Rastreando solicitações de usuários para REST APIs usando o X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) no *Guia do desenvolvedor do API Gateway*.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TracingEnabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tracingenabled)` propriedade de um `AWS::ApiGateway::Stage` recurso.

 `Variables`   <a name="sam-api-variables"></a>
Um mapa (string para string) que define as variáveis de estágio, onde o nome da variável é a chave e o valor da variável é o valor. Os nomes de variáveis são limitadas a caracteres alfanuméricos. Os valores devem corresponder a expressão regular a seguir: `[A-Za-z0-9._~:/?#&=,-]+`.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Variables](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-variables)` propriedade de um `AWS::ApiGateway::Stage` recurso.

## Valores de retorno
<a name="sam-resource-api-return-values"></a>

### Ref.
<a name="sam-resource-api-return-values-ref"></a>

Quando o ID lógico desse recurso é fornecido para a `Ref` função intrínseca, retorna o ID da API API Gateway subjacente.

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no *Guia do usuário do AWS CloudFormation *. 

### Fã:: GetAtt
<a name="sam-resource-api-return-values-fn--getatt"></a>

`Fn::GetAtt` retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra. 

Para obter mais informações sobre o uso do `Fn::GetAtt`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) o *AWS CloudFormation Guia do usuário*. 

`RootResourceId`  <a name="RootResourceId-fn::getatt"></a>
O ID de um recurso raiz `RestApi`, como `a0bc123d4e`.

## Exemplos
<a name="sam-resource-api--examples"></a>

### SimpleApiExample
<a name="sam-resource-api--examples--simpleapiexample"></a>

Um arquivo de AWS SAM modelo Hello World que contém uma função Lambda com um endpoint de API. Este é um arquivo AWS SAM de modelo completo para um aplicativo sem servidor em funcionamento.

#### YAML
<a name="sam-resource-api--examples--simpleapiexample--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: AWS SAM template with a simple API definition
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: prod
  ApiFunction: # Adds a GET method at the root resource via an Api event
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: Api
          Properties:
            Path: /
            Method: get
            RestApiId:
              Ref: ApiGatewayApi
      Runtime: python3.10
      Handler: index.handler
      InlineCode: |
        def handler(event, context):
            return {'body': 'Hello World!', 'statusCode': 200}
```

### ApiCorsExample
<a name="sam-resource-api--examples--apicorsexample"></a>

Um trecho AWS SAM de modelo com uma API definida em um arquivo Swagger externo junto com as integrações do Lambda e as configurações do CORS. Essa é apenas uma parte de um arquivo de AWS SAM modelo que mostra uma [AWS::Serverless::Api](#sam-resource-api) definição.

#### YAML
<a name="sam-resource-api--examples--apicorsexample--yaml"></a>

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      # Allows www.example.com to call these APIs
      # SAM will automatically add AllowMethods with a list of methods for this API
      Cors: "'www.example.com'"
      DefinitionBody: # Pull in an OpenApi definition from S3
        'Fn::Transform':
          Name: 'AWS::Include'
          # Replace "bucket" with your bucket name
          Parameters:
            Location: s3://bucket/swagger.yaml
```

### ApiCognitoAuthExample
<a name="sam-resource-api--examples--apicognitoauthexample"></a>

Um trecho AWS SAM de modelo com uma API que usa o Amazon Cognito para autorizar solicitações contra a API. Essa é apenas uma parte de um arquivo de AWS SAM modelo que mostra uma [AWS::Serverless::Api](#sam-resource-api) definição.

#### YAML
<a name="sam-resource-api--examples--apicognitoauthexample--yaml"></a>

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Cors: "'*'"
      Auth:
        DefaultAuthorizer: MyCognitoAuthorizer
        Authorizers:
          MyCognitoAuthorizer:
            UserPoolArn:
              Fn::GetAtt: [MyCognitoUserPool, Arn]
```

### ApiModelsExample
<a name="sam-resource-api--examples--apimodelsexample"></a>

Um trecho de AWS SAM modelo com uma API que inclui um esquema de modelos. Essa é apenas uma parte de um arquivo de AWS SAM modelo, mostrando uma [AWS::Serverless::Api](#sam-resource-api) definição com dois esquemas de modelo.

#### YAML
<a name="sam-resource-api--examples--apimodelsexample--yaml"></a>

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Models:
        User:
          type: object
          required:
            - username
            - employee_id
          properties:
            username:
              type: string
            employee_id:
              type: integer
            department:
              type: string
        Item:
          type: object
          properties:
            count:
              type: integer
            category:
              type: string
            price:
              type: integer
```

### Exemplo de armazenamento em cache
<a name="sam-resource-api--examples--caching-example"></a>

Um arquivo de AWS SAM modelo Hello World que contém uma função Lambda com um endpoint de API. A API tem o armazenamento em cache ativado para um recurso e método. Para obter mais informações sobre armazenamento em cache, consulte [Habilitar o armazenamento em cache de APIs para melhorar a capacidade de resposta ](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) no *Guia do desenvolvedor do API Gateway*.

#### YAML
<a name="sam-resource-api--examples--caching-example--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: AWS SAM template with a simple API definition with caching turned on
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: prod
      CacheClusterEnabled: true
      CacheClusterSize: '0.5'
      MethodSettings:
        - ResourcePath: /
          HttpMethod: GET
          CachingEnabled: true
          CacheTtlInSeconds: 300
      Tags:
        CacheMethods: All 

  ApiFunction: # Adds a GET method at the root resource via an Api event
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: Api
          Properties:
            Path: /
            Method: get
            RestApiId:
              Ref: ApiGatewayApi
      Runtime: python3.10
      Handler: index.handler
      InlineCode: |
        def handler(event, context):
            return {'body': 'Hello World!', 'statusCode': 200}
```

### Domínio personalizado com um exemplo de API privada
<a name="sam-resource-api--examples--custom-domain-example"></a>

Um arquivo de AWS SAM modelo Hello World que contém uma função Lambda com um endpoint de API mapeado para um domínio privado. O modelo cria uma associação de acesso a domínio entre um endpoint da VPC e o domínio privado. Para obter mais informações, consulte [Nomes de domínio personalizados para uso privado APIs no API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-custom-domains.html).

#### YAML
<a name="sam-resource-api--examples--custom-domain-example--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: AWS SAM template configured with a custom domain using a private API

Parameters:
    DomainName:
      Type: String
      Default: mydomain.example.com
    CertificateArn:
      Type: String
    HostedZoneId:
      Type: String
    VpcEndpointId:
      Type: String
    VpcEndpointDomainName:
      Type: String
    VpcEndpointHostedZoneId:
      Type: String

Resources:
  MyFunction:
    Type: AWS::Serverless::Function
    Properties:
      InlineCode: |
        def handler(event, context):
            return {'body': 'Hello World!', 'statusCode': 200}
      Handler: index.handler
      Runtime: python3.13
      Events:
        Fetch:
          Type: Api
          Properties:
            RestApiId:
              Ref: MyApi
            Method: Get
            Path: /get
  MyApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      EndpointConfiguration:
        Type: PRIVATE
        VPCEndpointIds:
        - !Ref VpcEndpointId
      Policy:
        Version: '2012-10-17		 	 	 '
        Statement:
        - Effect: Allow
          Principal: '*'
          Action: execute-api:Invoke
          Resource: execute-api:/*
        - Effect: Deny
          Principal: '*'
          Action: execute-api:Invoke
          Resource: execute-api:/*
          Condition:
            StringNotEquals:
              aws:SourceVpce: !Ref VpcEndpointId
      Domain:
        DomainName: !Ref DomainName
        CertificateArn: !Ref CertificateArn
        EndpointConfiguration: PRIVATE
        BasePath:
        - /
        Route53:
          HostedZoneId: !Ref HostedZoneId
          VpcEndpointDomainName: !Ref VpcEndpointDomainName
          VpcEndpointHostedZoneId: !Ref VpcEndpointHostedZoneId
        AccessAssociation:
          VpcEndpointId: !Ref VpcEndpointId
        Policy:
          Version: '2012-10-17		 	 	 '
          Statement:
          - Effect: Allow
            Principal: '*'
            Action: execute-api:Invoke
            Resource: execute-api:/*
          - Effect: Deny
            Principal: '*'
            Action: execute-api:Invoke
            Resource: execute-api:/*
            Condition:
              StringNotEquals:
                aws:SourceVpce: !Ref VpcEndpointId
```

# ApiAuth
<a name="sam-property-api-apiauth"></a>

Configure a autorização para controlar o acesso à sua API API Gateway.

Para obter mais informações e exemplos para configurar o acesso usando, AWS SAM consulte[Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).

## Sintaxe
<a name="sam-property-api-apiauth-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-apiauth-syntax.yaml"></a>

```
  AddApiKeyRequiredToCorsPreflight: Boolean
  [AddDefaultAuthorizerToCorsPreflight](#sam-api-apiauth-adddefaultauthorizertocorspreflight): Boolean
  [ApiKeyRequired](#sam-api-apiauth-apikeyrequired): Boolean
  [Authorizers](#sam-api-apiauth-authorizers): CognitoAuthorizer | LambdaTokenAuthorizer | LambdaRequestAuthorizer | AWS_IAM
  [DefaultAuthorizer](#sam-api-apiauth-defaultauthorizer): String
  [InvokeRole](#sam-api-apiauth-invokerole): String
  [ResourcePolicy](#sam-api-apiauth-resourcepolicy): ResourcePolicyStatement
  [UsagePlan](#sam-api-apiauth-usageplan): ApiUsagePlan
```

**nota**  
A propriedade `Authorizers` inclui o `AWS_IAM`, mas não é necessária nenhuma configuração extra do `AWS_IAM`. Para ver um exemplo, consulte [AWS IAM](#sam-property-api-apiauth--examples--aws_iam).

## Propriedades
<a name="sam-property-api-apiauth-properties"></a>

 `AddApiKeyRequiredToCorsPreflight`   <a name="sam-api-apiauth-addapikeyrequiredtocorspreflight"></a>
Se as propriedades `ApiKeyRequired` e `Cors` estiverem definidas, a configuração `AddApiKeyRequiredToCorsPreflight` fará com que a chave de API seja adicionada à propriedade `Options`.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `True`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AddDefaultAuthorizerToCorsPreflight`   <a name="sam-api-apiauth-adddefaultauthorizertocorspreflight"></a>
Se as propriedades `DefaultAuthorizer` e `Cors` estiverem definidas, a configuração `AddDefaultAuthorizerToCorsPreflight` fará com que o autorizador padrão seja adicionado à propriedade `Options` na seção OpenAPI.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: verdadeiro  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ApiKeyRequired`   <a name="sam-api-apiauth-apikeyrequired"></a>
Se definido como verdadeiro, uma chave de API é necessária para todos os eventos da API. Para obter mais informações sobre chaves de API, consulte [Criar e usar planos de uso com chaves de API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) no *Guia do desenvolvedor do Gateway da API*.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Authorizers`   <a name="sam-api-apiauth-authorizers"></a>
O autorizador usado para controlar o acesso à sua API do API Gateway.  
Para obter mais informações, consulte [Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).  
*Tipo*: [CognitoAuthorizer](sam-property-api-cognitoauthorizer.md)\$1 [LambdaTokenAuthorizer](sam-property-api-lambdatokenauthorizer.md)\$1 [LambdaRequestAuthorizer](sam-property-api-lambdarequestauthorizer.md)\$1 AWS\$1IAM  
*Obrigatório*: não  
*Padrão*: nenhum  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Notas adicionais*: O SAM adiciona os Autorizadores à OpenApi definição de uma Api.

 `DefaultAuthorizer`   <a name="sam-api-apiauth-defaultauthorizer"></a>
Especifique um autorizador padrão para uma API do API Gateway, que será usada para autorizar chamadas de API por padrão.  
Se a API EventSource da função associada a essa API estiver configurada para usar permissões do IAM, essa propriedade deverá ser definida como`AWS_IAM`, caso contrário, ocorrerá um erro.
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: nenhum  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `InvokeRole`   <a name="sam-api-apiauth-invokerole"></a>
Define as credenciais de integração para todos os recursos e métodos com esse valor.  
`CALLER_CREDENTIALS`mapeia para `arn:aws:iam:::<user>/`, que usa as credenciais do chamador para invocar o endpoint.  
*Valores válidos*: `CALLER_CREDENTIALS`, `NONE`, `IAMRoleArn`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `CALLER_CREDENTIALS`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ResourcePolicy`   <a name="sam-api-apiauth-resourcepolicy"></a>
Configure a política de recursos para todos os métodos e caminhos em uma API.  
*Digite*: [ResourcePolicyStatement](sam-property-api-resourcepolicystatement.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Notas adicionais*: Essa configuração também pode ser definida individualmente `AWS::Serverless::Function` usando [ApiFunctionAuth](sam-property-function-apifunctionauth.md). Isso é necessário para APIs com`EndpointConfiguration: PRIVATE`.

 `UsagePlan`   <a name="sam-api-apiauth-usageplan"></a>
Configura um plano de uso associado a essa API. Para obter mais informações sobre planos de uso, consulte [Criar e usar planos de uso com chaves de API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) no *Guia do desenvolvedor do API Gateway*.  
Essa AWS SAM propriedade gera três CloudFormation recursos adicionais quando essa propriedade é definida: an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), an e an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html). Para obter informações sobre esse cenário, consulte [UsagePlan propriedade é especificada](sam-specification-generated-resources-api.md#sam-specification-generated-resources-api-usage-plan). Para obter informações gerais sobre CloudFormation os recursos gerados, consulte[CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).  
*Digite*: [ApiUsagePlan](sam-property-api-apiusageplan.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-apiauth--examples"></a>

### CognitoAuth
<a name="sam-property-api-apiauth--examples--cognitoauth"></a>

Exemplo de autenticação do Cognito

#### YAML
<a name="sam-property-api-apiauth--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers:
    MyCognitoAuth:
     UserPoolArn:
       Fn::GetAtt:
         - MyUserPool
         - Arn
     AuthType: "COGNITO_USER_POOLS"
  DefaultAuthorizer: MyCognitoAuth
  InvokeRole: CALLER_CREDENTIALS
  AddDefaultAuthorizerToCorsPreflight: false
  ApiKeyRequired: false
  ResourcePolicy:
    CustomStatements: [{
      "Effect": "Allow",
      "Principal": "*",
      "Action": "execute-api:Invoke",
      "Resource": "execute-api:/Prod/GET/pets",
      "Condition": {
          "IpAddress": {
              "aws:SourceIp": "1.2.3.4"
          }
        }
    }]
    IpRangeDenylist:
      - "10.20.30.40"
```

### AWS IAM
<a name="sam-property-api-apiauth--examples--aws_iam"></a>

AWS Exemplo de IAM

#### YAML
<a name="sam-property-api-apiauth--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers: AWS_IAM
```

# ApiUsagePlan
<a name="sam-property-api-apiusageplan"></a>

Configura um plano de uso para uma API do API Gateway. Para obter mais informações sobre planos de uso, consulte [Criar e usar planos de uso com chaves de API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) no *Guia do desenvolvedor do Gateway da API*.

## Sintaxe
<a name="sam-property-api-apiusageplan-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-apiusageplan-syntax.yaml"></a>

```
  [CreateUsagePlan](#sam-api-apiusageplan-createusageplan): String
  [Description](#sam-api-apiusageplan-description): String
  [Quota](#sam-api-apiusageplan-quota): [QuotaSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)
  [Tags](#sam-api-apiusageplan-tags): List
  [Throttle](#sam-api-apiusageplan-throttle): [ThrottleSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)
  [UsagePlanName](#sam-api-apiusageplan-usageplanname): String
```

## Propriedades
<a name="sam-property-api-apiusageplan-properties"></a>

 `CreateUsagePlan`   <a name="sam-api-apiusageplan-createusageplan"></a>
Determina como esse plano de uso é configurado. Os valores válidos são `PER_API`, `SHARED` e `NONE`.  
`PER_API` cria recursos [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html) e [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html) que são específicos para essa API. Esses recursos têm lógica IDs de`<api-logical-id>UsagePlan`,`<api-logical-id>ApiKey`, e`<api-logical-id>UsagePlanKey`, respectivamente.  
`SHARED`cria [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), e [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)recursos que são compartilhados em qualquer API que também tenha `CreateUsagePlan: SHARED` o mesmo AWS SAM modelo. Esses recursos têm lógica IDs de`ServerlessUsagePlan`,`ServerlessApiKey`, e`ServerlessUsagePlanKey`, respectivamente. Se você usar essa opção, recomendamos adicionar configurações adicionais para esse plano de uso em apenas um recurso de API para evitar definições conflitantes e um estado incerto.  
`NONE` desativa a criação ou associação de um plano de uso com essa API. Isso só é necessário se `SHARED` ou `PER_API` estiver especificado no [Seção Global do modelo AWS SAM](sam-specification-template-anatomy-globals.md).  
*Valores válidos*: `PER_API`, `SHARED` e `NONE`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Description`   <a name="sam-api-apiusageplan-description"></a>
Uma descrição do plano de uso.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-description)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

 `Quota`   <a name="sam-api-apiusageplan-quota"></a>
Configura o número de solicitações que os usuários podem fazer em um determinado intervalo.  
*Digite*: [QuotaSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Quota](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

 `Tags`   <a name="sam-api-apiusageplan-tags"></a>
Uma matriz de tags arbitrárias (pares de chave-valor) a ser associada ao plano de uso.  
Essa propriedade usa o [Tipo de CloudFormation Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-tags)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

 `Throttle`   <a name="sam-api-apiusageplan-throttle"></a>
Configura a taxa de solicitações geral (média de solicitações por segundo) e capacidade de intermitência.  
*Digite*: [ThrottleSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Throttle](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

 `UsagePlanName`   <a name="sam-api-apiusageplan-usageplanname"></a>
Um nome para o plano de uso.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[UsagePlanName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-usageplanname)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

## Exemplos
<a name="sam-property-api-apiusageplan--examples"></a>

### UsagePlan
<a name="sam-property-api-apiusageplan--examples--usageplan"></a>

Veja a seguir um exemplo de plano de uso.

#### YAML
<a name="sam-property-api-apiusageplan--examples--usageplan--yaml"></a>

```
Auth:
  UsagePlan:
    CreateUsagePlan: PER_API
    Description: Usage plan for this API
    Quota:
      Limit: 500
      Period: MONTH
    Throttle:
      BurstLimit: 100
      RateLimit: 50
    Tags:
      - Key: TagName
        Value: TagValue
```

# CognitoAuthorizer
<a name="sam-property-api-cognitoauthorizer"></a>

Defina um autorizador do grupo de usuários do Amazon Cognito.

Para ter mais informações e exemplos, consulte [Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).

## Sintaxe
<a name="sam-property-api-cognitoauthorizer-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-cognitoauthorizer-syntax.yaml"></a>

```
  [AuthorizationScopes](#sam-api-cognitoauthorizer-authorizationscopes): List
  [Identity](#sam-api-cognitoauthorizer-identity): CognitoAuthorizationIdentity
  [UserPoolArn](#sam-api-cognitoauthorizer-userpoolarn): String
```

## Propriedades
<a name="sam-property-api-cognitoauthorizer-properties"></a>

 `AuthorizationScopes`   <a name="sam-api-cognitoauthorizer-authorizationscopes"></a>
Lista de escopos de autorização para esse autorizador.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Identity`   <a name="sam-api-cognitoauthorizer-identity"></a>
Esta propriedade pode ser usada para especificar um `IdentitySource` em uma solicitação recebida para um autorizador.  
*Digite*: [CognitoAuthorizationIdentity](sam-property-api-cognitoauthorizationidentity.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `UserPoolArn`   <a name="sam-api-cognitoauthorizer-userpoolarn"></a>
Pode se referir a um usuário a pool/specify um grupo de usuários (arn) ao qual você deseja adicionar este autorizador cognito.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-cognitoauthorizer--examples"></a>

### CognitoAuth
<a name="sam-property-api-cognitoauthorizer--examples--cognitoauth"></a>

Exemplo de Autenticação Cognito

#### YAML
<a name="sam-property-api-cognitoauthorizer--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers:
    MyCognitoAuth:
      AuthorizationScopes:
        - scope1
        - scope2
      UserPoolArn:
        Fn::GetAtt:
          - MyCognitoUserPool
          - Arn
      Identity:
        Header: MyAuthorizationHeader
        ValidationExpression: myauthvalidationexpression
```

# CognitoAuthorizationIdentity
<a name="sam-property-api-cognitoauthorizationidentity"></a>

Essa propriedade pode ser usada para especificar um IdentitySource em uma solicitação recebida para um autorizador. Para obter mais informações, IdentitySource consulte a [ OpenApi extensão ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaxe
<a name="sam-property-api-cognitoauthorizationidentity-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-cognitoauthorizationidentity-syntax.yaml"></a>

```
  [Header](#sam-api-cognitoauthorizationidentity-header): String
  [ReauthorizeEvery](#sam-api-cognitoauthorizationidentity-reauthorizeevery): Integer
  [ValidationExpression](#sam-api-cognitoauthorizationidentity-validationexpression): String
```

## Propriedades
<a name="sam-property-api-cognitoauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-cognitoauthorizationidentity-header"></a>
Especifique o nome do cabeçalho para Autorização na OpenApi definição.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: Autorização  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ReauthorizeEvery`   <a name="sam-api-cognitoauthorizationidentity-reauthorizeevery"></a>
O período time-to-live (TTL), em segundos, que especifica por quanto tempo o API Gateway armazena em cache os resultados do autorizador. Se você especificar um valor maior que 0, o API Gateway armazenará em cache as respostas do autorizador. Por padrão, o API Gateway define essa propriedade como 300. O valor máximo é 3600, ou uma hora.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 300  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ValidationExpression`   <a name="sam-api-cognitoauthorizationidentity-validationexpression"></a>
Especifique uma expressão de validação para validar a identidade recebida  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-cognitoauthorizationidentity--examples"></a>

### CognitoAuthIdentity
<a name="sam-property-api-cognitoauthorizationidentity--examples--cognitoauthidentity"></a>

#### YAML
<a name="sam-property-api-cognitoauthorizationidentity--examples--cognitoauthidentity--yaml"></a>

```
Identity:
  Header: MyCustomAuthHeader
  ValidationExpression: Bearer.*
  ReauthorizeEvery: 30
```

# LambdaRequestAuthorizer
<a name="sam-property-api-lambdarequestauthorizer"></a>

Configure um autorizador do Lambda para controlar o acesso à sua API com uma função do Lambda.

Para ter mais informações e exemplos, consulte [Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).

## Sintaxe
<a name="sam-property-api-lambdarequestauthorizer-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-lambdarequestauthorizer-syntax.yaml"></a>

```
DisableFunctionDefaultPermissions: Boolean
[FunctionArn](#sam-api-lambdarequestauthorizer-functionarn): String
[FunctionInvokeRole](#sam-api-lambdarequestauthorizer-functioninvokerole): String
[FunctionPayloadType](#sam-api-lambdarequestauthorizer-functionpayloadtype): String
[Identity](#sam-api-lambdarequestauthorizer-identity): LambdaRequestAuthorizationIdentity
```

## Propriedades
<a name="sam-property-api-lambdarequestauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdarequestauthorizer-disablefunctiondefaultpermissions"></a>
Especifique `true` para evitar a criação automática AWS SAM de um `AWS::Lambda::Permissions` recurso para provisionar permissões entre seu `AWS::Serverless::Api` recurso e a função Lambda do autorizador.  
*Valor padrão*: `false`  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionArn`   <a name="sam-api-lambdarequestauthorizer-functionarn"></a>
Especifique a função ARN da função do Lambda que fornece autorização para a API.  
AWS SAM criará automaticamente um `AWS::Lambda::Permissions` recurso quando `FunctionArn` for especificado para`AWS::Serverless::Api`. O recurso `AWS::Lambda::Permissions` fornece permissões entre sua API e a função do Lambda do autorizador.
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionInvokeRole`   <a name="sam-api-lambdarequestauthorizer-functioninvokerole"></a>
Adiciona credenciais do autorizador à OpenApi definição do autorizador Lambda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionPayloadType`   <a name="sam-api-lambdarequestauthorizer-functionpayloadtype"></a>
Esta propriedade pode ser usada para definir o tipo de autorizador do Lambda para uma API.  
*Valores válidos*: `TOKEN` ou `REQUEST`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `TOKEN`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Identity`   <a name="sam-api-lambdarequestauthorizer-identity"></a>
Esta propriedade pode ser usada para especificar um `IdentitySource` em uma solicitação recebida para um autorizador. Essa propriedade só é necessária se a propriedade do `FunctionPayloadType` estiver definida como `REQUEST`.  
*Digite*: [LambdaRequestAuthorizationIdentity](sam-property-api-lambdarequestauthorizationidentity.md)  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-lambdarequestauthorizer--examples"></a>

### LambdaRequestAuth
<a name="sam-property-api-lambdarequestauthorizer--examples--lambdarequestauth"></a>

#### YAML
<a name="sam-property-api-lambdarequestauthorizer--examples--lambdarequestauth--yaml"></a>

```
Authorizers:
  MyLambdaRequestAuth:
    FunctionPayloadType: REQUEST
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
    FunctionInvokeRole:
      Fn::GetAtt:
        - LambdaAuthInvokeRole
        - Arn
    Identity:
      Headers:
        - Authorization1
```

# LambdaRequestAuthorizationIdentity
<a name="sam-property-api-lambdarequestauthorizationidentity"></a>

Essa propriedade pode ser usada para especificar um IdentitySource em uma solicitação recebida para um autorizador. Para obter mais informações, IdentitySource consulte a [ OpenApi extensão ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaxe
<a name="sam-property-api-lambdarequestauthorizationidentity-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-lambdarequestauthorizationidentity-syntax.yaml"></a>

```
  [Context](#sam-api-lambdarequestauthorizationidentity-context): List
  [Headers](#sam-api-lambdarequestauthorizationidentity-headers): List
  [QueryStrings](#sam-api-lambdarequestauthorizationidentity-querystrings): List
  [ReauthorizeEvery](#sam-api-lambdarequestauthorizationidentity-reauthorizeevery): Integer
  [StageVariables](#sam-api-lambdarequestauthorizationidentity-stagevariables): List
```

## Propriedades
<a name="sam-property-api-lambdarequestauthorizationidentity-properties"></a>

 `Context`   <a name="sam-api-lambdarequestauthorizationidentity-context"></a>
Converte as cadeias de caracteres de contexto fornecidas nas expressões de mapeamento do formato `context.contextString`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Headers`   <a name="sam-api-lambdarequestauthorizationidentity-headers"></a>
Converte os cabeçalhos em uma sequência separada por vírgula de expressões de mapeamento de formato `method.request.header.name`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `QueryStrings`   <a name="sam-api-lambdarequestauthorizationidentity-querystrings"></a>
Converte as cadeias de caracteres de consulta fornecidas em uma sequência separada por vírgula de expressões de mapeamento de formato `method.request.querystring.queryString`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ReauthorizeEvery`   <a name="sam-api-lambdarequestauthorizationidentity-reauthorizeevery"></a>
O período time-to-live (TTL), em segundos, que especifica por quanto tempo o API Gateway armazena em cache os resultados do autorizador. Se você especificar um valor maior que 0, o API Gateway armazenará em cache as respostas do autorizador. Por padrão, o API Gateway define essa propriedade como 300. O valor máximo é 3600, ou uma hora.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 300  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `StageVariables`   <a name="sam-api-lambdarequestauthorizationidentity-stagevariables"></a>
Converte as variáveis de estágio fornecidas em uma string separada por vírgula de expressões de mapeamento de formato `stageVariables.stageVariable`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-lambdarequestauthorizationidentity--examples"></a>

### LambdaRequestIdentity
<a name="sam-property-api-lambdarequestauthorizationidentity--examples--lambdarequestidentity"></a>

#### YAML
<a name="sam-property-api-lambdarequestauthorizationidentity--examples--lambdarequestidentity--yaml"></a>

```
Identity:
  QueryStrings:
    - auth
  Headers:
    - Authorization
  StageVariables:
    - VARIABLE
  Context:
    - authcontext
  ReauthorizeEvery: 100
```

# LambdaTokenAuthorizer
<a name="sam-property-api-lambdatokenauthorizer"></a>

Configure um autorizador do Lambda para controlar o acesso à sua API com uma função do Lambda.

Para ter mais informações e exemplos, consulte [Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).

## Sintaxe
<a name="sam-property-api-lambdatokenauthorizer-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-lambdatokenauthorizer-syntax.yaml"></a>

```
DisableFunctionDefaultPermissions: Boolean
[FunctionArn](#sam-api-lambdatokenauthorizer-functionarn): String
[FunctionInvokeRole](#sam-api-lambdatokenauthorizer-functioninvokerole): String
[FunctionPayloadType](#sam-api-lambdatokenauthorizer-functionpayloadtype): String
[Identity](#sam-api-lambdatokenauthorizer-identity): LambdaTokenAuthorizationIdentity
```

## Propriedades
<a name="sam-property-api-lambdatokenauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdatokenauthorizer-disablefunctiondefaultpermissions"></a>
Especifique `true` para evitar a criação automática AWS SAM de um `AWS::Lambda::Permissions` recurso para provisionar permissões entre seu `AWS::Serverless::Api` recurso e a função Lambda do autorizador.  
*Valor padrão*: `false`  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionArn`   <a name="sam-api-lambdatokenauthorizer-functionarn"></a>
Especifique a função ARN da função do Lambda que fornece autorização para a API.  
AWS SAM criará automaticamente um `AWS::Lambda::Permissions` recurso quando `FunctionArn` for especificado para`AWS::Serverless::Api`. O recurso `AWS::Lambda::Permissions` fornece permissões entre sua API e a função do Lambda do autorizador.
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionInvokeRole`   <a name="sam-api-lambdatokenauthorizer-functioninvokerole"></a>
Adiciona credenciais do autorizador à OpenApi definição do autorizador Lambda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionPayloadType`   <a name="sam-api-lambdatokenauthorizer-functionpayloadtype"></a>
Esta propriedade pode ser usada para definir o tipo de autorizador do Lambda para uma Api.  
*Valores válidos*: `TOKEN` ou `REQUEST`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `TOKEN`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Identity`   <a name="sam-api-lambdatokenauthorizer-identity"></a>
Esta propriedade pode ser usada para especificar um `IdentitySource` em uma solicitação recebida para um autorizador. Essa propriedade só é necessária se a propriedade do `FunctionPayloadType` estiver definida como `REQUEST`.  
*Digite*: [LambdaTokenAuthorizationIdentity](sam-property-api-lambdatokenauthorizationidentity.md)  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-lambdatokenauthorizer--examples"></a>

### LambdaTokenAuth
<a name="sam-property-api-lambdatokenauthorizer--examples--lambdatokenauth"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizer--examples--lambdatokenauth--yaml"></a>

```
Authorizers:
  MyLambdaTokenAuth:
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
    Identity:
      Header: MyCustomAuthHeader # OPTIONAL; Default: 'Authorization'
      ValidationExpression: mycustomauthexpression # OPTIONAL
      ReauthorizeEvery: 20 # OPTIONAL; Service Default: 300
```

### BasicLambdaTokenAuth
<a name="sam-property-api-lambdatokenauthorizer--examples--basiclambdatokenauth"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizer--examples--basiclambdatokenauth--yaml"></a>

```
Authorizers:
  MyLambdaTokenAuth:
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
```

# LambdaTokenAuthorizationIdentity
<a name="sam-property-api-lambdatokenauthorizationidentity"></a>

Essa propriedade pode ser usada para especificar um IdentitySource em uma solicitação recebida para um autorizador. Para obter mais informações, IdentitySource consulte a [ OpenApi extensão ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaxe
<a name="sam-property-api-lambdatokenauthorizationidentity-syntax"></a>

 Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir. 

### YAML
<a name="sam-property-api-lambdatokenauthorizationidentity-syntax.yaml"></a>

```
  [Header](#sam-api-lambdatokenauthorizationidentity-header): String
  [ReauthorizeEvery](#sam-api-lambdatokenauthorizationidentity-reauthorizeevery): Integer
  [ValidationExpression](#sam-api-lambdatokenauthorizationidentity-validationexpression): String
```

## Propriedades
<a name="sam-property-api-lambdatokenauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-lambdatokenauthorizationidentity-header"></a>
Especifique o nome do cabeçalho para Autorização na OpenApi definição.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: Autorização  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ReauthorizeEvery`   <a name="sam-api-lambdatokenauthorizationidentity-reauthorizeevery"></a>
O período time-to-live (TTL), em segundos, que especifica por quanto tempo o API Gateway armazena em cache os resultados do autorizador. Se você especificar um valor maior que 0, o API Gateway armazenará em cache as respostas do autorizador. Por padrão, o API Gateway define essa propriedade como 300. O valor máximo é 3600, ou uma hora.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 300  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ValidationExpression`   <a name="sam-api-lambdatokenauthorizationidentity-validationexpression"></a>
Especifique uma expressão de validação para validar a identidade recebida.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-lambdatokenauthorizationidentity--examples"></a>

### LambdaTokenIdentity
<a name="sam-property-api-lambdatokenauthorizationidentity--examples--lambdatokenidentity"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizationidentity--examples--lambdatokenidentity--yaml"></a>

```
Identity:
  Header: MyCustomAuthHeader
  ValidationExpression: Bearer.*
  ReauthorizeEvery: 30
```

# ResourcePolicyStatement
<a name="sam-property-api-resourcepolicystatement"></a>

Configura uma política de recursos para todos os métodos e caminhos de uma API. Para obter mais informações sobre políticas de recursos, consulte Como [controlar o acesso a uma API com as políticas de recursos do API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies.html) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-api-resourcepolicystatement-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-resourcepolicystatement-syntax.yaml"></a>

```
  [AwsAccountBlacklist](#sam-api-resourcepolicystatement-awsaccountblacklist): List
  [AwsAccountWhitelist](#sam-api-resourcepolicystatement-awsaccountwhitelist): List
  [CustomStatements](#sam-api-resourcepolicystatement-customstatements): List
  [IntrinsicVpcBlacklist](#sam-api-resourcepolicystatement-intrinsicvpcblacklist): List
  [IntrinsicVpcWhitelist](#sam-api-resourcepolicystatement-intrinsicvpcwhitelist): List
  [IntrinsicVpceBlacklist](#sam-api-resourcepolicystatement-intrinsicvpceblacklist): List
  [IntrinsicVpceWhitelist](#sam-api-resourcepolicystatement-intrinsicvpcewhitelist): List
  [IpRangeBlacklist](#sam-api-resourcepolicystatement-iprangeblacklist): List
  [IpRangeWhitelist](#sam-api-resourcepolicystatement-iprangewhitelist): List
  [SourceVpcBlacklist](#sam-api-resourcepolicystatement-sourcevpcblacklist): List
  [SourceVpcWhitelist](#sam-api-resourcepolicystatement-sourcevpcwhitelist): List
```

## Propriedades
<a name="sam-property-api-resourcepolicystatement-properties"></a>

 `AwsAccountBlacklist`   <a name="sam-api-resourcepolicystatement-awsaccountblacklist"></a>
As AWS contas a serem bloqueadas.  
*Tipo*: lista de strings  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AwsAccountWhitelist`   <a name="sam-api-resourcepolicystatement-awsaccountwhitelist"></a>
As AWS contas a serem permitidas. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista de strings  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `CustomStatements`   <a name="sam-api-resourcepolicystatement-customstatements"></a>
Uma lista de declarações de política de recursos personalizadas a serem aplicadas a essa API. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpcBlacklist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcblacklist"></a>
A lista de nuvens privadas virtuais (VPCs) a serem bloqueadas, em que cada VPC é especificada como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a função `Ref` [intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpcWhitelist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcwhitelist"></a>
A lista de VPCs permissões, em que cada VPC é especificada como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a função `Ref` [intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpceBlacklist`   <a name="sam-api-resourcepolicystatement-intrinsicvpceblacklist"></a>
A lista de endpoints da VPC a serem bloqueados, em que cada endpoint da VPC é especificado como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a `Ref` [função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpceWhitelist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcewhitelist"></a>
A lista de endpoints da VPC a serem permitidos, em que cada endpoint da VPC é especificado como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a `Ref` [função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IpRangeBlacklist`   <a name="sam-api-resourcepolicystatement-iprangeblacklist"></a>
Os endereços IP ou intervalos de endereços a serem bloqueados. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IpRangeWhitelist`   <a name="sam-api-resourcepolicystatement-iprangewhitelist"></a>
Os endereços IP ou intervalos de endereços a serem permitidos.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceVpcBlacklist`   <a name="sam-api-resourcepolicystatement-sourcevpcblacklist"></a>
A VPC de origem ou os endpoints da VPC a serem bloqueados. Os nomes da VPC de origem devem começar com `"vpc-"` e os nomes dos endpoints da VPC de origem devem começar com `"vpce-"`. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceVpcWhitelist`   <a name="sam-api-resourcepolicystatement-sourcevpcwhitelist"></a>
A VPC de origem ou os endpoints da VPC a serem permitidos. Os nomes da VPC de origem devem começar com `"vpc-"` e os nomes dos endpoints da VPC de origem devem começar com `"vpce-"`.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-resourcepolicystatement--examples"></a>

### Exemplo de política de recursos
<a name="sam-property-api-resourcepolicystatement--examples--resource-policy-example"></a>

O exemplo a seguir bloqueia dois endereços IP e uma VPC de origem e permite uma AWS conta.

#### YAML
<a name="sam-property-api-resourcepolicystatement--examples--resource-policy-example--yaml"></a>

```
Auth:
  ResourcePolicy:
    CustomStatements: [{
                         "Effect": "Allow",
                         "Principal": "*",
                         "Action": "execute-api:Invoke",
                         "Resource": "execute-api:/Prod/GET/pets",
                         "Condition": {
                           "IpAddress": {
                             "aws:SourceIp": "1.2.3.4"
                           }
                         }
                       }]
    IpRangeBlacklist:
      - "10.20.30.40"
      - "1.2.3.4"
    SourceVpcBlacklist:
      - "vpce-1a2b3c4d"
    AwsAccountWhitelist:
      - "111122223333"
    IntrinsicVpcBlacklist:
      - "{{resolve:ssm:SomeVPCReference:1}}" 
      - !Ref MyVPC
    IntrinsicVpceWhitelist:
      - "{{resolve:ssm:SomeVPCEReference:1}}" 
      - !Ref MyVPCE
```

# ApiDefinition
<a name="sam-property-api-apidefinition"></a>

Um documento da OpenAPI que define a API.

## Sintaxe
<a name="sam-property-api-apidefinition-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-apidefinition-syntax.yaml"></a>

```
  [Bucket](#sam-api-apidefinition-bucket): String
  [Key](#sam-api-apidefinition-key): String
  [Version](#sam-api-apidefinition-version): String
```

## Propriedades
<a name="sam-property-api-apidefinition-properties"></a>

 `Bucket`   <a name="sam-api-apidefinition-bucket"></a>
O nome do bucket do Amazon S3 no qual o arquivo do OpenAPI está armazenado.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-bucket)` propriedade do tipo de `AWS::ApiGateway::RestApi` `S3Location` dados.

 `Key`   <a name="sam-api-apidefinition-key"></a>
A chave do Amazon S3 do arquivo OpenAPI.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Key](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-key)` propriedade do tipo de `AWS::ApiGateway::RestApi` `S3Location` dados.

 `Version`   <a name="sam-api-apidefinition-version"></a>
Para objetos com controle de versão, a versão do arquivo OpenAPI.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Version](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-version)` propriedade do tipo de `AWS::ApiGateway::RestApi` `S3Location` dados.

## Exemplos
<a name="sam-property-api-apidefinition--examples"></a>

### Exemplo de definição de Uri
<a name="sam-property-api-apidefinition--examples--definition-uri-example"></a>

Exemplo de definição de API

#### YAML
<a name="sam-property-api-apidefinition--examples--definition-uri-example--yaml"></a>

```
DefinitionUri:
  Bucket: amzn-s3-demo-bucket-name
  Key: mykey-name
  Version: 121212
```

# CorsConfiguration
<a name="sam-property-api-corsconfiguration"></a>

Gerencie o compartilhamento de recursos de origem cruzada (CORS) para seu API Gateway. APIs Especifique o domínio a ser permitido como uma string ou especifique um dicionário com configuração adicional do Cors.

**nota**  
O CORS exige que AWS SAM você modifique sua definição de OpenAPI. Crie uma definição de OpenAPI em linha no `DefinitionBody` para ativar o CORS. Se `CorsConfiguration` for definido na definição da OpenAPI e também no nível da propriedade, AWS SAM mescla-os. O nível da propriedade tem precedência sobre a definição de OpenAPI.

Para obter mais informações sobre o CORS, consulte [Habilitar o CORS para um recurso API REST para a API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-api-corsconfiguration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-corsconfiguration-syntax.yaml"></a>

```
  [AllowCredentials](#sam-api-corsconfiguration-allowcredentials): Boolean
  [AllowHeaders](#sam-api-corsconfiguration-allowheaders): String
  [AllowMethods](#sam-api-corsconfiguration-allowmethods): String
  [AllowOrigin](#sam-api-corsconfiguration-alloworigin): String
  [MaxAge](#sam-api-corsconfiguration-maxage): String
```

## Propriedades
<a name="sam-property-api-corsconfiguration-properties"></a>

 `AllowCredentials`   <a name="sam-api-corsconfiguration-allowcredentials"></a>
Booleano indicando se a solicitação pode conter credenciais.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AllowHeaders`   <a name="sam-api-corsconfiguration-allowheaders"></a>
Cadeia de cabeçalhos a serem permitidos.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AllowMethods`   <a name="sam-api-corsconfiguration-allowmethods"></a>
Cadeia de caracteres contendo os métodos HTTP a serem permitidos.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AllowOrigin`   <a name="sam-api-corsconfiguration-alloworigin"></a>
Cadeia de origem a ser permitida. Pode ser uma lista separada por vírgulas em formato de string.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `MaxAge`   <a name="sam-api-corsconfiguration-maxage"></a>
Cadeia de caracteres contendo o número de segundos para armazenar em cache a solicitação CORS Preflight.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-corsconfiguration--examples"></a>

### CorsConfiguration
<a name="sam-property-api-corsconfiguration--examples--corsconfiguration"></a>

Exemplo de configuração do CORS. Essa é apenas uma parte de um arquivo de AWS SAM modelo que mostra uma [AWS::Serverless::Api](sam-resource-api.md) definição com o CORS configurado e um[AWS::Serverless::Function](sam-resource-function.md). Se você usa uma integração de proxy do Lambda ou uma integração de proxy HTTP, seu backend deve retornar os cabeçalhos `Access-Control-Allow-Origin`, `Access-Control-Allow-Methods` e `Access-Control-Allow-Headers`.

#### YAML
<a name="sam-property-api-corsconfiguration--examples--corsconfiguration--yaml"></a>

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Cors:
        AllowMethods: "'POST, GET'"
        AllowHeaders: "'X-Forwarded-For'"
        AllowOrigin: "'https://example.com'"
        MaxAge: "'600'"
        AllowCredentials: true
  ApiFunction: # Adds a GET method at the root resource via an Api event
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: Api
          Properties:
            Path: /
            Method: get
            RestApiId:
              Ref: ApiGatewayApi
      Runtime: python3.10
      Handler: index.handler
      InlineCode: |
        import json
        def handler(event, context):
          return {
          'statusCode': 200,
          'headers': {
            'Access-Control-Allow-Headers': 'Content-Type',
            'Access-Control-Allow-Origin': 'https://example.com',
            'Access-Control-Allow-Methods': 'POST, GET'
            },
          'body': json.dumps('Hello from Lambda!')
          }
```

# DomainConfiguration
<a name="sam-property-api-domainconfiguration"></a>

Configura um domínio personalizado para uma API.

## Sintaxe
<a name="sam-property-api-domainconfiguration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-domainconfiguration-syntax.yaml"></a>

```
  [AccessAssociation](#sam-api-domainconfiguration-domainaccessassociation): DomainAccessAssociation
  [BasePath](#sam-api-domainconfiguration-basepath): List
  [CertificateArn](#sam-api-domainconfiguration-certificatearn): String
  [DomainName](#sam-api-domainconfiguration-domainname): String
  [EndpointConfiguration](#sam-api-domainconfiguration-endpointconfiguration): String
  [MutualTlsAuthentication](#sam-api-domainconfiguration-mutualtlsauthentication): [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication)
  [NormalizeBasePath](#sam-api-domainconfiguration-normalizebasepath): Boolean
  [OwnershipVerificationCertificateArn](#sam-api-domainconfiguration-ownershipverificationcertificatearn): String
  [Policy: ](#sam-api-domainconfiguration-policy)Json
  [Route53](#sam-api-domainconfiguration-route53): Route53Configuration
  [SecurityPolicy](#sam-api-domainconfiguration-securitypolicy): String
```

## Propriedades
<a name="sam-property-api-domainconfiguration-properties"></a>

 `AccessAssociation`   <a name="sam-api-domainconfiguration-domainaccessassociation"></a>
A configuração necessária para gerar recursos ` AWS::ApiGateway::DomainNameAccessAssociation`.  
AWS SAM gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html)recurso quando essa propriedade é definida. Para obter informações sobre CloudFormation os recursos gerados, consulte[CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).  
*Digite*: [DomainAccessAssociation](sam-property-api-domainaccessassociation.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `BasePath`   <a name="sam-api-domainconfiguration-basepath"></a>
Uma lista dos caminhos básicos a serem configurados com o nome de domínio do Amazon API Gateway.  
*Tipo*: lista  
*Obrigatório*: não  
*Padrão*: /  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[BasePath](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-basepath)` propriedade de um `AWS::ApiGateway::BasePathMapping` recurso. AWS SAM cria vários `AWS::ApiGateway::BasePathMapping` recursos, um por `BasePath` especificado nessa propriedade.

 `CertificateArn`   <a name="sam-api-domainconfiguration-certificatearn"></a>
O Amazon Resource Name (ARN) de um certificado AWS gerenciado é o endpoint desse nome de domínio. AWS Certificate Manager é a única fonte compatível.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[CertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn)` propriedade de um `AWS::ApiGateway::DomainName` recurso. Se `EndpointConfiguration` estiver definido como `REGIONAL` (o valor padrão), `CertificateArn` mapeia para [RegionalCertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-regionalcertificatearn)in`AWS::ApiGateway::DomainName`. Se `EndpointConfiguration` estiver definido como`EDGE`, `CertificateArn` mapeia para [CertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn)in`AWS::ApiGateway::DomainName`. Se `EndpointConfiguration` estiver definido como`PRIVATE`, essa propriedade será passada para o recurso [AWS::ApiGateway::DomainNameV2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2).  
*Observações adicionais*: Para um `EDGE` endpoint, você deve criar o certificado na `us-east-1` AWS região.

 `DomainName`   <a name="sam-api-domainconfiguration-domainname"></a>
O nome de domínio personalizado para a sua API Gateway API. Letras maiúsculas não são compatíveis.  
AWS SAM gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html)recurso quando essa propriedade é definida. Para obter informações sobre esse cenário, consulte [DomainName propriedade é especificada](sam-specification-generated-resources-api.md#sam-specification-generated-resources-api-domain-name). Para obter informações sobre CloudFormation os recursos gerados, consulte[CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-domainname)` propriedade de um `AWS::ApiGateway::DomainName` recurso ou para [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2)quando EndpointConfiguration está definida como`PRIVATE`.

 `EndpointConfiguration`   <a name="sam-api-domainconfiguration-endpointconfiguration"></a>
Define o tipo de endpoint do API Gateway a ser mapeado para o domínio personalizado. O valor dessa propriedade determina como a `CertificateArn` propriedade é mapeada CloudFormation.  
*Valores válidos*: `EDGE`, `REGIONAL` ou `PRIVATE`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `REGIONAL`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `MutualTlsAuthentication`   <a name="sam-api-domainconfiguration-mutualtlsauthentication"></a>
A Transport Layer Security (TLS) mútua para um nome de domínio personalizado.  
*Digite*: [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication)` propriedade de um `AWS::ApiGateway::DomainName` recurso.

 `NormalizeBasePath`   <a name="sam-api-domainconfiguration-normalizebasepath"></a>
Indica se caracteres não alfanuméricos são permitidos nos caminhos base definidos pela propriedade `BasePath`. Quando definido como `True`, caracteres não alfanuméricos são removidos dos caminhos base.  
Use a propriedade `NormalizeBasePath` para `BasePath`.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: verdadeiro  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `OwnershipVerificationCertificateArn`   <a name="sam-api-domainconfiguration-ownershipverificationcertificatearn"></a>
O ARN do certificado público emitido pelo ACM para validar a propriedade do domínio personalizado. Necessário somente para configurar o TLS mútuo e para especificar um ARN de CA privado ou importado do ACM para o `CertificateArn`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[OwnershipVerificationCertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-ownershipverificationcertificatearn)` propriedade de um `AWS::ApiGateway::DomainName` recurso.

 `Policy`   <a name="sam-api-domainconfiguration-policy"></a>
A política do IAM para anexar ao nome de domínio do API Gateway. Aplicável somente quando `EndpointConfiguration` for definida como `PRIVATE`.  
*Tipo*: Json  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `Policy` propriedade de um `AWS::ApiGateway::DomainNameV2` recurso quando `EndpointConfiguration` está definida como`PRIVATE`. Para exemplos de documentos de política válidos, consulte [AWS::ApiGateway::DomainNameV2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2).

 `Route53`   <a name="sam-api-domainconfiguration-route53"></a>
Define uma configuração do Amazon Route 53.  
*Tipo:*: [Route53Configuration](sam-property-api-route53configuration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SecurityPolicy`   <a name="sam-api-domainconfiguration-securitypolicy"></a>
O pacote de criptografia TLS mais o pacote de criptografia para este nome de domínio.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SecurityPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-securitypolicy)` propriedade de um `AWS::ApiGateway::DomainName` recurso ou para [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2)quando `EndpointConfiguration` está definida como`PRIVATE`. Para endpoints `PRIVATE`, somente TLS\$11\$12 é compatível.

## Exemplos
<a name="sam-property-api-domainconfiguration--examples"></a>

### DomainName
<a name="sam-property-api-domainconfiguration--examples--domainname"></a>

DomainName exemplo

#### YAML
<a name="sam-property-api-domainconfiguration--examples--domainname--yaml"></a>

```
Domain:
  DomainName: www.example.com
  CertificateArn: arn-example
  EndpointConfiguration: EDGE
  Route53:
    HostedZoneId: Z1PA6795UKMFR9
  BasePath:
    - foo
    - bar
```

# DomainAccessAssociation
<a name="sam-property-api-domainaccessassociation"></a>

Configura uma associação de acesso a um domínio entre uma fonte de associação de acesso e um nome de domínio personalizado privado. A única fonte de associação de acesso compatível é um ID de endpoint da VPC. Para obter mais informações, consulte [Nomes de domínio personalizados para uso privado APIs no API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-custom-domains.html).

## Sintaxe
<a name="sam-property-api-domainaccessassociation-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-domainaccessassociation-syntax.yaml"></a>

```
 VpcEndpointId: String
```

## Propriedades
<a name="sam-property-api-domainaccessassociation-properties"></a>

 `VpcEndpointId`   <a name="sam-api-domainaccessassociation-vpcendpointid"></a>
O ID do endpoint da interface da VPC associada ao serviço da VPC do API Gateway.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ AccessAssociationSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html#cfn-apigateway-domainnameaccessassociation-accessassociationsource)` propriedade de um `AWS::ApiGateway::DomainNameAccessAssociation` recurso.

# Route53Configuration
<a name="sam-property-api-route53configuration"></a>

Configura os conjuntos de registros Route53 para uma API.

## Sintaxe
<a name="sam-property-api-route53configuration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-route53configuration-syntax.yaml"></a>

```
  [DistributionDomainName](#sam-api-route53configuration-distributiondomainname): String
  [EvaluateTargetHealth](#sam-api-route53configuration-evaluatetargethealth): Boolean
  [HostedZoneId](#sam-api-route53configuration-hostedzoneid): String
  [HostedZoneName](#sam-api-route53configuration-hostedzonename): String
  [IpV6](#sam-api-route53configuration-ipv6): Boolean
  Region: String
  SetIdentifier: String
  VpcEndpointDomainName: String
  VpcEndpointHostedZoneId: String
```

## Propriedades
<a name="sam-property-api-route53configuration-properties"></a>

 `DistributionDomainName`   <a name="sam-api-route53configuration-distributiondomainname"></a>
Configura uma distribuição personalizada do nome de domínio personalizado da API.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: use a distribuição do API Gateway.  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DNSName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget-1.html#cfn-route53-aliastarget-dnshostname)` propriedade de um `AWS::Route53::RecordSetGroup AliasTarget` recurso.  
*Notas adicionais*: O nome de domínio de uma [CloudFrontdistribuição](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html).

 `EvaluateTargetHealth`   <a name="sam-api-route53configuration-evaluatetargethealth"></a>
Quando EvaluateTargetHealth verdadeiro, um registro de alias herda a integridade do AWS recurso referenciado, como um balanceador de carga do Elastic Load Balancing ou outro registro na zona hospedada.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EvaluateTargetHealth](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth)` propriedade de um `AWS::Route53::RecordSetGroup AliasTarget` recurso.  
*Observações adicionais*: você não pode EvaluateTargetHealth definir como verdadeiro quando o destino do alias é uma CloudFront distribuição.

 `HostedZoneId`   <a name="sam-api-route53configuration-hostedzoneid"></a>
O ID da zona hospedada na qual você deseja criar registros.  
Especifique `HostedZoneName` ou `HostedZoneId`, mas não ambos. Se houver várias zonas hospedadas com o mesmo nome de domínio, especifique a zona hospedada usando `HostedZoneId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[HostedZoneId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzoneid)` propriedade de um `AWS::Route53::RecordSetGroup RecordSet` recurso.

 `HostedZoneName`   <a name="sam-api-route53configuration-hostedzonename"></a>
O nome da zona hospedada na qual você deseja criar registros.  
Especifique `HostedZoneName` ou `HostedZoneId`, mas não ambos. Se houver várias zonas hospedadas com o mesmo nome de domínio, especifique a zona hospedada usando `HostedZoneId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[HostedZoneName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzonename)` propriedade de um `AWS::Route53::RecordSetGroup RecordSet` recurso.

 `IpV6`   <a name="sam-api-route53configuration-ipv6"></a>
Quando essa propriedade é definida, AWS SAM cria um `AWS::Route53::RecordSet` recurso e define [Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type) como `AAAA` para o fornecido HostedZone.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`Region`  <a name="sam-api-route53configuration-region"></a>
*Somente conjuntos de registros de recursos baseados em latência: a* EC2 região amazônica onde você criou o recurso ao qual esse conjunto de registros de recursos se refere. O recurso normalmente é um AWS recurso, como uma EC2 instância ou um balanceador de carga ELB, e é referido por um endereço IP ou nome de domínio DNS, dependendo do tipo de registro.  
Quando o Amazon Route 53 recebe uma consulta de DNS para um nome e tipo de domínio para o qual você criou conjuntos de registros de recursos de latência, o Route 53 seleciona o conjunto de registros de recursos de latência que tem a menor latência entre o usuário final e a região da Amazon associada. EC2 O Route 53 retorna o valor associado ao conjunto de registros de recursos selecionado.  
Observe o seguinte:  
+ Só é possível especificar um `ResourceRecord` por conjunto de registros de recursos de latência.
+ Você só pode criar um conjunto de registros de recursos de latência para cada EC2 região da Amazon.
+ Você não precisa criar conjuntos de registros de recursos de latência para todas as EC2 regiões da Amazon. O Route 53 selecionará a região com a melhor latência entre as regiões para as quais você cria conjuntos de registros de recursos de latência.
+ Não é possível criar conjuntos de registros de recursos que não sejam de latência e tenham os mesmos valores para os elementos `Name` e `Type` como conjuntos registros de recursos de latência.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-region)` propriedade de um tipo de `AWS::Route53::RecordSetGroup` `RecordSet` dados.

`SetIdentifier`  <a name="sam-api-route53configuration-setidentifier"></a>
*Conjuntos de registros de recursos que têm uma política de roteamento diferente da simples:* um identificador que diferencia entre vários conjuntos de registros de recursos que têm a mesma combinação de nome e tipo, como vários conjuntos de registros de recursos ponderados chamados acme.example.com que tenham um tipo de A. Em um grupo de conjuntos de registros de recursos que têm o mesmo nome e tipo, o valor de `SetIdentifier` deve ser exclusivo para cada conjunto de registros de recursos.  
Para obter informações sobre políticas de roteamento, consulte [Escolher uma política de roteamento](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) no *Guia do desenvolvedor do Amazon Route 53*.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ SetIdentifier](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-setidentifier)` propriedade de um tipo de `AWS::Route53::RecordSetGroup` `RecordSet` dados.

`VpcEndpointDomainName`  <a name="sam-api-route53configuration-vpcendpointdomainname"></a>
O nome de DNS do endpoint da interface da VPC associada ao serviço da VPC do API Gateway. Essa propriedade é necessária apenas para domínios privados.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DNSName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-aliastarget.html)` propriedade de um `AWS::Route53::RecordSet` `AliasTarget` campo.

`VpcEndpointHostedZoneId`  <a name="sam-api-route53configuration-vpcendpointhostedzoneid"></a>
O ID da zona hospedada do endpoint da interface VPC associado ao serviço da VPC do API Gateway. Essa propriedade é necessária apenas para domínios privados.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[HostedZoneId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-aliastarget.html)` propriedade de um `AWS::Route53::RecordSet` `AliasTarget` campo.

## Exemplos
<a name="sam-property-api-route53configuration--examples"></a>

### Exemplo básico
<a name="sam-property-api-route53configuration--examples--route-53-configuration-example"></a>

Neste exemplo, configuramos um domínio personalizado e conjuntos de registros do Route 53 para nossa API.

#### YAML
<a name="sam-property-api-route53configuration--examples--route-53-configuration-example--yaml"></a>

```
Resources:
  MyApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Domain:
        DomainName: www.example.com
        CertificateArn: arn:aws:acm:us-east-1:123456789012:certificate/abcdef12-3456-7890-abcd-ef1234567890
        EndpointConfiguration: REGIONAL
        Route53:
          HostedZoneId: ABCDEFGHIJKLMNOP
```

# EndpointConfiguration
<a name="sam-property-api-endpointconfiguration"></a>

O tipo de endpoint de uma API REST.

## Sintaxe
<a name="sam-property-api-endpointconfiguration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-api-endpointconfiguration-syntax.yaml"></a>

```
  [IpAddressType](#sam-api-endpointconfiguration-ipaddresstype): String
  [Type](#sam-api-endpointconfiguration-type): String
  [VPCEndpointIds](#sam-api-endpointconfiguration-vpcendpointids): List
```

## Propriedades
<a name="sam-property-api-endpointconfiguration-properties"></a>

 `IpAddressType`   <a name="sam-api-endpointconfiguration-ipaddresstype"></a>
Os tipos de endereço IP que podem invocar uma API (RestApi).  
*Valores válidos*: `ipv4` ou `dualstack`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[IpAddressType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-ipaddresstype)` propriedade do tipo de `AWS::ApiGateway::RestApi` `EndpointConfiguration` dados.

 `Type`   <a name="sam-api-endpointconfiguration-type"></a>
O tipo de endpoint de uma API REST.  
*Valores válidos*: `EDGE` ou `REGIONAL` ou `PRIVATE`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Types](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-types)` propriedade do tipo de `AWS::ApiGateway::RestApi` `EndpointConfiguration` dados.

 `VPCEndpointIds`   <a name="sam-api-endpointconfiguration-vpcendpointids"></a>
Uma lista de pontos de extremidade VPC IDs de uma API REST com os quais criar aliases do Route53.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[VpcEndpointIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-vpcendpointids)` propriedade do tipo de `AWS::ApiGateway::RestApi` `EndpointConfiguration` dados.

## Exemplos
<a name="sam-property-api-endpointconfiguration--examples"></a>

### EndpointConfiguration
<a name="sam-property-api-endpointconfiguration--examples--endpointconfiguration"></a>

Exemplo de configuração do endpoint

#### YAML
<a name="sam-property-api-endpointconfiguration--examples--endpointconfiguration--yaml"></a>

```
EndpointConfiguration:
  Type: PRIVATE
  VPCEndpointIds:
    - vpce-123a123a
    - vpce-321a321a
```

# AWS::Serverless::Application
<a name="sam-resource-application"></a>

Incorpora um aplicativo com tecnologia sem servidor de [AWS Serverless Application Repository](https://serverlessrepo.aws.amazon.com/applications) ou de um bucket do Amazon S3 como um aplicativo aninhado. Os aplicativos aninhados são implantados como recursos [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stack.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stack.html) aninhados, que podem conter vários outros recursos, incluindo outros recursos [AWS::Serverless::Application](#sam-resource-application).

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

## Sintaxe
<a name="sam-resource-application-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-application-syntax.yaml"></a>

```
Type: AWS::Serverless::Application
Properties:
  [Location](#sam-application-location): String | ApplicationLocationObject
  [NotificationARNs](#sam-application-notificationarns): List
  [Parameters](#sam-application-parameters): Map
  [Tags](#sam-application-tags): Map
  [TimeoutInMinutes](#sam-application-timeoutinminutes): Integer
```

## Propriedades
<a name="sam-resource-application-properties"></a>

 `Location`   <a name="sam-application-location"></a>
URL do modelo, caminho do arquivo ou objeto de localização de um aplicativo aninhado.  
Se um URL de modelo for fornecido, ele deverá seguir o formato especificado na [CloudFormation TemplateUrl documentação](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl) e conter um modelo válido CloudFormation ou SAM. Um [ApplicationLocationObject](sam-property-application-applicationlocationobject.md) pode ser usado para especificar um aplicativo que foi publicado no [AWS Serverless Application Repository](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/what-is-serverlessrepo.html).  
Se um caminho de arquivo local for fornecido, o modelo deverá passar pelo fluxo de trabalho que inclui o comando `sam deploy` ou `sam package` para que o aplicativo seja transformado adequadamente.  
*Tipo*: String \$1 [ApplicationLocationObject](sam-property-application-applicationlocationobject.md)  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[TemplateURL](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl)` propriedade de um `AWS::CloudFormation::Stack` recurso. A CloudFormation versão não precisa de um [ApplicationLocationObject](sam-property-application-applicationlocationobject.md) para recuperar um aplicativo do AWS Serverless Application Repository.

 `NotificationARNs`   <a name="sam-application-notificationarns"></a>
Uma lista de tópicos existentes do Amazon SNS onde as notificações sobre eventos da pilha são enviadas.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[NotificationARNs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-notificationarns)` propriedade de um `AWS::CloudFormation::Stack` recurso.

 `Parameters`   <a name="sam-application-parameters"></a>
Valores do parâmetro do aplicativo.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Parameters](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-parameters)` propriedade de um `AWS::CloudFormation::Stack` recurso.

 `Tags`   <a name="sam-application-tags"></a>
Um mapa (string para string) que especifica as tags a serem adicionadas a este aplicativo. As chaves e valores são limitados a caracteres alfanuméricos. As chaves podem ter de 1 a 127 caracteres Unicode e não podem ser prefixadas com aws:. Os valores podem ter de 1 a 255 caracteres Unicode.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags)` propriedade de um `AWS::CloudFormation::Stack` recurso. A propriedade Tags no SAM consiste em pares de chave-valor; CloudFormation nela consiste em uma lista de objetos Tag. Quando a pilha for criada, o SAM adicionará automaticamente uma tag `lambda:createdBy:SAM` a esse aplicativo. Além disso, se esse aplicativo for do AWS Serverless Application Repository, o SAM também enviará automaticamente as duas tags adicionais `serverlessrepo:applicationId:ApplicationId` `serverlessrepo:semanticVersion:SemanticVersion` e.

 `TimeoutInMinutes`   <a name="sam-application-timeoutinminutes"></a>
O período de tempo, em minutos, que CloudFormation espera que a pilha aninhada alcance o estado. `CREATE_COMPLETE` O padrão é nenhum tempo limite. Quando CloudFormation detecta que a pilha aninhada atingiu o `CREATE_COMPLETE` estado, ela marca o recurso da pilha aninhada como `CREATE_COMPLETE` na pilha principal e retoma a criação da pilha principal. Se o período de tempo limite expirar antes que a pilha aninhada chegue`CREATE_COMPLETE`, CloudFormation marcará a pilha aninhada como falhada e reverte tanto a pilha aninhada quanto a pilha principal.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TimeoutInMinutes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-timeoutinminutes)` propriedade de um `AWS::CloudFormation::Stack` recurso.

## Valores de retorno
<a name="sam-resource-application-return-values"></a>

### Ref.
<a name="sam-resource-application-return-values-ref"></a>

Quando o ID lógico desse recurso for fornecido para a função intrínseca `Ref`, retorna o nome do recurso do recurso `AWS::CloudFormation::Stack` subjacente.

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no *Guia do usuário do AWS CloudFormation *. 

### Fã:: GetAtt
<a name="sam-resource-application-return-values-fn--getatt"></a>

`Fn::GetAtt` retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra. 

Para obter mais informações sobre o uso do `Fn::GetAtt`, consulte o [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) no *AWS CloudFormation Guia do usuário*. 

`Outputs.ApplicationOutputName`  <a name="Outputs.ApplicationOutputName-fn::getatt"></a>
O valor da saída da pilha com nome `ApplicationOutputName`.

## Exemplos
<a name="sam-resource-application--examples"></a>

### Aplicativo SAR
<a name="sam-resource-application--examples--sar-application"></a>

Aplicativo que usa um modelo do repositório de aplicativo com tecnologia sem servidor

#### YAML
<a name="sam-resource-application--examples--sar-application--yaml"></a>

```
Type: AWS::Serverless::Application
Properties:
  Location:
    ApplicationId: 'arn:aws:serverlessrepo:us-east-1:012345678901:applications/my-application'
    SemanticVersion: 1.0.0
  Parameters:
    StringParameter: parameter-value
    IntegerParameter: 2
```

### Aplicativo normal
<a name="sam-resource-application--examples--normal-application"></a>

Aplicativo a partir de um URL do S3

#### YAML
<a name="sam-resource-application--examples--normal-application--yaml"></a>

```
Type: AWS::Serverless::Application
Properties:
  Location: https://s3.amazonaws.com/sam-s3-demo-bucket/template.yaml
```

# ApplicationLocationObject
<a name="sam-property-application-applicationlocationobject"></a>

Um aplicativo que foi publicado no [AWS Serverless Application Repository](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/what-is-serverlessrepo.html).

## Sintaxe
<a name="sam-property-application-applicationlocationobject-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-application-applicationlocationobject-syntax.yaml"></a>

```
  [ApplicationId](#sam-application-applicationlocationobject-applicationid): String
  [SemanticVersion](#sam-application-applicationlocationobject-semanticversion): String
```

## Propriedades
<a name="sam-property-application-applicationlocationobject-properties"></a>

 `ApplicationId`   <a name="sam-application-applicationlocationobject-applicationid"></a>
O nome de recurso da Amazon (ARN) do aplicativo.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SemanticVersion`   <a name="sam-application-applicationlocationobject-semanticversion"></a>
A versão semântica do aplicativo.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-application-applicationlocationobject--examples"></a>

### my-application
<a name="sam-property-application-applicationlocationobject--examples--my-application"></a>

Exemplo de objeto de localização do aplicativo

#### YAML
<a name="sam-property-application-applicationlocationobject--examples--my-application--yaml"></a>

```
Location:
  ApplicationId: 'arn:aws:serverlessrepo:us-east-1:012345678901:applications/my-application'
  SemanticVersion: 1.0.0
```

# AWS::Serverless::CapacityProvider
<a name="sam-resource-capacityprovider"></a>

 Cria um provedor de capacidade para AWS Lambda funções que permite executar instâncias gerenciadas Lambda em instâncias Amazon Elastic Compute Cloud de propriedade do cliente. Esse recurso faz parte do recurso Lambda Managed Instances, que fornece otimização de custos para cargas de trabalho Lambda em grande escala utilizando modelos de preços da Amazon. EC2 

 O provedor de capacidade gerencia o ciclo de vida das EC2 instâncias da Amazon e fornece a infraestrutura necessária para que as funções Lambda sejam executadas em recursos computacionais de propriedade do cliente, mantendo o modelo de programação sem servidor. 

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md). 

## Sintaxe
<a name="sam-resource-capacityprovider-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-capacityprovider-syntax.yaml"></a>

```
Type: AWS::Serverless::CapacityProvider
Properties:
  [CapacityProviderName](#sam-capacityprovider-capacityprovidername): String
  [VpcConfig](#sam-capacityprovider-vpcconfig): VpcConfig
  [OperatorRole](#sam-capacityprovider-operatorrole): String
  [Tags](#sam-capacityprovider-tags): Map
  [PropagateTags](#sam-capacityprovider-propagatetags): Boolean
  [InstanceRequirements](#sam-capacityprovider-instancerequirements): InstanceRequirements
  [ScalingConfig](#sam-capacityprovider-scalingconfig): ScalingConfig
  [KmsKeyArn](#sam-capacityprovider-kmskeyarn): String
```

## Propriedades
<a name="sam-resource-capacityprovider-properties"></a>

 `CapacityProviderName`   <a name="sam-capacityprovider-capacityprovidername"></a>
O nome do provedor de capacidade. Esse nome deve ser exclusivo em sua AWS conta e região.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CapacityProviderName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityprovidername)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

 `VpcConfig`   <a name="sam-capacityprovider-vpcconfig"></a>
A configuração da VPC para o provedor de capacidade. Especifica as sub-redes VPC e os grupos de segurança em que as instâncias da EC2 Amazon serão lançadas.  
*Digite*: [VpcConfig](sam-property-capacityprovider-vpcconfig.md)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

 `OperatorRole`   <a name="sam-capacityprovider-operatorrole"></a>
 O ARN da função de operador do Lambda com permissões para criar e gerenciar EC2 instâncias da Amazon e recursos relacionados na conta do cliente. Se não for fornecido, gera AWS SAM automaticamente uma função com as permissões necessárias.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CapacityProviderOperatorRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderpermissionsconfig.html#cfn-lambda-capacityprovider-capacityproviderpermissionsconfig-capacityprovideroperatorrolearn)` propriedade `[PermissionsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-permissionsconfig)` de um `AWS::Lambda::CapacityProvider` recurso. 

 `Tags`   <a name="sam-capacityprovider-tags"></a>
Um mapa de pares de valores-chave a serem aplicados ao provedor de capacidade e aos recursos associados.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-tags)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. A `Tags` propriedade in AWS SAM consiste em pares de valores-chave (enquanto CloudFormation nessa propriedade consiste em uma lista de objetos Tag). Além disso, adiciona AWS SAM automaticamente uma `lambda:createdBy:SAM` tag a essa função Lambda e às funções padrão geradas para essa função. 

 `PropagateTags`   <a name="sam-capacityprovider-propagatetags"></a>
 Indica se você deve ou não passar tags da propriedade Tags para os recursos `AWS::Serverless::CapacityProvider` gerados. Defina isso `True` para propagar tags nos recursos gerados.   
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `InstanceRequirements`   <a name="sam-capacityprovider-instancerequirements"></a>
 Especificações para os tipos de instâncias de computação que o provedor de capacidade pode usar. Isso inclui requisitos de arquitetura `allowed` e/ou tipos de `excluded` instância.  
*Digite*: [InstanceRequirements](sam-property-capacityprovider-instancerequirements.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

 `ScalingConfig`   <a name="sam-capacityprovider-scalingconfig"></a>
 A configuração de escalabilidade para o provedor de capacidade. Define como o provedor de capacidade escala as EC2 instâncias da Amazon com base na demanda.  
*Digite*: [ScalingConfig](sam-property-capacityprovider-scalingconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

 `KmsKeyArn`   <a name="sam-capacityprovider-kmskeyarn"></a>
O ARN da AWS KMS chave usada para criptografar dados em repouso e em trânsito para o provedor de capacidade.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-kmskeyarn)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

## Valores de retorno
<a name="sam-resource-capacityprovider-return-values"></a>

### Ref.
<a name="sam-resource-capacityprovider-return-values-ref"></a>

Quando a ID lógica desse recurso é fornecida à função `Ref` intrínseca, ela retorna o nome do provedor de capacidade.

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no *Guia do usuário do AWS CloudFormation *. 

### Fã:: GetAtt
<a name="sam-resource-capacityprovider-return-values-fn--getatt"></a>

`Fn::GetAtt` retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra. 

Para obter mais informações sobre o uso do `Fn::GetAtt`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) o *AWS CloudFormation Guia do usuário*. 

`Arn`  <a name="Arn-fn::getatt"></a>
O ARN do provedor de capacidade.

## Exemplos
<a name="sam-resource-capacityprovider-examples"></a>

### Provedor de capacidade básica
<a name="sam-resource-capacityprovider-examples-basic"></a>

O exemplo a seguir cria um provedor de capacidade básico com configuração de VPC.

```
MyCapacityProvider:
  Type: AWS::Serverless::CapacityProvider
  Properties:
    CapacityProviderName: my-capacity-provider
    VpcConfig:
      SubnetIds:
        - subnet-12345678
        - subnet-87654321
      SecurityGroupIds:
        - sg-12345678
    Tags:
      Environment: Production
      Team: ServerlessTeam
```

### Provedor de capacidade avançada com escalabilidade
<a name="sam-resource-capacityprovider-examples-advanced"></a>

O exemplo a seguir cria um provedor de capacidade com requisitos de instância personalizados e configuração de escalabilidade.

```
AdvancedCapacityProvider:
  Type: AWS::Serverless::CapacityProvider
  Properties:
    CapacityProviderName: advanced-capacity-provider
    VpcConfig:
      SubnetIds:
        - subnet-12345678
        - subnet-87654321
      SecurityGroupIds:
        - sg-12345678
    OperatorRole: arn:aws:iam::123456789012:role/MyCapacityProviderRole
    PropagateTags: true
    InstanceRequirements:
      Architectures:
        - x86_64
      ExcludedTypes:
        - t2.micro
    ScalingConfig:
      MaxInstanceCount: 10
      ManualScalingPolicies:
        AverageCPUUtilization: 70.0
    KmsKeyArn: arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
    Tags:
      Environment: Production
      CostCenter: Engineering
```

# VpcConfig
<a name="sam-property-capacityprovider-vpcconfig"></a>

Define as configurações de VPC para um provedor de capacidade, incluindo as sub-redes e os grupos de segurança em EC2 que as instâncias serão lançadas.

## Sintaxe
<a name="sam-property-capacityprovider-vpcconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-capacityprovider-vpcconfig-syntax.yaml"></a>

```
[SubnetIds](#sam-capacityprovider-vpcconfig-subnetids): List
[SecurityGroupIds](#sam-capacityprovider-vpcconfig-securitygroupids): List
```

## Propriedades
<a name="sam-property-capacityprovider-vpcconfig-properties"></a>

 `SubnetIds`   <a name="sam-capacityprovider-vpcconfig-subnetids"></a>
Uma lista de sub-redes em IDs que as EC2 instâncias serão lançadas. Pelo menos uma sub-rede deve ser especificada.  
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SubnetIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityprovidervpcconfig.html#cfn-lambda-capacityprovider-capacityprovidervpcconfig-subnetids)` propriedade `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig) ` de um `AWS::Lambda::CapacityProvider` recurso. 

 `SecurityGroupIds`   <a name="sam-capacityprovider-vpcconfig-securitygroupids"></a>
Uma lista de grupos de segurança IDs a serem associados às EC2 instâncias. Se não for especificado, o grupo de segurança padrão da VPC será usado.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SecurityGroupIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityprovidervpcconfig.html#cfn-lambda-capacityprovider-capacityprovidervpcconfig-securitygroupids)` propriedade de `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-vpcconfig)` propriedade de um `AWS::Lambda::CapacityProvider` recurso. 

## Exemplos
<a name="sam-property-capacityprovider-vpcconfig-examples"></a>

### Configuração de VPC
<a name="sam-property-capacityprovider-vpcconfig-examples-basic"></a>

O exemplo a seguir mostra uma configuração de VPC com várias sub-redes e grupos de segurança.

```
VpcConfig:
  SubnetIds:
    - subnet-12345678
    - subnet-87654321
  SecurityGroupIds:
    - sg-12345678
    - sg-87654321
```

# InstanceRequirements
<a name="sam-property-capacityprovider-instancerequirements"></a>

Especifica os requisitos para EC2 instâncias que serão lançadas pelo provedor de capacidade, incluindo arquiteturas e restrições de tipo de instância.

## Sintaxe
<a name="sam-property-capacityprovider-instancerequirements-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-capacityprovider-instancerequirements-syntax.yaml"></a>

```
[Architectures](#sam-capacityprovider-instancerequirements-architectures): List
[AllowedTypes](#sam-capacityprovider-instancerequirements-allowedtypes): List
[ExcludedTypes](#sam-capacityprovider-instancerequirements-excludedtypes): List
```

**nota**  
Você pode optar por especificar um `AllowedTypes` ou `ExcludedTypes` ao definir os requisitos de instância para seu provedor de capacidade, mas não ambos.

## Propriedades
<a name="sam-property-capacityprovider-instancerequirements-properties"></a>

 `Architectures`   <a name="sam-capacityprovider-instancerequirements-architectures"></a>
As arquiteturas do conjunto de instruções para as instâncias do provedor de capacidade.  
*Valores válidos*: `x86_64` ou `arm64`  
*Tipo*: lista  
*Obrigatório*: não  
*Padrão*: `x86_64`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Architectures](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-architectures)` propriedade `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` de um `AWS::Lambda::CapacityProvider` recurso. 

 `AllowedTypes`   <a name="sam-capacityprovider-instancerequirements-allowedtypes"></a>
Uma lista dos tipos de EC2 instância permitidos para a instância do provedor de capacidade.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AllowedInstanceTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-allowedinstancetypes)` propriedade `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` de um `AWS::Lambda::CapacityProvider` recurso. 

 `ExcludedTypes`   <a name="sam-capacityprovider-instancerequirements-excludedtypes"></a>
Uma lista de tipos de EC2 instância a serem excluídos do provedor de capacidade.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ExcludedInstanceTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-instancerequirements.html#cfn-lambda-capacityprovider-instancerequirements-excludedinstancetypes)` propriedade `[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-instancerequirements)` de um `AWS::Lambda::CapacityProvider` recurso. 

## Exemplos
<a name="sam-property-capacityprovider-instancerequirements-examples"></a>

### Configuração de requisitos de instância
<a name="sam-property-capacityprovider-instancerequirements-examples-basic"></a>

O exemplo a seguir mostra os requisitos de instância com restrições específicas de arquitetura e tipo de instância.

```
InstanceRequirements:
  Architectures:
    - x86_64
  ExcludedTypes:
    - t2.micro
```

# ScalingConfig
<a name="sam-property-capacityprovider-scalingconfig"></a>

Configura como o provedor de capacidade dimensiona as EC2 instâncias com base na demanda, incluindo limites máximos de instância e políticas de escalabilidade.

## Sintaxe
<a name="sam-property-capacityprovider-scalingconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-capacityprovider-scalingconfig-syntax.yaml"></a>

```
[MaxVCpuCount](#sam-capacityprovider-scalingconfig-maxvcpucount): Integer
[AverageCPUUtilization](#sam-capacityprovider-scalingconfig-averagecpuutilization): Double
```

## Propriedades
<a name="sam-property-capacityprovider-scalingconfig-properties"></a>

 `MaxVCpuCount`   <a name="sam-capacityprovider-scalingconfig-maxvcpucount"></a>
O número máximo de v CPUs que o provedor de capacidade pode provisionar em todas as instâncias de computação.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaxVCpuCount](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-maxvcpucount)` propriedade `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` de um `AWS::Lambda::CapacityProvider` recurso. 

 `AverageCPUUtilization`   <a name="sam-capacityprovider-scalingconfig-averagecpuutilization"></a>
A meta média de porcentagem de utilização da CPU (0-100) para decisões de escalabilidade. Quando a utilização média da CPU exceder esse limite, o provedor de capacidade ampliará as instâncias da Amazon EC2 . Quando especificado, AWS SAM constrói `[CapacityProviderScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig)` um `AWS::Lambda::CapacityProvider` recurso com o `[ScalingMode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-scalingmode)` definido como `'Manual'` e `[ScalingPolicies](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-capacityprovider-capacityproviderscalingconfig.html#cfn-lambda-capacityprovider-capacityproviderscalingconfig-scalingpolicies)` definido como. `[{PredefinedMetricType: 'LambdaCapacityProviderAverageCPUUtilization', TargetValue: <this value>}]`   
*Tipo*: duplo  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente. 

## Exemplos
<a name="sam-property-capacityprovider-scalingconfig-examples"></a>

### Scaling configuration (Configuração de escalabilidade)
<a name="sam-property-capacityprovider-scalingconfig-examples-basic"></a>

O exemplo a seguir mostra uma configuração de escalabilidade com VCpu contagem máxima e média de utilização da CPU.

```
ScalingConfig:
  MaxVCpuCount: 10
  AverageCPUUtilization: 70.0
```

# AWS::Serverless::Connector
<a name="sam-resource-connector"></a>

Configura as permissões entre dois recursos. Para obter uma introdução aos conectores, consulte [Gerenciando permissões de recursos com AWS SAM conectores](managing-permissions-connectors.md).

Para obter mais informações sobre AWS CloudFormation os recursos gerados, consulte[CloudFormation recursos gerados quando você especifica AWS::Serverless::Connector](sam-specification-generated-resources-connector.md).

Para fornecer feedback sobre conectores, [envie um novo problema](https://github.com/aws/serverless-application-model/issues/new?assignees=&labels=area%2Fconnectors,stage%2Fneeds-triage&template=other.md&title=%28Feature%20Request%29) no *serverless-application-model AWS GitHub repositório*.

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

## Sintaxe
<a name="sam-resource-connector-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use qualquer uma das sintaxes a seguir.

**nota**  
Recomendamos usar a sintaxe de conectores incorporados para a maioria dos casos de uso. Estar incorporado ao recurso de origem facilita a leitura e a manutenção ao longo do tempo. Quando você precisar referenciar um recurso de origem que não esteja no mesmo AWS SAM modelo, como um recurso em uma pilha aninhada ou um recurso compartilhado, use a `AWS::Serverless::Connector` sintaxe.

### Conectores embutidos
<a name="sam-resource-connector-syntax-embedded"></a>

```
<source-resource-logical-id>:
  Connectors:
    <connector-logical-id:
      Properties:
        [Destination](#sam-connector-destination): ResourceReference | List of ResourceReference
        [Permissions](#sam-connector-permissions): List
        [SourceReference](#sam-connector-sourcereference): SourceReference
```

### AWS::Serverless::Connector
<a name="sam-resource-connector-syntax-connector"></a>

```
Type: AWS::Serverless::Connector
Properties:
  [Destination](#sam-connector-destination): ResourceReference | List of ResourceReference
  [Permissions](#sam-connector-permissions): List
  [Source](#sam-connector-source): ResourceReference
```

## Propriedades
<a name="sam-resource-connector-properties"></a>

 `Destination`   <a name="sam-connector-destination"></a>
O recurso de destino.  
*Tipo*: [ResourceReference](sam-property-connector-resourcereference.md)\$1 Lista de [ResourceReference](sam-property-connector-resourcereference.md)  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Permissions`   <a name="sam-connector-permissions"></a>
O tipo de permissão que o recurso de origem tem permissão para executar no recurso de destino.  
`Read`inclui ações AWS Identity and Access Management (IAM) que permitem a leitura de dados do recurso.  
`Write` inclui ações do IAM que permitem iniciar e escrever dados em um recurso.  
*Valores válidos*: `Read` ou `Write`  
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Source`   <a name="sam-connector-source"></a>
O recurso de origem. Obrigatório ao usar a sintaxe `AWS::Serverless::Connector`.  
*Digite*: [ResourceReference](sam-property-connector-resourcereference.md)  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceReference`   <a name="sam-connector-sourcereference"></a>
O recurso de origem.  
Use com a sintaxe de conectores incorporados ao definir propriedades adicionais para o recurso de origem.
*Digite*: [SourceReference](sam-property-connector-sourcereference.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-resource-connector-examples"></a>

### Conectores embutidos
<a name="sam-resource-connector-examples-embedded"></a>

O exemplo a seguir usa conectores incorporados para definir uma conexão de dados `Write` entre uma função AWS Lambda e a tabela do Amazon DynamoDB:

```
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyTable:
    Type: AWS::Serverless::SimpleTable
  MyFunction:
    Type: AWS::Serverless::Function
    Connectors:
      MyConn:
        Properties:
          Destination:
            Id: MyTable
          Permissions:
            - Write
    ...
```

O exemplo a seguir usa conectores incorporados para definir permissões `Read` e `Write`:

```
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyFunction:
    Type: AWS::Serverless::Function
    Connectors:
      MyConn:
        Properties:
          Destination:
            Id: MyTable
          Permissions:
            - Read
            - Write
  MyTable:
    Type: AWS::DynamoDB::Table
    ...
```

O exemplo a seguir usa conectores incorporados para definir um recurso de origem com uma propriedade diferente de `Id`:

```
Transform: AWS::Serverless-2016-10-31
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyApi:
    Type: AWS::Serverless::Api
    Connectors:
      ApitoLambdaConn:
        Properties:
          SourceReference:
            Qualifier: Prod/GET/foobar
          Destination:
            Id: MyTable
          Permissions:
            - Read
            - Write
  MyTable:
    Type: AWS::DynamoDB::Table
    ...
```

### AWS::Serverless::Connector
<a name="sam-resource-connector--examples-connector"></a>

O exemplo a seguir usa o [AWS::Serverless::Connector](#sam-resource-connector) recurso para que uma AWS Lambda função seja lida e gravada em uma tabela do Amazon DynamoDB:

```
MyConnector:
  Type: AWS::Serverless::Connector
  Properties:
    Source:
      Id: MyFunction
    Destination:
      Id: MyTable
    Permissions:
      - Read
      - Write
```

O exemplo a seguir usa o recurso [AWS::Serverless::Connector](#sam-resource-connector) para que uma função do Lambda seja escrita em um tópico do Amazon SNS, com os dois recursos no mesmo modelo:

```
MyConnector:
  Type: AWS::Serverless::Connector
  Properties:
    Source:
      Id: MyLambda
    Destination:
      Id: MySNSTopic
    Permissions:
      - Write
```

O exemplo a seguir usa o [AWS::Serverless::Connector](#sam-resource-connector) recurso para que um tópico do Amazon SNS grave em uma função do Lambda, que então grava em uma tabela do Amazon DynamoDB, com todos os recursos no mesmo modelo:

```
Transform: AWS::Serverless-2016-10-31
Resources:
  Topic:
    Type: AWS::SNS::Topic
    Properties:
      Subscription:
        - Endpoint: !GetAtt Function.Arn
          Protocol: lambda

  Function:
    Type: AWS::Serverless::Function
    Properties:
      Runtime: nodejs16.x
      Handler: index.handler
      InlineCode: |
        const AWS = require('aws-sdk');
        exports.handler = async (event, context) => {
          const docClient = new AWS.DynamoDB.DocumentClient();
          await docClient.put({ 
            TableName: process.env.TABLE_NAME, 
            Item: {
              id: context.awsRequestId,
              event: JSON.stringify(event)
            }
          }).promise();
        };
      Environment:
        Variables:
          TABLE_NAME: !Ref Table

  Table:
    Type: AWS::Serverless::SimpleTable

  TopicToFunctionConnector:
    Type: AWS::Serverless::Connector
    Properties:
      Source: 
        Id: Topic
      Destination: 
        Id: Function
      Permissions:
        - Write

  FunctionToTableConnector:
    Type: AWS::Serverless::Connector
    Properties:
      Source: 
        Id: Function
      Destination: 
        Id: Table
      Permissions:
        - Write
```

Veja a seguir o AWS CloudFormation modelo transformado do exemplo acima:

```
"FunctionToTableConnectorPolicy": {
  "Type": "AWS::IAM::ManagedPolicy",
  "Metadata": {
    "aws:sam:connectors": {
      "FunctionToTableConnector": {
        "Source": {
          "Type": "AWS::Lambda::Function"
        },
        "Destination": {
          "Type": "AWS::DynamoDB::Table"
        }
      }
    }
  },
  "Properties": {
    "PolicyDocument": {
      "Version": "2012-10-17",		 	 	 
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "dynamodb:PutItem",
            "dynamodb:UpdateItem",
            "dynamodb:DeleteItem",
            "dynamodb:BatchWriteItem",
            "dynamodb:PartiQLDelete",
            "dynamodb:PartiQLInsert",
            "dynamodb:PartiQLUpdate"
          ],
          "Resource": [
            {
              "Fn::GetAtt": [
                "MyTable",
                "Arn"
              ]
            },
            {
              "Fn::Sub": [
                "${DestinationArn}/index/*",
                {
                  "DestinationArn": {
                    "Fn::GetAtt": [
                      "MyTable",
                      "Arn"
                    ]
                  }
                }
              ]
            }
          ]
        }
      ]
    },
    "Roles": [
      {
        "Ref": "MyFunctionRole"
      }
    ]
  }
}
```

# ResourceReference
<a name="sam-property-connector-resourcereference"></a>

Uma referência a um recurso que o tipo de recurso de [AWS::Serverless::Connector](sam-resource-connector.md) usa.

**nota**  
Para recursos no mesmo modelo, forneça o `Id`. Para recursos que não estejam no mesmo modelo, use uma combinação de outras propriedades. Para obter mais informações, consulte [AWS SAM referência do conector](reference-sam-connector.md).

## Sintaxe
<a name="sam-property-connector-resourcereference-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-connector-resourcereference-syntax.yaml"></a>

```
  [Arn](#sam-connector-resourcereference-arn): String
  [Id](#sam-connector-resourcereference-id): String
  [Name](#sam-connector-resourcereference-name): String
  [Qualifier](#sam-connector-resourcereference-qualifier): String
  [QueueUrl](#sam-connector-resourcereference-queueurl): String
  [ResourceId](#sam-connector-resourcereference-resourceid): String
  [RoleName](#sam-connector-resourcereference-rolename): String
  [Type](#sam-connector-resourcereference-type): String
```

## Propriedades
<a name="sam-property-connector-resourcereference-properties"></a>

 `Arn`   <a name="sam-connector-resourcereference-arn"></a>
O ARN de um recurso.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Id`   <a name="sam-connector-resourcereference-id"></a>
O [ID lógico](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html) de um recurso no mesmo modelo.  
Quando `Id` for especificado, se o conector gerar políticas AWS Identity and Access Management (IAM), a função do IAM associada a essas políticas será inferida do recurso`Id`. Quando `Id` não for especificado, forneça o recurso `RoleName` para conectores anexarem as políticas do IAM geradas a um perfil do IAM.
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Name`   <a name="sam-connector-resourcereference-name"></a>
O nome de um recurso do .  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Qualifier`   <a name="sam-connector-resourcereference-qualifier"></a>
Um qualificador para um recurso que restrinja seu escopo. `Qualifier` substitui o valor `*` no final de um ARN de restrição de recursos. Para ver um exemplo, consulte [API Gateway para invocar uma função do Lambda](#sam-property-connector-resourcereference--examples--api-gateway-invoking-a-lambda-function).  
A definição do qualificador varia de acordo com o tipo de recurso. Para obter uma lista de tipos de recursos de origem e destino compatíveis, consulte [AWS SAM referência do conector](reference-sam-connector.md).
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `QueueUrl`   <a name="sam-connector-resourcereference-queueurl"></a>
O URL da fila do Amazon SQS. Essa propriedade só se aplica aos recursos do Amazon SQS.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ResourceId`   <a name="sam-connector-resourcereference-resourceid"></a>
O ID de um recurso. Por exemplo, o ID da API API Gateway.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `RoleName`   <a name="sam-connector-resourcereference-rolename"></a>
O nome do perfil associado a um recurso.  
Quando `Id` for especificado, se o conector gerar políticas do IAM, o perfil do IAM associado a essas políticas será inferida do recurso `Id`. Quando `Id` não for especificado, forneça o recurso `RoleName` para conectores anexarem as políticas do IAM geradas a um perfil do IAM.
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Type`   <a name="sam-connector-resourcereference-type"></a>
O CloudFormation tipo de um recurso. Para obter mais informações, consulte a [AWS referência de tipos de recursos e propriedades](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html).  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-connector-resourcereference--examples"></a>

### API Gateway para invocar uma função do Lambda
<a name="sam-property-connector-resourcereference--examples--api-gateway-invoking-a-lambda-function"></a>

O exemplo a seguir usa o [AWS::Serverless::Connector](sam-resource-connector.md) recurso para permitir que o Amazon API Gateway invoque uma AWS Lambda função.

#### YAML
<a name="sam-property-connector-resourcereference--examples--api-gateway-invoking-a-lambda-function--yaml"></a>

```
Transform: AWS::Serverless-2016-10-31
Resources:
  MyRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Statement:
          - Effect: Allow
            Action: sts:AssumeRole
            Principal:
              Service: lambda.amazonaws.com
      ManagedPolicyArns:
        - !Sub arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole

  MyFunction:
    Type: AWS::Lambda::Function
    Properties:
      Role: !GetAtt MyRole.Arn
      Runtime: nodejs16.x
      Handler: index.handler
      Code:
        ZipFile: |
          exports.handler = async (event) => {
            return {
              statusCode: 200,
              body: JSON.stringify({
                "message": "It works!"
              }),
            };
          };

  MyApi:
    Type: AWS::ApiGatewayV2::Api
    Properties:
      Name: MyApi
      ProtocolType: HTTP

  MyStage:
    Type: AWS::ApiGatewayV2::Stage
    Properties:
      ApiId: !Ref MyApi
      StageName: prod
      AutoDeploy: True

  MyIntegration:
    Type: AWS::ApiGatewayV2::Integration
    Properties:
      ApiId: !Ref MyApi
      IntegrationType: AWS_PROXY
      IntegrationUri: !Sub arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${MyFunction.Arn}/invocations
      IntegrationMethod: POST
      PayloadFormatVersion: "2.0"

  MyRoute:
    Type: AWS::ApiGatewayV2::Route
    Properties:
      ApiId: !Ref MyApi
      RouteKey: GET /hello
      Target: !Sub integrations/${MyIntegration}

  MyConnector:
    Type: AWS::Serverless::Connector
    Properties:
      Source: # Use 'Id' when resource is in the same template
        Type: AWS::ApiGatewayV2::Api
        ResourceId: !Ref MyApi
        Qualifier: prod/GET/hello # Or "*" to allow all routes
      Destination: # Use 'Id' when resource is in the same template
        Type: AWS::Lambda::Function
        Arn: !GetAtt MyFunction.Arn
      Permissions:
        - Write

Outputs:
  Endpoint:
    Value: !Sub https://${MyApi}.execute-api.${AWS::Region}.${AWS::URLSuffix}/prod/hello
```

# SourceReference
<a name="sam-property-connector-sourcereference"></a>

Uma referência a um recurso de origem usado pelo tipo de recurso de [AWS::Serverless::Connector](sam-resource-connector.md).

## Sintaxe
<a name="sam-property-connector-sourcereference-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-connector-sourcereference-syntax.yaml"></a>

```
[Qualifier](#sam-connector-sourcereference-qualifier): String
```

## Propriedades
<a name="sam-property-connector-sourcereference-properties"></a>

 `Qualifier`   <a name="sam-connector-sourcereference-qualifier"></a>
Um qualificador para um recurso que restrinja seu escopo. `Qualifier` substitui o valor `*` no final de um ARN de restrição de recursos.  
A definição do qualificador varia de acordo com o tipo de recurso. Para obter uma lista de tipos de recursos de origem e destino compatíveis, consulte [AWS SAM referência do conector](reference-sam-connector.md).
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-connector-sourcereference--examples"></a>

**O exemplo a seguir usa conectores incorporados para definir um recurso de origem com uma propriedade diferente de `Id`:**

```
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyApi:
    Type: AWS::Serverless::Api
    Connectors:
      ApitoLambdaConn:
        Properties:
          SourceReference:
            Qualifier: Prod/GET/foobar
          Destination:
            Id: MyTable
          Permissions:
            - Read
            - Write
  MyTable:
    Type: AWS::DynamoDB::Table
    ...
```

# AWS::Serverless::Function
<a name="sam-resource-function"></a>

Cria uma AWS Lambda função, uma função de execução AWS Identity and Access Management (IAM) e mapeamentos de origem de eventos que acionam a função.

O [AWS::Serverless::Function](#sam-resource-function) recurso também oferece suporte ao atributo `Metadata` resource, para que você possa AWS SAM instruir a criar tempos de execução personalizados que seu aplicativo exija. Para obter mais informações sobre a criação de tempos de execução personalizados, consulte [Criação de funções Lambda com tempos de execução personalizados no AWS SAM](building-custom-runtimes.md).

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

## Sintaxe
<a name="sam-resource-function-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-function-syntax.yaml"></a>

```
Type: AWS::Serverless::Function
Properties:
  [Architectures](#sam-function-architectures): List
  [AssumeRolePolicyDocument](#sam-function-assumerolepolicydocument): JSON
  [AutoPublishAlias](#sam-function-autopublishalias): String
  AutoPublishAliasAllProperties: Boolean
  [AutoPublishCodeSha256](#sam-function-autopublishcodesha256): String
  [CapacityProviderConfig](#sam-function-capacityproviderconfig): CapacityProviderConfig
  [CodeSigningConfigArn](#sam-function-codesigningconfigarn): String
  [CodeUri](#sam-function-codeuri): String | FunctionCode
  [DeadLetterQueue](#sam-function-deadletterqueue): Map | DeadLetterQueue
  [DeploymentPreference](#sam-function-deploymentpreference): DeploymentPreference
  [Description](#sam-function-description): String
  [DurableConfig](#sam-function-durableconfig): DurableConfig
  [Environment](#sam-function-environment): [Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)
  [EphemeralStorage](#sam-function-ephemeralstorage): [EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)
  [EventInvokeConfig](#sam-function-eventinvokeconfig): EventInvokeConfiguration
  [Events](#sam-function-events): EventSource
  [FileSystemConfigs](#sam-function-filesystemconfigs): List
  [FunctionName](#sam-function-functionname): String
  [FunctionScalingConfig](#sam-function-functionscalingconfig): FunctionScalingConfig
  [FunctionUrlConfig](#sam-function-functionurlconfig): FunctionUrlConfig
  [Handler](#sam-function-handler): String
  [ImageConfig](#sam-function-imageconfig): [ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)
  [ImageUri](#sam-function-imageuri): String
  [InlineCode](#sam-function-inlinecode): String
  [KmsKeyArn](#sam-function-kmskeyarn): String
  [Layers](#sam-function-layers): List
  LoggingConfig: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html)
  [MemorySize](#sam-function-memorysize): Integer
  [PackageType](#sam-function-packagetype): String
  [PermissionsBoundary](#sam-function-permissionsboundary): String
  [Policies](#sam-function-policies): String | List | Map
  [PublishToLatestPublished](#sam-function-publishtolatestpublished): Boolean
  PropagateTags: Boolean
  [ProvisionedConcurrencyConfig](#sam-function-provisionedconcurrencyconfig): [ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)
  RecursiveLoop: String
  [ReservedConcurrentExecutions](#sam-function-reservedconcurrentexecutions): Integer
  [Role](#sam-function-role): String
  [RolePath](#sam-function-rolepath): String
  [Runtime](#sam-function-runtime): String
  RuntimeManagementConfig: [RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)
  SnapStart: [SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)
  [SourceKMSKeyArn](#sam-function-sourcekmskeyarn): String
  [Tags](#sam-function-tags): Map
  [TenancyConfig](#sam-function-tenancyconfig): TenancyConfig
  [Timeout](#sam-function-timeout): Integer
  [Tracing](#sam-function-tracing): String
  [VersionDescription](#sam-function-versiondescription): String
  [VersionDeletionPolicy](#sam-function-versiondeletionpolicy): String
  [VpcConfig](#sam-function-vpcconfig): [VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)
```

## Propriedades
<a name="sam-resource-function-properties"></a>

 `Architectures`   <a name="sam-function-architectures"></a>
A arquitetura do conjunto de instruções para a função.  
Para obter mais informações sobre esta propriedade, consulte [Arquiteturas de conjuntos de instruções do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html) no *AWS Lambda Guia do desenvolvedor*.  
*Valores válidos*: Um de `x86_64` ou `arm64`.  
*Tipo*: lista  
*Obrigatório*: não  
*Padrão*: `x86_64`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Architectures](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-architectures)` propriedade de um `AWS::Lambda::Function` recurso.

 `AssumeRolePolicyDocument`   <a name="sam-function-assumerolepolicydocument"></a>
Adiciona um AssumeRolePolicyDocument para o padrão criado `Role` para essa função. Se essa propriedade não for especificada, AWS SAM adicionará uma função de suposição padrão para essa função.  
*Type*: JSON  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[AssumeRolePolicyDocument](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument)` propriedade de um `AWS::IAM::Role` recurso. AWS SAM adiciona essa propriedade à função IAM gerada para essa função. Se o nome de recurso da Amazon (ARN) de um perfil é fornecido para essa função, essa propriedade não faz nada.

 `AutoPublishAlias`   <a name="sam-function-autopublishalias"></a>
O nome do alias do Lambda. Para obter mais informações sobre aliases do Lambda, consulte [Aliases de funções do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html) no *AWS Lambda Guia do desenvolvedor*. Para obter exemplos que usam essa propriedade, consulte [Implantando aplicativos sem servidor gradualmente com AWS SAM](automating-updates-to-serverless-apps.md).  
AWS SAM gera [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)e fornece [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html)recursos quando essa propriedade é definida. Para obter informações sobre esse cenário, consulte [AutoPublishAlias propriedade é especificada](sam-specification-generated-resources-function.md#sam-specification-generated-resources-function-autopublishalias). Para obter informações gerais sobre CloudFormation os recursos gerados, consulte[CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AutoPublishAliasAllProperties`   <a name="sam-function-autopublishaliasallproperties"></a>
Especifica quando um novo [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html) é criado. Quando `true`, uma nova versão do Lambda é criada quando qualquer propriedade na função do Lambda é modificada. Quando `false`, uma nova versão do Lambda é criada somente quando qualquer uma das seguintes propriedades é modificada:  
+ `Environment`, `MemorySize`, ou `SnapStart`.
+ Qualquer alteração que resulte em uma atualização da propriedade `Code`, como `CodeDict`, `ImageUri`, ou `InlineCode`.
Essa propriedade precisa do ‭`AutoPublishAlias` para ser definida.  
Se `AutoPublishCodeSha256` também for especificado, seu comportamento terá precedência sobre `AutoPublishAliasAllProperties: true`.  
*Tipo*: booliano  
*Obrigatório*: não  
*Valor padrão*: `false`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AutoPublishCodeSha256`   <a name="sam-function-autopublishcodesha256"></a>
Quando usada, essa string trabalha com o valor `CodeUri` para determinar se uma nova versão do Lambda precisa ser publicada. Essa propriedade muitas vezes é usada para resolver o seguinte problema de implantação: um pacote de implantação está armazenado em um local do Amazon S3 e é substituído por um novo pacote de implantação que contém o código de função do Lambda atualizado, mas a propriedade `CodeUri` permanece inalterada (ao contrário do novo pacote de implantação que está sendo carregado em um novo local do Amazon S3 e o `CodeUri` sendo transferido para o novo local).  
Esse problema é marcado por um AWS SAM modelo com as seguintes características:  
+ O objeto `DeploymentPreference` está configurado para implantações graduais (conforme descrito em [Implantando aplicativos sem servidor gradualmente com AWS SAM](automating-updates-to-serverless-apps.md))
+ A propriedade `AutoPublishAlias` está definida e não muda entre as implantações
+ A propriedade `CodeUri` está definida e não muda entre as implantações.
Nesse cenário, a atualização do `AutoPublishCodeSha256` resulta na criação bem-sucedida de uma nova versão do Lambda. No entanto, o novo código de função implantado no Amazon S3 não será reconhecido. Para reconhecer o novo código de função, considere usar o controle de versionamento em seu bucket do Amazon S3. Especifique a propriedade `Version` da sua função do Lambda e configure seu bucket para sempre usar o pacote de implantação mais recente.  
Nesse cenário, para acionar a implantação gradual com êxito, você deve fornecer um valor exclusivo para `AutoPublishCodeSha256`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `CapacityProviderConfig`   <a name="sam-function-capacityproviderconfig"></a>
Configura o provedor de capacidade ao qual as versões publicadas da função serão anexadas. Isso permite que a função seja executada em instâncias EC2 de propriedade do cliente gerenciadas por instâncias gerenciadas Lambda.  
*Digite*: [CapacityProviderConfig](sam-property-function-capacityproviderconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: o SAM nivela a propriedade passada para a `[CapacityProviderConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-capacityproviderconfig)` propriedade de um `AWS::Lambda::Function` recurso e reconstrói a estrutura aninhada.

 `CodeSigningConfigArn`   <a name="sam-function-codesigningconfigarn"></a>
O ARN do recurso [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html), usado para habilitar a assinatura de código para essa função. Para obter mais informações sobre assinatura de código, consulte [Configure a assinatura de código para seu AWS SAM aplicativo](authoring-codesigning.md).  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CodeSigningConfigArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-codesigningconfigarn)` propriedade de um `AWS::Lambda::Function` recurso.

 `CodeUri`   <a name="sam-function-codeuri"></a>
O código da função. Os valores aceitos são:  
+ O URI do Amazon S3 da função. Por exemplo, `s3://bucket-123456789/sam-app/1234567890abcdefg`.
+ O caminho local para a função. Por exemplo, `hello_world/`.
+ Um objeto [FunctionCode](sam-property-function-functioncode.md).
Se você fornecer o URI ou objeto [FunctionCode](sam-property-function-functioncode.md) do Amazon S3 de uma função, deverá fazer referência a um [pacote de implantação do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) válido.  
Se você fornecer um caminho de arquivo local, use o AWS SAMCLI para carregar o arquivo local na implantação. Para saber mais, consulte [Como AWS SAM carrega arquivos locais na implantação](deploy-upload-local-files.md).  
Se você usar funções intrínsecas na `CodeUri` propriedade, não AWS SAM será capaz de analisar corretamente os valores. Em vez disso, considere usar [a transformação de AWS::Language extensões](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-languageextensions.html).
*Tipo*: [ String \$1 [FunctionCode](sam-property-function-functioncode.md) ]  
*Obrigatório:* condicional. Quando `PackageType` está definido como `Zip`, um dos `CodeUri` ou `InlineCode` é obrigatório.  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[ Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code)` propriedade de um `AWS::Lambda::Function` recurso. As propriedades aninhadas do Amazon S3 têm nomes diferentes.

 `DeadLetterQueue`   <a name="sam-function-deadletterqueue"></a>
Configura um tópico do Amazon Simple Notification Service (Amazon SNS) ou uma fila do Amazon Simple Queue Service (Amazon SQS) em que o Lambda envia eventos que não são processados. Para obter mais informações sobre a funcionalidade de fila de mensagens não entregues, consulte [Filas de mensagens não entregues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-dlq) de *AWS Lambda função no Guia do desenvolvedor*.  
Se a origem do evento da função do Lambda for uma fila do Amazon SQS, configure uma fila de mensagens não entregues para a fila de origem, não para a função do Lambda. A fila de mensagens não entregues que você configura para uma função é usada para a [fila de invocação assíncrona](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html) da função, e não para filas de origem de evento.
*Tipo*: Mapa \$1 [DeadLetterQueue](sam-property-function-deadletterqueue.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html)` propriedade de um `AWS::Lambda::Function` recurso. CloudFormation No tipo é derivado do`TargetArn`, enquanto que em AWS SAM você deve passar o tipo junto com `TargetArn` o.

 `DeploymentPreference`   <a name="sam-function-deploymentpreference"></a>
As configurações para permitir implantações graduais do Lambda.  
Se um `DeploymentPreference` objeto for especificado, AWS SAM cria um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html)chamado `ServerlessDeploymentApplication` (um por pilha), um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html)chamado `<function-logical-id>DeploymentGroup` e um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)chamado`CodeDeployServiceRole`.  
*Digite*: [DeploymentPreference](sam-property-function-deploymentpreference.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Consulte, também*: Para obter mais informações sobre essa propriedade, consulte [Implantando aplicativos sem servidor gradualmente com AWS SAM](automating-updates-to-serverless-apps.md).

 `Description`   <a name="sam-function-description"></a>
Uma descrição da função.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description)` propriedade de um `AWS::Lambda::Function` recurso.

 `DurableConfig`   <a name="sam-function-durableconfig"></a>
Configuração para funções duráveis. Permite a execução em estado com recursos automáticos de verificação e repetição.  
*Digite*: [DurableConfig](sam-property-function-durableconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Environment`   <a name="sam-function-environment"></a>
A configuração para o ambiente de runtime.  
*Type*: [Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)` propriedade de um `AWS::Lambda::Function` recurso.

 `EphemeralStorage`   <a name="sam-function-ephemeralstorage"></a>
Um objeto que especifica o espaço em disco, em MB, disponível para sua função do Lambda no `/tmp`.  
Para obter mais informações sobre essa propriedade, consulte [Ambiente de execução](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html) do *AWS Lambda Lambda no Guia do desenvolvedor*.  
*Digite*: [EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)` propriedade de um `AWS::Lambda::Function` recurso.

 `EventInvokeConfig`   <a name="sam-function-eventinvokeconfig"></a>
O objeto que descreve a configuração de invocação de eventos em uma função do Lambda.  
*Digite*: [EventInvokeConfiguration](sam-property-function-eventinvokeconfiguration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Events`   <a name="sam-function-events"></a>
Especifica os eventos que acionam essa função. Os eventos consistem de um tipo e um conjunto de propriedades que dependem desse tipo.  
*Digite*: [EventSource](sam-property-function-eventsource.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FileSystemConfigs`   <a name="sam-function-filesystemconfigs"></a>
Lista de [FileSystemConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html)objetos que especificam as configurações de conexão para um sistema de arquivos do Amazon Elastic File System (Amazon EFS).  
Se o seu modelo contiver um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html) recurso, você também deverá especificar um `DependsOn` atributo de recurso para garantir que o ponto de acesso NFS seja criado ou atualizado antes da função.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FileSystemConfigs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-filesystemconfigs)` propriedade de um `AWS::Lambda::Function` recurso.

 `FunctionName`   <a name="sam-function-functionname"></a>
Um nome para a função. Se você não especificar um nome, um nome exclusivo é gerado para você.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FunctionName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname)` propriedade de um `AWS::Lambda::Function` recurso.

 `FunctionScalingConfig`   <a name="sam-function-functionscalingconfig"></a>
Configura o comportamento de escalabilidade das funções Lambda executadas em provedores de capacidade. Define o número mínimo e máximo de ambientes de execução.  
*Digite*: [FunctionScalingConfig](sam-property-function-functionscalingconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FunctionScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionscalingconfig)` propriedade de um `AWS::Lambda::Function` recurso.

 `FunctionUrlConfig`   <a name="sam-function-functionurlconfig"></a>
O objeto que descreve o URL da função. O URL da função é um endpoint HTTP(S) que você pode usar para invocar a função.  
Para obter mais informações, consulte [Função URLs](https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html) no *Guia do AWS Lambda desenvolvedor*.  
*Digite*: [FunctionUrlConfig](sam-property-function-functionurlconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Handler`   <a name="sam-function-handler"></a>
A função em seu código que é chamada para iniciar a execução. Esta propriedade só será necessária se a `PackageType` propriedade estiver definida como `Zip`.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Handler](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler)` propriedade de um `AWS::Lambda::Function` recurso.

 `ImageConfig`   <a name="sam-function-imageconfig"></a>
O objeto usado para definir as configurações da imagem do contêiner Lambda. Para obter mais informações, consulte [Uso de imagens do contêiner com o Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html) no *AWS Lambda Guia do desenvolvedor*.  
*Digite*: [ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)` propriedade de um `AWS::Lambda::Function` recurso.

 `ImageUri`   <a name="sam-function-imageuri"></a>
O URI do repositório Amazon Elastic Container Registry (Amazon ECR) para a imagem de contêiner da função do Lambda. Essa propriedade só se aplica se a propriedade `PackageType` estiver definida como `Image`, caso contrário, ela será ignorada. Para obter mais informações, consulte [Uso de imagens do contêiner com o Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html) no *AWS Lambda Guia do desenvolvedor*.  
Se a `PackageType` propriedade estiver definida como`Image`, ela será obrigatória ou você deverá criar seu aplicativo com `Metadata` as entradas necessárias no arquivo AWS SAM de modelo. `ImageUri` Para obter mais informações, consulte [Compilação padrão com AWS SAM](serverless-sam-cli-using-build.md).
A criação de seu aplicativo com as entradas `Metadata` necessárias tem precedência sobre `ImageUri`, portanto, se você especificar ambas, `ImageUri` será ignorada.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ImageUri](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri)` propriedade do tipo de `AWS::Lambda::Function` `Code` dados.

 `InlineCode`   <a name="sam-function-inlinecode"></a>
O código da função do Lambda que é escrito diretamente no modelo. Essa propriedade só se aplica se a propriedade `PackageType` estiver definida como `Zip`, caso contrário, ela será ignorada.  
Se a propriedade `PackageType` estiver definida como `Zip` (padrão), uma das `CodeUri` ou `InlineCode` será obrigatória.
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ZipFile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile)` propriedade do tipo de `AWS::Lambda::Function` `Code` dados.

 `KmsKeyArn`   <a name="sam-function-kmskeyarn"></a>
O ARN de uma chave AWS Key Management Service (AWS KMS) que o Lambda usa para criptografar e descriptografar as variáveis de ambiente da sua função.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn)` propriedade de um `AWS::Lambda::Function` recurso.

 `Layers`   <a name="sam-function-layers"></a>
A lista do `LayerVersion` ARNs que essa função deve usar. A ordem especificada aqui é a ordem na qual eles serão importados ao executar a função do Lambda. A versão é um ARN completo, incluindo a versão, ou uma referência a um LayerVersion recurso. Por exemplo, uma referência para a `LayerVersion` será `!Ref MyLayer`, enquanto um ARN completo, incluindo a versão, será `arn:aws:lambda:region:account-id:layer:layer-name:version`.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Layers](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-layers)` propriedade de um `AWS::Lambda::Function` recurso.

 `LoggingConfig`   <a name="sam-function-loggingconfig"></a>
As configurações da função Amazon CloudWatch Logs.  
*Digite*: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig)propriedade de um `AWS::Lambda::Function` recurso.

 `MemorySize`   <a name="sam-function-memorysize"></a>
O tamanho da memória em MB alocado por invocação da função.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MemorySize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize)` propriedade de um `AWS::Lambda::Function` recurso.

 `PackageType`   <a name="sam-function-packagetype"></a>
O tipo de pacote de implantação da função do Lambda. Para obter mais informações, consulte [Pacote de implantação do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) no *AWS Lambda Guia do desenvolvedor*.  
**Observações:**  
1. Se essa propriedade for definida como `Zip` (padrão), então uma `CodeUri` ou outra `InlineCode` se aplica e `ImageUri` é ignorada.  
2. Se essa propriedade for definida como `Image`, então `ImageUri` só se aplica, `CodeUri` e ambas `InlineCode` são ignoradas. O repositório Amazon ECR necessário para armazenar a imagem do contêiner da função pode ser criado automaticamente pelo. AWS SAMCLI Para obter mais informações, consulte [sam deploy](sam-cli-command-reference-sam-deploy.md).  
*Valores válidos*: `Zip` ou `Image`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `Zip`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[PackageType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-packagetype)` propriedade de um `AWS::Lambda::Function` recurso.

 `PermissionsBoundary`   <a name="sam-function-permissionsboundary"></a>
O ARN de um limite de permissões a ser usado para a função de execução dessa função. Essa propriedade funciona somente se a função for gerada para você.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[PermissionsBoundary](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary)` propriedade de um `AWS::IAM::Role` recurso.

 `Policies`   <a name="sam-function-policies"></a>
Políticas de permissão para essa função. As políticas serão anexadas à função de execução padrão AWS Identity and Access Management (IAM) da função.  
Essa propriedade aceita um único valor ou uma lista de valores. Os valores permitidos incluem:  
+ [Modelos de políticas AWS SAM](serverless-policy-templates.md).
+ O ARN de uma [política AWS gerenciada ou ](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) [política gerenciada pelo cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies).
+ O nome de uma política AWS gerenciada da [lista](https://github.com/aws/serverless-application-model/blob/develop/samtranslator/internal/data/aws_managed_policies.json) a seguir.
+ Uma [política do IAM em linha](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) formatada em YAML como um mapa.
Se você especificar a propriedade `Role`, essa propriedade será ignorada.
*Tipo*: String \$1 List \$1 Map  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Policies](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies)` propriedade de um `AWS::IAM::Role` recurso.

 `PublishToLatestPublished`   <a name="sam-function-publishtolatestpublished"></a>
Especifica se a última versão da função deve ser publicada quando a função for atualizada.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[PublishToLatestPublished](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-publishtolatestpublished)` propriedade de um `AWS::Lambda::Function` recurso.

`PropagateTags`  <a name="sam-function-propagatetags"></a>
Indique se deseja ou não passar as tags da propriedade `Tags` para os recursos [AWS::Serverless::Function](sam-specification-generated-resources-function.md) gerados. Especifique `True` para propagar as tags nos recursos gerados.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `False`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ProvisionedConcurrencyConfig`   <a name="sam-function-provisionedconcurrencyconfig"></a>
A configuração de simultaneidade provisionada do alias de uma função.  
`ProvisionedConcurrencyConfig` só pode ser especificado se estiver `AutoPublishAlias` definido. Caso contrário, ocorrerá um erro.
*Digite*: [ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)` propriedade de um `AWS::Lambda::Alias` recurso.

 `RecursiveLoop`   <a name="sam-function-recursiveloop"></a>
O status da configuração de detecção de loops recursivos da função.  
Quando esse valor é definido como `Allow` e o Lambda detecta que a função está sendo invocada como parte de um loop recursivo, ele não executa qualquer ação.  
Quando esse valor é definido como `Terminate` e o Lambda detecta a invocação da função como parte de um loop recursivo, ele interrompe a invocação da função e notifica você.   
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RecursiveLoop](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-recursiveloop)` propriedade do `AWS::Lambda::Function` recurso.

 `ReservedConcurrentExecutions`   <a name="sam-function-reservedconcurrentexecutions"></a>
O número máximo de execuções simultâneas que você deseja reservar para a função.  
Para obter mais informações sobre essa propriedade, consulte [Escalabilidade da Função do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/scaling.html) no *AWS Lambda Guia do desenvolvedor*.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ReservedConcurrentExecutions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions)` propriedade de um `AWS::Lambda::Function` recurso.

 `Role`   <a name="sam-function-role"></a>
O ARN de um perfil do IAM a ser usado como perfil de execução dessa função.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role)` propriedade de um `AWS::Lambda::Function` recurso. Isso é necessário em CloudFormation , mas não em AWS SAM. Se uma função não for especificada, uma será criada para você com uma ID lógica de `<function-logical-id>Role`.

 `RolePath`   <a name="sam-function-rolepath"></a>
O caminho para a função de execução do IAM da função.  
Use essa propriedade quando a função for gerada para você. Não use quando a função for especificada com a propriedade `Role`.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Path](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path)` propriedade de um `AWS::IAM::Role` recurso.

 `Runtime`   <a name="sam-function-runtime"></a>
O identificador do [runtime](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) da função. Esta propriedade só será necessária se a `PackageType` propriedade estiver definida como `Zip`.  
Se você especificar o `provided` identificador dessa propriedade, poderá usar o atributo `Metadata` resource para AWS SAM instruir a criar o tempo de execução personalizado que essa função exige. Para obter mais informações sobre a criação de tempos de execução personalizados, consulte [Criação de funções Lambda com tempos de execução personalizados no AWS SAM](building-custom-runtimes.md).
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime)` propriedade de um `AWS::Lambda::Function` recurso.

 `RuntimeManagementConfig`   <a name="sam-function-runtimemanagementconfig"></a>
Configure opções de gerenciamento de runtime para suas funções do Lambda, como atualizações do ambiente de runtime, comportamento de reversão e seleção de uma versão de runtime específica. Para saber mais, consulte as [atualizações de runtime do Lambda](https://docs.aws.amazon.com//lambda/latest/dg/runtimes-update.html) no Guia do desenvolvedor do *AWS Lambda *.  
*Digite*: [RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)` propriedade de um `AWS::Lambda::Function` recurso.

 `SnapStart`   <a name="sam-function-snapstart"></a>
Crie uma captura de tela de qualquer nova versão da função do Lambda. Uma captura de tela é um estado em cachê da sua função inicializada, incluindo todas as suas dependências. A função é inicializada apenas uma vez e o estado em cachê é reutilizado para todas as futuras invocações, melhorando o desempenho do aplicativo ao reduzir o número de vezes que sua função deve ser inicializada. Para saber mais, consulte [Melhorando o desempenho de startups com o Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) no Guia do *AWS Lambda desenvolvedor*.  
*Digite*: [SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)` propriedade de um `AWS::Lambda::Function` recurso.

 `SourceKMSKeyArn`   <a name="sam-function-sourcekmskeyarn"></a>
Representa o ARN da chave do KMS usada para criptografar o código da função do CEP do cliente.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SourceKMSKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-sourcekmskeyarn)` propriedade de um tipo de `AWS::Lambda::Function` `Code` dados.

 `Tags`   <a name="sam-function-tags"></a>
Um mapa (string para string) que especifica as tags a serem adicionadas a esse estágio do API Gateway. Para obter detalhes sobre chaves e valores válidos para tags, consulte [Requisitos de chave e valor de tags](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html#configuration-tags-restrictions) no *AWS Lambda Guia do desenvolvedor*.  
Quando a pilha é criada, adiciona AWS SAM automaticamente uma `lambda:createdBy:SAM` tag a essa função Lambda e às funções padrão que são geradas para essa função.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags)` propriedade de um `AWS::Lambda::Function` recurso. A `Tags` propriedade in AWS SAM consiste em pares de valores-chave (enquanto CloudFormation nessa propriedade consiste em uma lista de `Tag` objetos). Além disso, adiciona AWS SAM automaticamente uma `lambda:createdBy:SAM` tag a essa função Lambda e às funções padrão que são geradas para essa função.

 `TenancyConfig`   <a name="sam-function-tenancyconfig"></a>
Configuração para o modo de isolamento de inquilinos do Lambda. Garante que os ambientes de execução nunca sejam compartilhados entre diferentes locatários IDs, fornecendo isolamento em nível de computação para aplicativos multilocatários.  
*Digite*: [TenancyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tenancyconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TenancyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tenancyconfig)` propriedade de um `AWS::Lambda::Function` recurso.

 `Timeout`   <a name="sam-function-timeout"></a>
O tempo máximo em segundos em que a função pode ser executada até ser interrompida.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão:* 3  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Timeout](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout)` propriedade de um `AWS::Lambda::Function` recurso.

 `Tracing`   <a name="sam-function-tracing"></a>
A sequência de caracteres que especifica o modo de rastreamento do X-Ray da função.  
+ `Active`— Ativa o rastreamento do X-Ray para a função.
+ `Disabled`— Desativa o X-Ray para a função.
+ `PassThrough`— Ativa o rastreamento do X-Ray para a função. A decisão de amostragem é delegada aos serviços posteriores.
Se especificada como `Active` ou `PassThrough` e a propriedade `Role` não estiver definida, o AWS SAM adiciona a política `arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess` à função de execução do Lambda que ela cria para você.  
Para obter mais informações sobre o X-Ray, consulte [Usando AWS Lambda com AWS X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html) no *Guia do AWS Lambda Desenvolvedor*.  
*Valores válidos*: [`Active`\$1`Disabled`\$1`PassThrough`]  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[TracingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig)` propriedade de um `AWS::Lambda::Function` recurso.

 `VersionDescription`   <a name="sam-function-versiondescription"></a>
Especifica o campo `Description` que é adicionado ao novo recurso da versão do Lambda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-description)` propriedade de um `AWS::Lambda::Version` recurso.

 `VersionDeletionPolicy`   <a name="sam-function-versiondeletionpolicy"></a>
Especifica a política de exclusão para o recurso da versão Lambda que é criado quando definido. `AutoPublishAlias` Isso controla se o recurso da versão é retido ou excluído quando a pilha é excluída.  
*Valores válidos*: `Delete`, `Retain` ou `Snapshot`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente. Ele define o `DeletionPolicy` atributo no `AWS::Lambda::Version` recurso gerado.

 `VpcConfig`   <a name="sam-function-vpcconfig"></a>
A configuração que permite que essa função acesse recursos privados em sua nuvem privada virtual (VPC).  
*Digite*: [VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)` propriedade de um `AWS::Lambda::Function` recurso.

## Valores de retorno
<a name="sam-resource-function-return-values"></a>

### Ref.
<a name="sam-resource-function-return-values-ref"></a>

Quando o ID lógico desse recurso é fornecido à função intrínseca do `Ref`, ele retorna o nome do recurso da função do Lambda subjacente.

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no * Guia do usuário do AWS CloudFormation *. 

### Fã:: GetAtt
<a name="sam-resource-function-return-values-fn--getatt"></a>

`Fn::GetAtt` retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra. 

Para obter mais informações sobre o uso do `Fn::GetAtt`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) no *AWS CloudFormation Guia do usuário*. 

`Arn`  <a name="Arn-fn::getatt"></a>
O ARN da função do Lambda subjacente.

## Exemplos
<a name="sam-resource-function-examples"></a>

### Função simples
<a name="sam-resource-function-examples-simple-function"></a>

Veja a seguir um exemplo básico de um recurso [AWS::Serverless::Function](#sam-resource-function) do tipo de pacote `Zip` (padrão) e código de função em um bucket do Amazon S3.

#### YAML
<a name="sam-resource-function-examples-simple-function--yaml"></a>

```
Type: AWS::Serverless::Function
Properties:
  Handler: index.handler
  Runtime: python3.9
  CodeUri: s3://bucket-name/key-name
```

### Exemplo de propriedades da função
<a name="sam-resource-function-examples-function-properties-example"></a>

Veja a seguir um exemplo de um [AWS::Serverless::Function](#sam-resource-function) tipo de pacote `Zip` (padrão) que usa `InlineCode`,`Layers`,`Tracing`, `Policies`, `Amazon EFS`, e uma fonte de eventos `Api`.

#### YAML
<a name="sam-resource-function-examples-function-properties-example--yaml"></a>

```
Type: AWS::Serverless::Function
DependsOn: MyMountTarget        # This is needed if an AWS::EFS::MountTarget resource is declared for EFS
Properties:
  Handler: index.handler
  Runtime: python3.9
  InlineCode: |
    def handler(event, context):
      print("Hello, world!")
  ReservedConcurrentExecutions: 30
  Layers:
    - Ref: MyLayer
  Tracing: Active
  Timeout: 120
  FileSystemConfigs:
    - Arn: !Ref MyEfsFileSystem
      LocalMountPath: /mnt/EFS
  Policies:
    - AWSLambdaExecute
    - Version: '2012-10-17		 	 	 ' 
      Statement:
        - Effect: Allow
          Action:
            - s3:GetObject
            - s3:GetObjectACL
          Resource: 'arn:aws:s3:::sam-s3-demo-bucket/*'
  Events:
    ApiEvent:
      Type: Api
      Properties:
        Path: /path
        Method: get
```

### ImageConfig exemplo
<a name="sam-resource-function-examples-imageconfig-example"></a>

Veja a seguir um exemplo de uma `ImageConfig` para uma função do Lambda do tipo de pacote `Image`.

#### YAML
<a name="sam-resource-function-examples-imageconfig-example--yaml"></a>

```
HelloWorldFunction:
  Type: AWS::Serverless::Function
  Properties:
    PackageType: Image
    ImageUri: account-id.dkr.ecr.region.amazonaws.com/ecr-repo-name:image-name
    ImageConfig:
      Command:
        - "app.lambda_handler"
      EntryPoint:
        - "entrypoint1"
      WorkingDirectory: "workDir"
```

### RuntimeManagementConfig exemplos
<a name="sam-resource-function-examples-runtimemanagementconfig-examples"></a>

Uma função do Lambda configurada para atualizar seu ambiente de runtime de acordo com o comportamento atual:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    Runtime: python3.9
    RuntimeManagementConfig:
      UpdateRuntimeOn: Auto
```

Uma função do Lambda configurada para atualizar seu ambiente de runtime quando a função é atualizada:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    Runtime: python3.9
    RuntimeManagementConfig:
      UpdateRuntimeOn: FunctionUpdate
```

Uma função do Lambda configurada para atualizar seu ambiente de runtime manualmente:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    Runtime: python3.9
    RuntimeManagementConfig:
      RuntimeVersionArn: arn:aws:lambda:us-east-1::runtime:4c459dd0104ee29ec65dcad056c0b3ddbe20d6db76b265ade7eda9a066859b1e
      UpdateRuntimeOn: Manual
```

### SnapStart exemplos
<a name="sam-resource-function-examples-snapstart-examples"></a>

Exemplo de uma função Lambda SnapStart ativada para futuras versões:

```
TestFunc
  Type: AWS::Serverless::Function
  Properties:
    ...
    SnapStart:
      ApplyOn: PublishedVersions
```

### TenancyConfig exemplos
<a name="sam-resource-function-examples-tenancyconfig-examples"></a>

Exemplo de uma função Lambda com o modo de isolamento de inquilino ativado:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    TenancyConfig:
      TenantIsolationMode: PER_TENANT
```

# DeadLetterQueue
<a name="sam-property-function-deadletterqueue"></a>

Especifica uma fila SQS ou um tópico do SNS para o qual ( AWS Lambda Lambda) envia eventos quando não consegue processá-los. Para obter mais informações sobre a funcionalidade de fila de mensagens não entregues, consulte [Filas de mensagens não entregues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-dlq) no *Guia do desenvolvedor do AWS Lambda *.

O SAM adicionará automaticamente a permissão apropriada à sua função de execução da função Lambda para dar acesso ao recurso do serviço Lambda. sqs: SendMessage será adicionado às filas SQS e SNS:Publish para tópicos do SNS.

## Sintaxe
<a name="sam-property-function-deadletterqueue-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-deadletterqueue-syntax.yaml"></a>

```
  [TargetArn](#sam-function-deadletterqueue-targetarn): String
  [Type](#sam-function-deadletterqueue-type): String
```

## Propriedades
<a name="sam-property-function-deadletterqueue-properties"></a>

 `TargetArn`   <a name="sam-function-deadletterqueue-targetarn"></a>
O nome de recurso da Amazon (ARN) de uma fila do Amazon SQS ou um tópico do Amazon SNS.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TargetArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html#cfn-lambda-function-deadletterconfig-targetarn)` propriedade do tipo de `AWS::Lambda::Function` `DeadLetterConfig` dados.

 `Type`   <a name="sam-function-deadletterqueue-type"></a>
O tipo de fila de mensagens não entregues.  
*Valores válidos*: `SNS`, `SQS`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-deadletterqueue--examples"></a>

### DeadLetterQueue
<a name="sam-property-function-deadletterqueue--examples--deadletterqueue"></a>

Exemplo de fila de mensagens não entregues para um tópico do SNS.

#### YAML
<a name="sam-property-function-deadletterqueue--examples--deadletterqueue--yaml"></a>

```
DeadLetterQueue:
  Type: SNS
  TargetArn: arn:aws:sns:us-east-2:123456789012:my-topic
```

# DeploymentPreference
<a name="sam-property-function-deploymentpreference"></a>

Especifica as configurações para permitir implantações graduais do Lambda. Para obter mais informações sobre como configurar implantações graduais do Lambda, consulte [Implantando aplicativos sem servidor gradualmente com AWS SAM](automating-updates-to-serverless-apps.md).

**nota**  
Você deve especificar um `AutoPublishAlias` em seu [AWS::Serverless::Function](sam-resource-function.md) para usar um objeto `DeploymentPreference`, caso contrário, ocorrerá um erro.

## Sintaxe
<a name="sam-property-function-deploymentpreference-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-deploymentpreference-syntax.yaml"></a>

```
  [Alarms](#sam-function-deploymentpreference-alarms): List
  [Enabled](#sam-function-deploymentpreference-enabled): Boolean
  [Hooks](#sam-function-deploymentpreference-hooks): Hooks
  [PassthroughCondition](#sam-function-deploymentpreference-passthroughcondition): Boolean
  [Role](#sam-function-deploymentpreference-role): String
  [TriggerConfigurations](#sam-function-deploymentpreference-triggerconfigurations): List
  [Type](#sam-function-deploymentpreference-type): String
```

## Propriedades
<a name="sam-property-function-deploymentpreference-properties"></a>

 `Alarms`   <a name="sam-function-deploymentpreference-alarms"></a>
Uma lista de CloudWatch alarmes que você deseja que sejam acionados por quaisquer erros gerados pela implantação.  
Essa propriedade aceita a função intrínseca `Fn::If`. Consulte a seção Exemplos na parte inferior deste tópico para ver um exemplo de modelo que usa `Fn::If`.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Enabled`   <a name="sam-function-deploymentpreference-enabled"></a>
Se essa preferência de implantação está habilitada.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: verdadeiro  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Hooks`   <a name="sam-function-deploymentpreference-hooks"></a>
Funções de validação do Lambda que são executadas antes e depois da mudança de tráfego.  
*Tipo*: [Ganchos](sam-property-function-hooks.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `PassthroughCondition`   <a name="sam-function-deploymentpreference-passthroughcondition"></a>
Se for True, e se essa preferência de implantação estiver ativada, a Condição da função será passada para o CodeDeploy recurso gerado. Geralmente, você deve definir isso como Verdadeiro. Caso contrário, o CodeDeploy recurso seria criado mesmo se a Condição da função fosse resolvida como False.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Role`   <a name="sam-function-deploymentpreference-role"></a>
Um ARN de função do IAM que CodeDeploy será usado para mudança de tráfego. Um perfil do IAM não será criado se ele for fornecido.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `TriggerConfigurations`   <a name="sam-function-deploymentpreference-triggerconfigurations"></a>
Uma lista das configurações de gatilho que você deseja associar ao grupo de implantação. Usado para notificar um tópico do SNS sobre eventos do ciclo de vida.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TriggerConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-triggerconfigurations)` propriedade de um `AWS::CodeDeploy::DeploymentGroup` recurso.

 `Type`   <a name="sam-function-deploymentpreference-type"></a>
No momento, existem duas categorias de tipos de implantação: Linear e Canário. Para obter mais informações sobre os tipos de implantação disponíveis, consulte [Implantando aplicativos sem servidor gradualmente com AWS SAM](automating-updates-to-serverless-apps.md).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-deploymentpreference--examples"></a>

### DeploymentPreference com ganchos pré e pós-trânsito.
<a name="sam-property-function-deploymentpreference--examples--deploymentpreference-with-pre--and-post-traffic-hooks."></a>

Exemplo de preferência de implantação que contém ganchos pré e pós-tráfego.

#### YAML
<a name="sam-property-function-deploymentpreference--examples--deploymentpreference-with-pre--and-post-traffic-hooks.--yaml"></a>

```
DeploymentPreference:
  Enabled: true
  Type: Canary10Percent10Minutes 
  Alarms:
    - !Ref: AliasErrorMetricGreaterThanZeroAlarm
    - !Ref: LatestVersionErrorMetricGreaterThanZeroAlarm
  Hooks:
    PreTraffic:
      !Ref: PreTrafficLambdaFunction
    PostTraffic:
      !Ref: PostTrafficLambdaFunction
```

### DeploymentPreference com função intrínseca Fn: :If
<a name="sam-property-function-deploymentpreference--examples--deploymentpreference-with-fn::if-intrinsic-function"></a>

Exemplo de preferência de implantação que usa `Fn::If` para configurar alarmes. Neste exemplo, `Alarm1` será configurado se `MyCondition` for `true`, `Alarm2` e `Alarm5` será configurado se `MyCondition` for `false`.

#### YAML
<a name="sam-property-function-deploymentpreference--examples--deploymentpreference-with-fn::if-intrinsic-function--yaml"></a>

```
DeploymentPreference:
  Enabled: true
  Type: Canary10Percent10Minutes 
  Alarms:
    Fn::If:
      - MyCondition
      - - Alarm1
      - - Alarm2
        - Alarm5
```

# Hooks
<a name="sam-property-function-hooks"></a>

Funções de validação do Lambda que são executadas antes e depois da mudança de tráfego.

**nota**  
As funções Lambda referenciadas nessa propriedade configuram o objeto `CodeDeployLambdaAliasUpdate` do recurso resultante [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html). Para obter mais informações, consulte a [CodeDeployLambdaAliasUpdate Política](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html#cfn-attributes-updatepolicy-codedeploylambdaaliasupdate) no *Guia AWS CloudFormation do Usuário*.

## Sintaxe
<a name="sam-property-function-hooks-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-hooks-syntax.yaml"></a>

```
  [PostTraffic](#sam-function-hooks-posttraffic): String
  [PreTraffic](#sam-function-hooks-pretraffic): String
```

## Propriedades
<a name="sam-property-function-hooks-properties"></a>

 `PostTraffic`   <a name="sam-function-hooks-posttraffic"></a>
Função do Lambda que é executada após a mudança de tráfego.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `PreTraffic`   <a name="sam-function-hooks-pretraffic"></a>
Função do Lambda que é executada antes da mudança de tráfego.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-hooks--examples"></a>

### Ganchos
<a name="sam-property-function-hooks--examples--hooks"></a>

Exemplos de funções de gancho

#### YAML
<a name="sam-property-function-hooks--examples--hooks--yaml"></a>

```
Hooks:
  PreTraffic:
    Ref: PreTrafficLambdaFunction
  PostTraffic:
    Ref: PostTrafficLambdaFunction
```

# DurableConfig
<a name="sam-property-function-durableconfig"></a>

Define configurações de execução duráveis para AWS Lambda funções. Funções duráveis podem ser executadas por até um ano e verificar automaticamente o progresso, permitindo fluxos de trabalho de longa duração e aplicativos tolerantes a falhas. Para obter mais informações sobre funções duráveis, consulte [Funções duráveis do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/durable-functions.html) no Guia do *AWS Lambda desenvolvedor*.

## Sintaxe
<a name="sam-property-function-durableconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-durableconfig-syntax.yaml"></a>

```
  [ExecutionTimeout](#sam-function-durableconfig-executiontimeout): Integer
  [RetentionPeriodInDays](#sam-function-durableconfig-retentionperiodindays): Integer
```

## Propriedades
<a name="sam-property-function-durableconfig-properties"></a>

 `ExecutionTimeout`   <a name="sam-function-durableconfig-executiontimeout"></a>
A quantidade de tempo (em segundos) em que o Lambda permite que uma função durável seja executada antes de interrompê-la. O máximo é um ano de 366 dias ou 31.622.400 segundos.  
*Tipo*: inteiro  
*Obrigatório*: sim  
*Minimum* (Mínimo): 1  
*Máximo*: 31622400  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ExecutionTimeout](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-durableconfig.html#cfn-lambda-function-durableconfig-executiontimeout)` propriedade do tipo de `AWS::Lambda::Function` `DurableConfig` dados.

 `RetentionPeriodInDays`   <a name="sam-function-durableconfig-retentionperiodindays"></a>
O número de dias após o encerramento de uma execução duradoura em que o Lambda retém seu histórico, de um a 90 dias. O padrão são 14 dias.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 14  
*Minimum* (Mínimo): 1  
*Máximo*: 90  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RetentionPeriodInDays](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-durableconfig.html#cfn-lambda-function-durableconfig-retentionperiodindays)` propriedade do tipo de `AWS::Lambda::Function` `DurableConfig` dados.

## Exemplos
<a name="sam-property-function-durableconfig--examples"></a>

### DurableConfig
<a name="sam-property-function-durableconfig--examples--durableconfig"></a>

Exemplo de configuração durável para uma função com tempo limite de execução de 1 hora e período de retenção de 7 dias.

#### YAML
<a name="sam-property-function-durableconfig--examples--durableconfig--yaml"></a>

```
DurableConfig:
  ExecutionTimeout: 3600
  RetentionPeriodInDays: 7
```

# EventInvokeConfiguration
<a name="sam-property-function-eventinvokeconfiguration"></a>

Opções de configuração para invocações [assíncronas](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html) de Lambda Alias ou versão.

## Sintaxe
<a name="sam-property-function-eventinvokeconfiguration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-eventinvokeconfiguration-syntax.yaml"></a>

```
  [DestinationConfig](#sam-function-eventinvokeconfiguration-destinationconfig): EventInvokeDestinationConfiguration
  [MaximumEventAgeInSeconds](#sam-function-eventinvokeconfiguration-maximumeventageinseconds): Integer
  [MaximumRetryAttempts](#sam-function-eventinvokeconfiguration-maximumretryattempts): Integer
```

## Propriedades
<a name="sam-property-function-eventinvokeconfiguration-properties"></a>

 `DestinationConfig`   <a name="sam-function-eventinvokeconfiguration-destinationconfig"></a>
Um objeto de configuração que especifica o destino de um evento depois que o Lambda processá-lo.  
*Digite*: [EventInvokeDestinationConfiguration](sam-property-function-eventinvokedestinationconfiguration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-destinationconfig.html)` propriedade de um `AWS::Lambda::EventInvokeConfig` recurso. O SAM requer um parâmetro extra, “Tipo”, que não existe em CloudFormation.

 `MaximumEventAgeInSeconds`   <a name="sam-function-eventinvokeconfiguration-maximumeventageinseconds"></a>
A idade máxima de uma solicitação que o Lambda envia a uma função para processamento.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumEventAgeInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-maximumeventageinseconds)` propriedade de um `AWS::Lambda::EventInvokeConfig` recurso.

 `MaximumRetryAttempts`   <a name="sam-function-eventinvokeconfiguration-maximumretryattempts"></a>
O número máximo de vezes para tentar novamente antes da função retornar um erro.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRetryAttempts](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html#cfn-lambda-eventinvokeconfig-maximumretryattempts)` propriedade de um `AWS::Lambda::EventInvokeConfig` recurso.

## Exemplos
<a name="sam-property-function-eventinvokeconfiguration--examples"></a>

### MaximumEventAgeInSeconds
<a name="sam-property-function-eventinvokeconfiguration--examples--maximumeventageinseconds"></a>

MaximumEventAgeInSeconds exemplo

#### YAML
<a name="sam-property-function-eventinvokeconfiguration--examples--maximumeventageinseconds--yaml"></a>

```
EventInvokeConfig:
  MaximumEventAgeInSeconds: 60
  MaximumRetryAttempts: 2
  DestinationConfig:
    OnSuccess:
      Type: SQS
      Destination: arn:aws:sqs:us-west-2:012345678901:my-queue
    OnFailure:
      Type: Lambda
      Destination: !GetAtt DestinationLambda.Arn
```

# EventInvokeDestinationConfiguration
<a name="sam-property-function-eventinvokedestinationconfiguration"></a>

Um objeto de configuração que especifica o destino de um evento depois que o Lambda processá-lo.

## Sintaxe
<a name="sam-property-function-eventinvokedestinationconfiguration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-eventinvokedestinationconfiguration-syntax.yaml"></a>

```
  [OnFailure](#sam-function-eventinvokedestinationconfiguration-onfailure): OnFailure
  [OnSuccess](#sam-function-eventinvokedestinationconfiguration-onsuccess): OnSuccess
```

## Propriedades
<a name="sam-property-function-eventinvokedestinationconfiguration-properties"></a>

 `OnFailure`   <a name="sam-function-eventinvokedestinationconfiguration-onfailure"></a>
Um destino para eventos que tiveram falha no processamento.  
*Digite*: [OnFailure](sam-property-function-onfailure.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[OnFailure](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-onfailure.html)` propriedade de um `AWS::Lambda::EventInvokeConfig` recurso. Requer `Type`, uma propriedade adicional somente para SAM.

 `OnSuccess`   <a name="sam-function-eventinvokedestinationconfiguration-onsuccess"></a>
Um destino para eventos que foram processados com êxito.  
*Digite*: [OnSuccess](sam-property-function-onsuccess.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[OnSuccess](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-onsuccess)` propriedade de um `AWS::Lambda::EventInvokeConfig` recurso. Requer `Type`, uma propriedade adicional somente para SAM.

## Exemplos
<a name="sam-property-function-eventinvokedestinationconfiguration--examples"></a>

### OnSuccess
<a name="sam-property-function-eventinvokedestinationconfiguration--examples--onsuccess"></a>

OnSuccess exemplo

#### YAML
<a name="sam-property-function-eventinvokedestinationconfiguration--examples--onsuccess--yaml"></a>

```
EventInvokeConfig:
  DestinationConfig:
    OnSuccess:
      Type: SQS
      Destination: arn:aws:sqs:us-west-2:012345678901:my-queue
    OnFailure:
      Type: Lambda
      Destination: !GetAtt DestinationLambda.Arn
```

# OnFailure
<a name="sam-property-function-onfailure"></a>

Um destino para eventos que tiveram falha no processamento.

## Sintaxe
<a name="sam-property-function-onfailure-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-onfailure-syntax.yaml"></a>

```
  [Destination](#sam-function-onfailure-destination): String
  [Type](#sam-function-onfailure-type): String
```

## Propriedades
<a name="sam-property-function-onfailure-properties"></a>

 `Destination`   <a name="sam-function-onfailure-destination"></a>
O nome de recurso da Amazon (ARN) do recurso de destino.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[OnFailure](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-onfailure.html)` propriedade de um `AWS::Lambda::EventInvokeConfig` recurso. O SAM adicionará todas as permissões necessárias ao perfil do IAM gerado automaticamente associado a essa função para acessar o recurso referenciado nessa propriedade.  
*Notas adicionais*: Se o tipo for Lambda/EventBridge, o destino é obrigatório.

 `Type`   <a name="sam-function-onfailure-type"></a>
Tipo do recurso referenciado no destino. Os tipos suportados são `SQS`, `SNS`, `S3`, `Lambda` e `EventBridge`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Notas adicionais*: Se o tipo for SQS/SNS e a `Destination` propriedade for deixada em branco, o SQS/SNS recurso será gerado automaticamente pelo SAM. Para referenciar o recurso, use `<function-logical-id>.DestinationQueue` para SQS ou `<function-logical-id>.DestinationTopic` SNS. Se o tipo for Lambda/EventBridge, `Destination` é obrigatório.

## Exemplos
<a name="sam-property-function-onfailure--examples"></a>

### EventInvoke Exemplo de configuração com destinos SQS e Lambda
<a name="sam-property-function-onfailure--examples--eventinvoke-configuration-example-with-sqs-and-lambda-destinations"></a>

Neste exemplo, nenhum Destino é fornecido para a OnSuccess configuração do SQS, então o SAM cria implicitamente uma fila SQS e adiciona todas as permissões necessárias. Além disso, neste exemplo, um Destino para um recurso Lambda declarado no arquivo de modelo é especificado na OnFailure configuração, então o SAM adiciona as permissões necessárias a essa função Lambda para chamar a função Lambda de destino.

#### YAML
<a name="sam-property-function-onfailure--examples--eventinvoke-configuration-example-with-sqs-and-lambda-destinations--yaml"></a>

```
EventInvokeConfig:
  DestinationConfig:
    OnSuccess:
      Type: SQS
    OnFailure:
      Type: Lambda
      Destination: !GetAtt DestinationLambda.Arn  # Arn of a Lambda function declared in the template file.
```

### EventInvoke Exemplo de configuração com destino SNS
<a name="sam-property-function-onfailure--examples--eventinvoke-configuration-example-with-sns-destination"></a>

Neste exemplo, um destino é fornecido para um tópico do SNS declarado no arquivo de modelo para a OnSuccess configuração.

#### YAML
<a name="sam-property-function-onfailure--examples--eventinvoke-configuration-example-with-sns-destination--yaml"></a>

```
EventInvokeConfig:
  DestinationConfig:
    OnSuccess:
      Type: SNS
      Destination:
        Ref: DestinationSNS       # Arn of an SNS topic declared in the tempate file
```

# OnSuccess
<a name="sam-property-function-onsuccess"></a>

Um destino para eventos que foram processados com êxito.

## Sintaxe
<a name="sam-property-function-onsuccess-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-onsuccess-syntax.yaml"></a>

```
  [Destination](#sam-function-onsuccess-destination): String
  [Type](#sam-function-onsuccess-type): String
```

## Propriedades
<a name="sam-property-function-onsuccess-properties"></a>

 `Destination`   <a name="sam-function-onsuccess-destination"></a>
O nome de recurso da Amazon (ARN) do recurso de destino.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[OnSuccess](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventinvokeconfig-onsuccess)` propriedade de um `AWS::Lambda::EventInvokeConfig` recurso. O SAM adicionará todas as permissões necessárias ao perfil do IAM gerado automaticamente associado a essa função para acessar o recurso referenciado nessa propriedade.  
*Notas adicionais*: Se o tipo for Lambda/EventBridge, o destino é obrigatório.

 `Type`   <a name="sam-function-onsuccess-type"></a>
Tipo do recurso referenciado no destino. Os tipos suportados são `SQS`, `SNS`, `S3`, `Lambda` e `EventBridge`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Notas adicionais*: Se o tipo for SQS/SNS e a `Destination` propriedade for deixada em branco, o SQS/SNS recurso será gerado automaticamente pelo SAM. Para referenciar o recurso, use `<function-logical-id>.DestinationQueue` para SQS ou `<function-logical-id>.DestinationTopic` SNS. Se o tipo for Lambda/EventBridge, `Destination` é obrigatório.

## Exemplos
<a name="sam-property-function-onsuccess--examples"></a>

### EventInvoke Exemplo de configuração com destinos SQS e Lambda
<a name="sam-property-function-onsuccess--examples--eventinvoke-configuration-example-with-sqs-and-lambda-destinations"></a>

Neste exemplo, nenhum Destino é fornecido para a OnSuccess configuração do SQS, então o SAM cria implicitamente uma fila SQS e adiciona todas as permissões necessárias. Além disso, neste exemplo, um Destino para um recurso Lambda declarado no arquivo de modelo é especificado na OnFailure configuração, então o SAM adiciona as permissões necessárias a essa função Lambda para chamar a função Lambda de destino.

#### YAML
<a name="sam-property-function-onsuccess--examples--eventinvoke-configuration-example-with-sqs-and-lambda-destinations--yaml"></a>

```
EventInvokeConfig:
  DestinationConfig:
    OnSuccess:
      Type: SQS
    OnFailure:
      Type: Lambda
      Destination: !GetAtt DestinationLambda.Arn  # Arn of a Lambda function declared in the template file.
```

### EventInvoke Exemplo de configuração com destino SNS
<a name="sam-property-function-onsuccess--examples--eventinvoke-configuration-example-with-sns-destination"></a>

Neste exemplo, um destino é fornecido para um tópico do SNS declarado no arquivo de modelo para a OnSuccess configuração.

#### YAML
<a name="sam-property-function-onsuccess--examples--eventinvoke-configuration-example-with-sns-destination--yaml"></a>

```
EventInvokeConfig:
  DestinationConfig:
    OnSuccess:
      Type: SNS
      Destination:
        Ref: DestinationSNS       # Arn of an SNS topic declared in the tempate file
```

# EventSource
<a name="sam-property-function-eventsource"></a>

O objeto que descreve a origem dos eventos que acionam a função. Cada evento consiste em um tipo e um conjunto de propriedades que dependem desse tipo. Para obter mais informações sobre as propriedades de cada fonte de eventos, consulte o tópico correspondente a esse tipo.

## Sintaxe
<a name="sam-property-function-eventsource-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-eventsource-syntax.yaml"></a>

```
  [Properties](#sam-function-eventsource-properties): AlexaSkill | Api | CloudWatchEvent | CloudWatchLogs | Cognito | DocumentDB | DynamoDB | EventBridgeRule | HttpApi | IoTRule | Kinesis | MQ | MSK | S3 | Schedule | ScheduleV2 | SelfManagedKafka | SNS | SQS
  [Type](#sam-function-eventsource-type): String
```

## Propriedades
<a name="sam-property-function-eventsource-properties"></a>

 `Properties`   <a name="sam-function-eventsource-properties"></a>
Objeto que descreve as propriedades desse mapeamento de eventos. O conjunto de propriedades deve estar em conformidade com o Tipo definido.  
*Tipo* [[[[[: [AlexaSkill](sam-property-function-alexaskill.md)\$1 [Api](sam-property-function-api.md) \$1 \$1 [CloudWatchEvent](sam-property-function-cloudwatchevent.md)\$1 [Cognito [CloudWatchLogs](sam-property-function-cloudwatchlogs.md)](sam-property-function-cognito.md)\$1 DocumentDB \$1 [DynamoDB](sam-property-function-documentdb.md)[\$1 \$1 \$1 Io](sam-property-function-dynamodb.md) \$1 [Kinesis \$1 MQ EventBridgeRule[EventBridgeRule](sam-property-function-eventbridgerule.md) \$1 HttpApi[HttpApi](sam-property-function-httpapi.md) MSK \$1 [S3 TRule](sam-property-function-iotrule.md) \$1 Cronograma](sam-property-function-kinesis.md)[\$1 [ScheduleV2 \$1 \$1](sam-property-function-mq.md) SNS \$1 SQS [SelfManagedKafka](sam-property-function-selfmanagedkafka.md)](sam-property-function-msk.md)](sam-property-function-sqs.md)](sam-property-function-sns.md)](sam-property-function-schedulev2.md)](sam-property-function-schedule.md)](sam-property-function-s3.md)  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Type`   <a name="sam-function-eventsource-type"></a>
O tipo de evento.  
*Valores válidos*: `AlexaSkill`, `Api`, `CloudWatchEvent`, `CloudWatchLogs`, `Cognito`, `DocumentDB`, `DynamoDB`, `EventBridgeRule`, `HttpApi`, `IoTRule`, `Kinesis`, `MQ`, `MSK`, `S3`, `Schedule`, `ScheduleV2`, `SelfManagedKafka`, `SNS`, `SQS`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-eventsource--examples"></a>

### APIEvent
<a name="sam-property-function-eventsource--examples--apievent"></a>

Exemplo de uso de um evento de API

#### YAML
<a name="sam-property-function-eventsource--examples--apievent--yaml"></a>

```
ApiEvent:
  Type: Api
  Properties:
    Method: get
    Path: /group/{user}
    RestApiId: 
      Ref: MyApi
```

# AlexaSkill
<a name="sam-property-function-alexaskill"></a>

O objeto que descreve um tipo de fonte de evento de `AlexaSkill`.

## Sintaxe
<a name="sam-property-function-alexaskill-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-alexaskill-syntax.yaml"></a>

```
  [SkillId](#sam-function-alexaskill-skillid): String
```

## Propriedades
<a name="sam-property-function-alexaskill-properties"></a>

 `SkillId`   <a name="sam-function-alexaskill-skillid"></a>
O Alexa Skill ID para sua skill da Alexa. Para obter mais informações sobre o Skill ID, consulte [ Configurar o gatilho para uma função do Lambda](https://developer.amazon.com/docs/custom-skills/host-a-custom-skill-as-an-aws-lambda-function.html#configuring-the-alexa-skills-kit-trigger) na documentação do Alexa Skills Kit.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-alexaskill--examples"></a>

### AlexaSkillTrigger
<a name="sam-property-function-alexaskill--examples--alexaskilltrigger"></a>

Exemplo de evento de habilidade do Alexa

#### YAML
<a name="sam-property-function-alexaskill--examples--alexaskilltrigger--yaml"></a>

```
AlexaSkillEvent:
  Type: AlexaSkill
```

# Api
<a name="sam-property-function-api"></a>

O objeto que descreve um tipo de origem do evento `Api`. Se um recurso [AWS::Serverless::Api](sam-resource-api.md) for definido, os valores do caminho e do método devem corresponder a uma operação na definição de OpenAPI da API.

Se nenhum [AWS::Serverless::Api](sam-resource-api.md) for definido, a entrada e a saída da função serão uma representação da solicitação HTTP e da resposta HTTP.

Por exemplo, usando a JavaScript API, o código de status e o corpo da resposta podem ser controlados retornando um objeto com as chaves statusCode e body.

## Sintaxe
<a name="sam-property-function-api-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-api-syntax.yaml"></a>

```
  [Auth](#sam-function-api-auth): ApiFunctionAuth
  [Method](#sam-function-api-method): String
  [Path](#sam-function-api-path): String
  [RequestModel](#sam-function-api-requestmodel): RequestModel
  [RequestParameters](#sam-function-api-requestparameters): List of [ String | RequestParameter ]
  [RestApiId](#sam-function-api-restapiid): String
  [ResponseTransferMode](#sam-function-api-responsetransfermode): String
  TimeoutInMillis: Integer
```

## Propriedades
<a name="sam-property-function-api-properties"></a>

 `Auth`   <a name="sam-function-api-auth"></a>
Configuração de autenticação para essa Api\$1Path\$1Method específica.  
Útil parar substituir a configuração `DefaultAuthorizer` da API para um caminho individual, quando nenhum `DefaultAuthorizer` for especificado, ou para substituir a configuração padrão `ApiKeyRequired`.  
*Digite*: [ApiFunctionAuth](sam-property-function-apifunctionauth.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Method`   <a name="sam-function-api-method"></a>
Método HTTP para o qual essa função é invocada. As opções incluem `DELETE`, `GET`, `HEAD`, `OPTIONS`, `PATCH`, `POST`, `PUT` e `ANY`. Consulte [Set up an HTTP method](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-settings-method-request.html#setup-method-add-http-method) in the *API Gateway Developer Guide* para obter mais detalhes.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Path`   <a name="sam-function-api-path"></a>
Caminho Uri para o qual essa função é invocada. Deve começar com `/`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `RequestModel`   <a name="sam-function-api-requestmodel"></a>
Solicite o modelo a ser usado para essa Api\$1Path\$1Method específica. Isso deve fazer referência ao nome de um modelo especificado na seção `Models` de um recurso [AWS::Serverless::Api](sam-resource-api.md).  
*Digite*: [RequestModel](sam-property-function-requestmodel.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `RequestParameters`   <a name="sam-function-api-requestparameters"></a>
Solicite a configuração dos parâmetros para este Api\$1Path\$1Method específico. Todos os nomes de parâmetros devem começar com `method.request` e devem ser limitados a `method.request.header`, `method.request.querystring` ou a `method.request.path`.  
Uma lista pode conter cadeias de caracteres de nomes de parâmetros e [RequestParameter](sam-property-function-requestparameter.md)objetos. Para cadeias de caracteres, as propriedades `Required` e `Caching` serão padronizadas como `false`.  
*Tipo*: Lista de [String \$1 [RequestParameter](sam-property-function-requestparameter.md)]  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `RestApiId`   <a name="sam-function-api-restapiid"></a>
Identificador de um RestApi recurso, que deve conter uma operação com o caminho e o método fornecidos. Normalmente, isso é definido para fazer referência a um recurso [AWS::Serverless::Api](sam-resource-api.md) definido nesse modelo.  
Se você não definir essa propriedade, AWS SAM cria um [AWS::Serverless::Api](sam-resource-api.md) recurso padrão usando um `OpenApi` documento gerado. Esse recurso contém uma união de todos os caminhos e métodos definidos por eventos `Api` no mesmo modelo que não especificam um arquivo `RestApiId`.  
Isso não pode fazer referência a um recurso [AWS::Serverless::Api](sam-resource-api.md) definido em outro modelo.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`ResponseTransferMode`  <a name="sam-function-api-responsetransfermode"></a>
O modo de transferência de resposta para a integração da função Lambda. Defina como `RESPONSE_STREAM` para habilitar o streaming de respostas do Lambda por meio do API Gateway, permitindo que a função transmita respostas de volta aos clientes. Quando definido como`RESPONSE_STREAM`, o API Gateway usa a API Lambda InvokeWithResponseStreaming .  
*Tipo:* string  
*Obrigatório*: não  
*Valores válidos*: `BUFFERED` \$1 `RESPONSE_STREAM`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html#cfn-apigateway-method-integration-responsetransfermode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html#cfn-apigateway-method-integration-responsetransfermode)propriedade de um`AWS::ApiGateway::Method Integration`.

`TimeoutInMillis`  <a name="sam-function-api-timeoutinmillis"></a>
Tempo limite personalizado entre 50 e 29.000 milissegundos.  
Quando você especifica essa propriedade, AWS SAM modifica sua definição de OpenAPI. A definição da OpenAPI deve ser especificada em linha usando a propriedade `DefinitionBody`. 
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 29.000 milissegundos ou 29 segundos  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-api--examples"></a>

### Exemplo básico
<a name="sam-property-function-api--examples--apievent"></a>

#### YAML
<a name="sam-property-function-api--examples--apievent--yaml"></a>

```
Events:
  ApiEvent:
    Type: Api
    Properties:
      Path: /path
      Method: get
      RequestParameters:
        - method.request.header.Authorization
        - method.request.querystring.keyword:
            Required: true
            Caching: false
```

# ApiFunctionAuth
<a name="sam-property-function-apifunctionauth"></a>

Configura a autorização no nível do evento, para uma API, um caminho e um método específicos.

## Sintaxe
<a name="sam-property-function-apifunctionauth-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-apifunctionauth-syntax.yaml"></a>

```
  [ApiKeyRequired](#sam-function-apifunctionauth-apikeyrequired): Boolean
  [AuthorizationScopes](#sam-function-apifunctionauth-authorizationscopes): List
  [Authorizer](#sam-function-apifunctionauth-authorizer): String
  [InvokeRole](#sam-function-apifunctionauth-invokerole): String
  OverrideApiAuth: Boolean
  [ResourcePolicy](#sam-function-apifunctionauth-resourcepolicy): ResourcePolicyStatement
```

## Propriedades
<a name="sam-property-function-apifunctionauth-properties"></a>

 `ApiKeyRequired`   <a name="sam-function-apifunctionauth-apikeyrequired"></a>
Requer uma chave de API para essa API, caminho e método.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AuthorizationScopes`   <a name="sam-function-apifunctionauth-authorizationscopes"></a>
Os escopos de autorização a serem aplicados a essa API, caminho e método.  
Os escopos que você especificar substituirão quaisquer escopos aplicados pela propriedade `DefaultAuthorizer`, caso você a tenha especificado.  
*Tipo*: Lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Authorizer`   <a name="sam-function-apifunctionauth-authorizer"></a>
O `Authorizer` para uma função específica.  
Se você tiver um autorizador global especificado para seu recurso `AWS::Serverless::Api`, poderá substituí-lo configurando como `Authorizer` `NONE`. Para ver um exemplo, consulte [Substitua um autorizador global para sua API REST do Amazon API Gateway](#sam-property-function-apifunctionauth--examples--override).  
Se você usar a propriedade `DefinitionBody` de um recurso `AWS::Serverless::Api` para descrever sua API, deverá usar o `OverrideApiAuth` com o `Authorizer` para substituir seu autorizador global. Consulte `OverrideApiAuth` para obter mais informações.
*Valores válidos*:`AWS_IAM`,`NONE`, ou a ID lógica de qualquer autorizador definido em seu AWS SAM modelo.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `InvokeRole`   <a name="sam-function-apifunctionauth-invokerole"></a>
Especifica o `InvokeRole` a ser usado para autorização `AWS_IAM`.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `CALLER_CREDENTIALS`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Notas adicionais*: `CALLER_CREDENTIALS` mapeia para `arn:aws:iam:::<user>/`, que usa as credenciais do chamador para invocar o endpoint.

`OverrideApiAuth`  <a name="sam-function-apifunctionauth-overrideapiauth"></a>
Especifique como `true` para substituir a configuração global do autorizador do seu recurso `AWS::Serverless::Api`. Essa propriedade só é necessária se você especificar um autorizador global e usar a propriedade `DefinitionBody` de um recurso `AWS::Serverless::Api` para descrever sua API.  
Quando você especificar `OverrideApiAuth` como`true`, AWS SAM substituirá seu autorizador global por quaisquer valores fornecidos para `ApiKeyRequired``Authorizer`, ou. `ResourcePolicy` Portanto, pelo menos uma dessas propriedades também deve ser especificada durante o uso do `OverrideApiAuth`. Para ver um exemplo, consulte [Substituir um autorizador global quando DefinitionBody for especificado AWS::Serverless::Api](#sam-property-function-apifunctionauth--examples--override2).
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ResourcePolicy`   <a name="sam-function-apifunctionauth-resourcepolicy"></a>
Configure a política de recursos para esse caminho em uma API.  
*Digite*: [ResourcePolicyStatement](sam-property-function-resourcepolicystatement.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-apifunctionauth--examples"></a>

### Function-Auth
<a name="sam-property-function-apifunctionauth--examples--function-auth"></a>

O exemplo a seguir especifica a autorização no nível da função.

#### YAML
<a name="sam-property-function-apifunctionauth--examples--function-auth--yaml"></a>

```
Auth:
  ApiKeyRequired: true
  Authorizer: NONE
```

### Substitua um autorizador global para sua API REST do Amazon API Gateway
<a name="sam-property-function-apifunctionauth--examples--override"></a>

Você pode especificar um autorizador global para seu recurso `AWS::Serverless::Api`. Este é um exemplo que configura um autorizador padrão global:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyApiWithLambdaRequestAuth:
    Type: AWS::Serverless::Api
    Properties:
      ...
      Auth:
        Authorizers:
          MyLambdaRequestAuth:
            FunctionArn: !GetAtt MyAuthFn.Arn
        DefaultAuthorizer: MyLambdaRequestAuth
```

Para substituir o autorizador padrão da sua AWS Lambda função, você pode especificar `Authorizer` como. `NONE` Este é um exemplo:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  ...
  MyFn:
    Type: AWS::Serverless::Function
    Properties:
      ...
      Events:
        LambdaRequest:
          Type: Api
          Properties:
            RestApiId: !Ref MyApiWithLambdaRequestAuth
            Method: GET
            Auth:
              Authorizer: NONE
```

### Substituir um autorizador global quando DefinitionBody for especificado AWS::Serverless::Api
<a name="sam-property-function-apifunctionauth--examples--override2"></a>

Ao usar a propriedade `DefinitionBody` para descrever seu recurso `AWS::Serverless::Api`, o método de substituição anterior não funciona. Veja a seguir um exemplo de uso da propriedade `DefinitionBody` para um recurso `AWS::Serverless::Api`:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyApiWithLambdaRequestAuth:
    Type: AWS::Serverless::Api
    Properties:
      ...
      DefinitionBody:
        swagger: 2.0
        ...
        paths:
          /lambda-request:
            ...
      Auth:
        Authorizers:
          MyLambdaRequestAuth:
            FunctionArn: !GetAtt MyAuthFn.Arn
        DefaultAuthorizer: MyLambdaRequestAuth
```

Para substituir o autorizador global, use a propriedade `OverrideApiAuth`. Veja a seguir um exemplo que usa o `OverrideApiAuth` para substituir o autorizador global pelo valor fornecido para `Authorizer`:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyApiWithLambdaRequestAuth:
    Type: AWS::Serverless::Api
    Properties:
      ...
      DefinitionBody:
        swagger: 2-0
        ...
        paths:
          /lambda-request:
            ...
      Auth:
        Authorizers:
          MyLambdaRequestAuth:
            FunctionArn: !GetAtt MyAuthFn.Arn
        DefaultAuthorizer: MyLambdaRequestAuth
    
    MyAuthFn:
      Type: AWS::Serverless::Function
      ...
    
    MyFn:
      Type: AWS::Serverless::Function
        Properties:
          ...
          Events:
            LambdaRequest:
              Type: Api
              Properties:
                RestApiId: !Ref MyApiWithLambdaRequestAuth
                Method: GET
                Auth:
                  Authorizer: NONE
                  OverrideApiAuth: true
                Path: /lambda-token
```

# ResourcePolicyStatement
<a name="sam-property-function-resourcepolicystatement"></a>

Configura uma política de recursos para todos os métodos e caminhos de uma API. Para obter mais informações sobre políticas de recursos, consulte Como [controlar o acesso a uma API com as políticas de recursos do API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies.html) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-function-resourcepolicystatement-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-resourcepolicystatement-syntax.yaml"></a>

```
  [AwsAccountBlacklist](#sam-function-resourcepolicystatement-awsaccountblacklist): List
  [AwsAccountWhitelist](#sam-function-resourcepolicystatement-awsaccountwhitelist): List
  [CustomStatements](#sam-function-resourcepolicystatement-customstatements): List
  [IntrinsicVpcBlacklist](#sam-function-resourcepolicystatement-intrinsicvpcblacklist): List
  [IntrinsicVpcWhitelist](#sam-function-resourcepolicystatement-intrinsicvpcwhitelist): List
  [IntrinsicVpceBlacklist](#sam-function-resourcepolicystatement-intrinsicvpceblacklist): List
  [IntrinsicVpceWhitelist](#sam-function-resourcepolicystatement-intrinsicvpcewhitelist): List
  [IpRangeBlacklist](#sam-function-resourcepolicystatement-iprangeblacklist): List
  [IpRangeWhitelist](#sam-function-resourcepolicystatement-iprangewhitelist): List
  [SourceVpcBlacklist](#sam-function-resourcepolicystatement-sourcevpcblacklist): List
  [SourceVpcWhitelist](#sam-function-resourcepolicystatement-sourcevpcwhitelist): List
```

## Propriedades
<a name="sam-property-function-resourcepolicystatement-properties"></a>

 `AwsAccountBlacklist`   <a name="sam-function-resourcepolicystatement-awsaccountblacklist"></a>
As AWS contas a serem bloqueadas.  
*Tipo*: lista de strings  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AwsAccountWhitelist`   <a name="sam-function-resourcepolicystatement-awsaccountwhitelist"></a>
As AWS contas a serem permitidas. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista de strings  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `CustomStatements`   <a name="sam-function-resourcepolicystatement-customstatements"></a>
Uma lista de declarações de política de recursos personalizadas a serem aplicadas a essa API. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpcBlacklist`   <a name="sam-function-resourcepolicystatement-intrinsicvpcblacklist"></a>
A lista de nuvens privadas virtuais (VPCs) a serem bloqueadas, em que cada VPC é especificada como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a função `Ref` [intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpcWhitelist`   <a name="sam-function-resourcepolicystatement-intrinsicvpcwhitelist"></a>
A lista de VPCs permissões, em que cada VPC é especificada como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a função `Ref` [intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpceBlacklist`   <a name="sam-function-resourcepolicystatement-intrinsicvpceblacklist"></a>
A lista de endpoints da VPC a serem bloqueados, em que cada endpoint da VPC é especificado como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a `Ref` [função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpceWhitelist`   <a name="sam-function-resourcepolicystatement-intrinsicvpcewhitelist"></a>
A lista de endpoints da VPC a serem permitidos, em que cada endpoint da VPC é especificado como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a `Ref` [função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IpRangeBlacklist`   <a name="sam-function-resourcepolicystatement-iprangeblacklist"></a>
Os endereços IP ou intervalos de endereços a serem bloqueados. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IpRangeWhitelist`   <a name="sam-function-resourcepolicystatement-iprangewhitelist"></a>
Os endereços IP ou intervalos de endereços a serem permitidos.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceVpcBlacklist`   <a name="sam-function-resourcepolicystatement-sourcevpcblacklist"></a>
A VPC de origem ou os endpoints da VPC a serem bloqueados. Os nomes da VPC de origem devem começar com `"vpc-"` e os nomes dos endpoints da VPC de origem devem começar com `"vpce-"`. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceVpcWhitelist`   <a name="sam-function-resourcepolicystatement-sourcevpcwhitelist"></a>
A VPC de origem ou os endpoints da VPC a serem permitidos. Os nomes da VPC de origem devem começar com `"vpc-"` e os nomes dos endpoints da VPC de origem devem começar com `"vpce-"`.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-resourcepolicystatement--examples"></a>

### Exemplo de política de recursos
<a name="sam-property-function-resourcepolicystatement--examples--resource-policy-example"></a>

O exemplo a seguir bloqueia dois endereços IP e uma VPC de origem e permite uma AWS conta.

#### YAML
<a name="sam-property-function-resourcepolicystatement--examples--resource-policy-example--yaml"></a>

```
Auth:
  ResourcePolicy:
    CustomStatements: [{
                         "Effect": "Allow",
                         "Principal": "*",
                         "Action": "execute-api:Invoke",
                         "Resource": "execute-api:/Prod/GET/pets",
                         "Condition": {
                           "IpAddress": {
                             "aws:SourceIp": "1.2.3.4"
                           }
                         }
                       }]
    IpRangeBlacklist:
      - "10.20.30.40"
      - "1.2.3.4"
    SourceVpcBlacklist:
      - "vpce-1a2b3c4d"
    AwsAccountWhitelist:
      - "111122223333"
    IntrinsicVpcBlacklist:
      - "{{resolve:ssm:SomeVPCReference:1}}" 
      - !Ref MyVPC
    IntrinsicVpceWhitelist:
      - "{{resolve:ssm:SomeVPCEReference:1}}" 
      - !Ref MyVPCE
```

# RequestModel
<a name="sam-property-function-requestmodel"></a>

Configura um modelo de solicitação para uma API\$1Path\$1Method específica.

## Sintaxe
<a name="sam-property-function-requestmodel-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-requestmodel-syntax.yaml"></a>

```
  [Model](#sam-function-requestmodel-model): String
  [Required](#sam-function-requestmodel-required): Boolean
  [ValidateBody](#sam-function-requestmodel-validatebody): Boolean
  [ValidateParameters](#sam-function-requestmodel-validateparameters): Boolean
```

## Propriedades
<a name="sam-property-function-requestmodel-properties"></a>

 `Model`   <a name="sam-function-requestmodel-model"></a>
Nome de um modelo definido na propriedade Models do[AWS::Serverless::Api](sam-resource-api.md).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Required`   <a name="sam-function-requestmodel-required"></a>
Adiciona uma `required` propriedade na seção de parâmetros da OpenApi definição para o determinado endpoint da API.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ValidateBody`   <a name="sam-function-requestmodel-validatebody"></a>
Especifica se o API Gateway usa o `Model` para validar o corpo da solicitação. Para obter mais informações, consulte [Ativar validação de solicitação no API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) no *Guia do desenvolvedor do API Gateway*.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ValidateParameters`   <a name="sam-function-requestmodel-validateparameters"></a>
Especifica se o API Gateway usa o `Model` para validar parâmetros do caminho da solicitação, cadeias de caracteres de consulta e cabeçalhos. Para obter mais informações, consulte [Ativar validação de solicitação no API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) no *Guia do desenvolvedor do API Gateway*.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-requestmodel--examples"></a>

### Modelo de solicitação
<a name="sam-property-function-requestmodel--examples--request-model"></a>

Exemplo de modelo de solicitação

#### YAML
<a name="sam-property-function-requestmodel--examples--request-model--yaml"></a>

```
RequestModel:
  Model: User
  Required: true
  ValidateBody: true
  ValidateParameters: true
```

# RequestParameter
<a name="sam-property-function-requestparameter"></a>

Configure o parâmetro de solicitação para uma API\$1Path\$1Method específica.

Uma `Required` ou a propriedade `Caching` precisa ser especificada para o parâmetro de solicitação

## Sintaxe
<a name="sam-property-function-requestparameter-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-requestparameter-syntax.yaml"></a>

```
  [Caching](#sam-function-requestparameter-caching): Boolean
  [Required](#sam-function-requestparameter-required): Boolean
```

## Propriedades
<a name="sam-property-function-requestparameter-properties"></a>

 `Caching`   <a name="sam-function-requestparameter-caching"></a>
Adiciona uma `cacheKeyParameters` seção à OpenApi definição do API Gateway  
*Tipo*: booliano  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Required`   <a name="sam-function-requestparameter-required"></a>
Este campo especifica se um parâmetro é necessário  
*Tipo*: booliano  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-requestparameter--examples"></a>

### Parâmetro de solicitação
<a name="sam-property-function-requestparameter--examples--request-parameter"></a>

Exemplo de configuração de parâmetros de solicitação

#### YAML
<a name="sam-property-function-requestparameter--examples--request-parameter--yaml"></a>

```
RequestParameters:
  - method.request.header.Authorization:
      Required: true
      Caching: true
```

# CloudWatchEvent
<a name="sam-property-function-cloudwatchevent"></a>

O objeto que descreve um tipo de fonte de evento `CloudWatchEvent`.

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)recurso quando esse tipo de evento é definido.

**Nota importante**: [EventBridgeRule](sam-property-function-eventbridgerule.md) é o tipo de fonte de eventos preferido a ser usado, em vez de`CloudWatchEvent`. `EventBridgeRule`e `CloudWatchEvent` use o mesmo serviço, API e CloudFormation recursos subjacentes. No entanto, AWS SAM adicionará suporte para novos recursos somente para`EventBridgeRule`.

## Sintaxe
<a name="sam-property-function-cloudwatchevent-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-cloudwatchevent-syntax.yaml"></a>

```
  [Enabled](#sam-function-cloudwatchevent-enabled): Boolean
  [EventBusName](#sam-function-cloudwatchevent-eventbusname): String
  [Input](#sam-function-cloudwatchevent-input): String
  [InputPath](#sam-function-cloudwatchevent-inputpath): String
  [Pattern](#sam-function-cloudwatchevent-pattern): [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)
  [State](#sam-function-cloudwatchevent-state): String
```

## Propriedades
<a name="sam-property-function-cloudwatchevent-properties"></a>

 `Enabled`   <a name="sam-function-cloudwatchevent-enabled"></a>
Indica se a regra está habilitada.  
Para desativar a regra, defina essa propriedade como `false`.  
Especifique a propriedade `Enabled` ou `State`, mas não ambas.
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state)` propriedade de um `AWS::Events::Rule` recurso. Se essa propriedade for definida como `true` então AWS SAM passa`ENABLED`, caso contrário, ela passa`DISABLED`.

 `EventBusName`   <a name="sam-function-cloudwatchevent-eventbusname"></a>
O barramento de eventos que deve ser associado a essa regra. Se você omitir essa propriedade, AWS SAM usará o barramento de eventos padrão.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: barramento de eventos padrão  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventBusName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname)` propriedade de um `AWS::Events::Rule` recurso.

 `Input`   <a name="sam-function-cloudwatchevent-input"></a>
Texto JSON válido passado para o destino. Se você usar essa propriedade, nada do próprio texto do evento é passado para o destino.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Input](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input)` propriedade de um `AWS::Events::Rule Target` recurso.

 `InputPath`   <a name="sam-function-cloudwatchevent-inputpath"></a>
Quando você não deseja passar todo o evento correspondente ao destino, a propriedade `InputPath` descreve qual parte do evento passar.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[InputPath](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath)` propriedade de um `AWS::Events::Rule Target` recurso.

 `Pattern`   <a name="sam-function-cloudwatchevent-pattern"></a>
Descreve quais eventos são roteados para o destino especificado. Para obter mais informações, consulte [Eventos e padrões de eventos EventBridge no](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) *Guia do EventBridge usuário da Amazon*.  
*Digite*: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)` propriedade de um `AWS::Events::Rule` recurso.

 `State`   <a name="sam-function-cloudwatchevent-state"></a>
O estado da regra.  
*Valores aceitos:* `DISABLED | ENABLED`  
Especifique a propriedade `Enabled` ou `State`, mas não ambas.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state)` propriedade de um `AWS::Events::Rule` recurso.

## Exemplos
<a name="sam-property-function-cloudwatchevent--examples"></a>

### CloudWatchEvent
<a name="sam-property-function-cloudwatchevent--examples--cloudwatchevent"></a>

O exemplo a seguir mostra o tipo de origem de um evento `CloudWatchEvent`.

#### YAML
<a name="sam-property-function-cloudwatchevent--examples--cloudwatchevent--yaml"></a>

```
CWEvent:
  Type: CloudWatchEvent
  Properties:
    Enabled: false
    Input: '{"Key": "Value"}'
    Pattern:
      detail:
        state:
          - running
```

# CloudWatchLogs
<a name="sam-property-function-cloudwatchlogs"></a>

O objeto que descreve um tipo de fonte de evento `CloudWatchLogs`.

O evento gera um recurso [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html) e especifica um filtro de assinaturas e o associa ao grupo de logs especificado.

## Sintaxe
<a name="sam-property-function-cloudwatchlogs-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-cloudwatchlogs-syntax.yaml"></a>

```
  [FilterPattern](#sam-function-cloudwatchlogs-filterpattern): String
  [LogGroupName](#sam-function-cloudwatchlogs-loggroupname): String
```

## Propriedades
<a name="sam-property-function-cloudwatchlogs-properties"></a>

 `FilterPattern`   <a name="sam-function-cloudwatchlogs-filterpattern"></a>
As expressões de filtragem que restringem o que é entregue ao AWS recurso de destino. Para obter mais informações sobre o filtro do padrão de filtro [Sintaxe de filtros e padrões](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FilterPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-filterpattern)` propriedade de um `AWS::Logs::SubscriptionFilter` recurso.

 `LogGroupName`   <a name="sam-function-cloudwatchlogs-loggroupname"></a>
O grupo de logs ao qual associar o filtro de assinatura. Todos os eventos de log enviados para esse grupo de log são filtrados e entregues ao AWS recurso especificado se o padrão de filtro corresponder aos eventos de log.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[LogGroupName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-loggroupname)` propriedade de um `AWS::Logs::SubscriptionFilter` recurso.

## Exemplos
<a name="sam-property-function-cloudwatchlogs--examples"></a>

### Filtro de assinatura do Cloudwatchlogs
<a name="sam-property-function-cloudwatchlogs--examples--cloudwatchlogs-subscription-filter"></a>

Exemplo de filtro de assinatura Cloudwatchlogs

#### YAML
<a name="sam-property-function-cloudwatchlogs--examples--cloudwatchlogs-subscription-filter--yaml"></a>

```
CWLog:
  Type: CloudWatchLogs
  Properties:
    LogGroupName:
      Ref: CloudWatchLambdaLogsGroup
    FilterPattern: My pattern
```

# Cognito
<a name="sam-property-function-cognito"></a>

O objeto que descreve um tipo de fonte de evento `Cognito`.

## Sintaxe
<a name="sam-property-function-cognito-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-cognito-syntax.yaml"></a>

```
  [Trigger](#sam-function-cognito-trigger): List
  [UserPool](#sam-function-cognito-userpool): String
```

## Propriedades
<a name="sam-property-function-cognito-properties"></a>

 `Trigger`   <a name="sam-function-cognito-trigger"></a>
As informações de configuração de trigger do Lambda para o novo grupo de usuários.  
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[LambdaConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html)` propriedade de um `AWS::Cognito::UserPool` recurso.

 `UserPool`   <a name="sam-function-cognito-userpool"></a>
Referência a UserPool definida no mesmo modelo  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-cognito--examples"></a>

### Evento Cognito
<a name="sam-property-function-cognito--examples--cognito-event"></a>

Exemplo de evento Cognito

#### YAML
<a name="sam-property-function-cognito--examples--cognito-event--yaml"></a>

```
CognitoUserPoolPreSignup:
  Type: Cognito
  Properties:
    UserPool:
      Ref: MyCognitoUserPool
    Trigger: PreSignUp
```

# DocumentDB
<a name="sam-property-function-documentdb"></a>

O objeto que descreve um tipo de fonte de evento `DocumentDB`. Para obter mais informações, consulte Como [usar AWS Lambda com o Amazon DocumentDB](https://docs.aws.amazon.com/lambda/latest/dg/with-documentdb.html) no Guia do *AWS Lambda desenvolvedor*.

## Sintaxe
<a name="sam-property-function-documentdb-syntax"></a>

Para declarar essa entidade em seu AWS SAM modelo, use a sintaxe a seguir.

### YAML
<a name="sam-property-function-documentdb-syntax-yaml"></a>

```
BatchSize: Integer
Cluster: [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)
CollectionName: String
DatabaseName: String
Enabled: Boolean
FilterCriteria: [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)
FullDocument: String
KmsKeyArn: String  
MaximumBatchingWindowInSeconds: Integer
SecretsManagerKmsKeyId: String
SourceAccessConfigurations: List
StartingPosition: String
StartingPositionTimestamp: Double
```

## Propriedades
<a name="sam-property-function-documentdb-properties"></a>

 `BatchSize`   <a name="sam-function-documentdb-batchsize"></a>
O número máximo de itens a serem recuperados em um único lote.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ BatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Cluster`   <a name="sam-function-documentdb-cluster"></a>
O nome de recurso da Amazon (ARN) do cluster do Amazon DocumentDB.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ EventSourceArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `CollectionName`   <a name="sam-function-documentdb-collectionname"></a>
O nome da coleção a ser consumida no banco de dados. Se você não especificar uma coleção, o Lambda consumirá todas as coleções.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ CollectionName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-documentdbeventsourceconfig.html#cfn-lambda-eventsourcemapping-documentdbeventsourceconfig-collectionname)` propriedade de um tipo de `AWS::Lambda::EventSourceMapping` `DocumentDBEventSourceConfig` dados.

 `DatabaseName`   <a name="sam-function-documentdb-databasename"></a>
O nome do banco de dados a ser usado no cluster do Amazon DocumentDB.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ DatabaseName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-documentdbeventsourceconfig.html#cfn-lambda-eventsourcemapping-documentdbeventsourceconfig-databasename)` propriedade de um tipo de `AWS::Lambda::EventSourceMapping` `DocumentDBEventSourceConfig` dados.

 `Enabled`   <a name="sam-function-documentdb-enabled"></a>
Se `true`, o mapeamento da origem do evento estará ativo. Para pausar a sondagem e invocação, defina como `false`.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ Enabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FilterCriteria`   <a name="sam-function-documentdb-filtercriteria"></a>
Um objeto que define os critérios que determinam se o Lambda deve processar um evento. Para obter mais informações, consulte [Filtrando eventos do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Digite*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FullDocument`   <a name="sam-function-documentdb-fulldocument"></a>
Determina o que o Amazon DocumentDB enviará para seu fluxo de eventos durante as operações de atualização de documentos. Se estiver configurado para `UpdateLookup`, o Amazon DocumentDB enviará um delta descrevendo as alterações, junto com uma cópia de todo o documento. Senão, o Amazon DocumentDB enviará somente um documento parcial contendo as alterações.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ FullDocument](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-documentdbeventsourceconfig.html#cfn-lambda-eventsourcemapping-documentdbeventsourceconfig-fulldocument)` propriedade de um tipo de `AWS::Lambda::EventSourceMapping` `DocumentDBEventSourceConfig` dados.

 `KmsKeyArn`   <a name="sam-function-documentdb-kmskeyarn"></a>
O nome do recurso da Amazon (ARN) da chave para criptografar informações relacionadas a esse evento.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumBatchingWindowInSeconds`   <a name="sam-function-documentdb-maximumbatchingwindowinseconds"></a>
O máximo de tempo para reunir registros antes de invocar a função, em segundos.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ MaximumBatchingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `SecretsManagerKmsKeyId`   <a name="sam-function-documentdb-secretsmanagerkmskeyid"></a>
O ID da chave AWS Key Management Service (AWS KMS) de uma chave gerenciada pelo cliente do AWS Secrets Manager. Obrigatório quando você usa uma chave gerenciada pelo cliente do Secrets Manager com uma função de execução do Lambda que não inclui a permissão`kms:Decrypt`.  
O valor da propriedade é um UUID. Por exemplo: `1abc23d4-567f-8ab9-cde0-1fab234c5d67`.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceAccessConfigurations`   <a name="sam-function-documentdb-sourceaccessconfigurations"></a>
Uma matriz do protocolo de autenticação ou host virtual. Especifique isso usando o tipo de [SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html)dados.  
Para o tipo de origem do evento `DocumentDB`, o único tipo de configuração válido é `BASIC_AUTH`.  
+ `BASIC_AUTH` – O segredo do Secrets Manager que armazena as credenciais do agente. Para esse tipo, a credencial deverá estar no seguinte formato: `{"username": "your-username", "password": "your-password"}`. Somente um objeto do tipo `BASIC_AUTH` é permitido.
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-sourceaccessconfigurations)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPosition`   <a name="sam-function-documentdb-startingposition"></a>
A posição em um fluxo da qual você deseja iniciar a leitura.  
+ `AT_TIMESTAMP` – Especifique um tempo a partir do qual iniciar a leitura dos registros.
+ `LATEST` – Leia somente registros novos.
+ `TRIM_HORIZON` – Processe todos os registros disponíveis.
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ StartingPosition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPositionTimestamp`   <a name="sam-function-documentdb-startingpositiontimestamp"></a>
O tempo a partir do qual iniciar a leitura, em segundos no horário do Unix. Defina `StartingPositionTimestamp` quando `StartingPosition` é especificado como .`AT_TIMESTAMP`  
*Tipo*: duplo  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ StartingPositionTimestamp](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

## Exemplos
<a name="sam-property-function-documentdb-examples"></a>

### Origem do evento do Amazon DocumentDB
<a name="sam-property-function-documentdb-examples-example1"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyFunction:
    Type: AWS::Serverless::Function
    Properties:
    ...
      Events:
        MyDDBEvent:
          Type: DocumentDB
          Properties:
            Cluster: "arn:aws:rds:us-west-2:123456789012:cluster:docdb-2023-01-01"
            BatchSize: 10
            MaximumBatchingWindowInSeconds: 5
            DatabaseName: "db1"
            CollectionName: "collection1"
            FullDocument: "UpdateLookup"
            SourceAccessConfigurations:
              - Type: BASIC_AUTH
                URI: "arn:aws:secretsmanager:us-west-2:123456789012:secret:doc-db"
```

# DynamoDB
<a name="sam-property-function-dynamodb"></a>

O objeto que descreve um tipo de fonte de evento `DynamoDB`. *Para obter mais informações, consulte Como [usar AWS Lambda com o Amazon DynamoDB](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html) no AWS Lambda Guia do desenvolvedor.*

AWS SAM gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)recurso quando esse tipo de evento é definido.

## Sintaxe
<a name="sam-property-function-dynamodb-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-dynamodb-syntax.yaml"></a>

```
  [BatchSize](#sam-function-dynamodb-batchsize): Integer
  [BisectBatchOnFunctionError](#sam-function-dynamodb-bisectbatchonfunctionerror): Boolean
  [DestinationConfig](#sam-function-dynamodb-destinationconfig): [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig)
  [Enabled](#sam-function-dynamodb-enabled): Boolean
  [FilterCriteria](#sam-function-dynamodb-filtercriteria): [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)
  [FunctionResponseTypes](#sam-function-dynamodb-functionresponsetypes): List
  KmsKeyArn: String          
  [MaximumBatchingWindowInSeconds](#sam-function-dynamodb-maximumbatchingwindowinseconds): Integer
  [MaximumRecordAgeInSeconds](#sam-function-dynamodb-maximumrecordageinseconds): Integer
  [MaximumRetryAttempts](#sam-function-dynamodb-maximumretryattempts): Integer
  [MetricsConfig](#sam-function-dynamodb-metricsconfig): [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)
  [ParallelizationFactor](#sam-function-dynamodb-parallelizationfactor): Integer
  [StartingPosition](#sam-function-dynamodb-startingposition): String
  StartingPositionTimestamp: Double
  [Stream](#sam-function-dynamodb-stream): String
  [TumblingWindowInSeconds](#sam-function-dynamodb-tumblingwindowinseconds): Integer
```

## Propriedades
<a name="sam-property-function-dynamodb-properties"></a>

 `BatchSize`   <a name="sam-function-dynamodb-batchsize"></a>
O número máximo de itens a serem recuperados em um único lote.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 100  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.  
*Mínimo*: `1`  
*Maximum*: `1000`

 `BisectBatchOnFunctionError`   <a name="sam-function-dynamodb-bisectbatchonfunctionerror"></a>
Se a função retornar um erro, divida o lote em dois e tente novamente.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BisectBatchOnFunctionError](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `DestinationConfig`   <a name="sam-function-dynamodb-destinationconfig"></a>
Uma fila do Amazon Simple Queue Service (Amazon SQS) ou um destino do tópico do Amazon Simple Notification Service (Amazon SNS) para registros descartados.  
*Digite*: [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Enabled`   <a name="sam-function-dynamodb-enabled"></a>
Desabilita o mapeamento de origens de eventos para pausar a sondagem e a invocação.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Enabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FilterCriteria`   <a name="sam-function-dynamodb-filtercriteria"></a>
Um objeto que define os critérios para determinar se o Lambda deve processar um evento. Para obter mais informações, consulte [Filtrando eventos do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Digite*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FunctionResponseTypes`   <a name="sam-function-dynamodb-functionresponsetypes"></a>
Uma lista de tipos de resposta atuais aplicados ao mapeamento da origem do evento. Para obter mais informações, consulte [Relatar falhas de itens em lote](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#services-ddb-batchfailurereporting) no *Guia do desenvolvedor do AWS Lambda *.  
*Valores válidos*: `ReportBatchItemFailures`  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FunctionResponseTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `KmsKeyArn`   <a name="sam-function-dynamodb-kmskeyarn"></a>
O nome do recurso da Amazon (ARN) da chave para criptografar informações relacionadas a esse evento.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumBatchingWindowInSeconds`   <a name="sam-function-dynamodb-maximumbatchingwindowinseconds"></a>
O máximo de tempo para reunir registros antes de invocar a função, em segundos.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumBatchingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumRecordAgeInSeconds`   <a name="sam-function-dynamodb-maximumrecordageinseconds"></a>
A idade máxima de um registro que o Lambda envia a uma função para processamento.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRecordAgeInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumRetryAttempts`   <a name="sam-function-dynamodb-maximumretryattempts"></a>
O número máximo de vezes para tentar novamente quando a função retorna um erro.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRetryAttempts](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MetricsConfig`   <a name="sam-function-dynamodb-metricsconfig"></a>
Uma configuração opcional para obter métricas aprimoradas para os mapeamentos da origem do evento que capturam cada estágio do processamento. Para ver um exemplo, consulte [MetricsConfig evento](#sam-property-function-dynamodb-example-metricsconfigevent).  
*Digite*: [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `ParallelizationFactor`   <a name="sam-function-dynamodb-parallelizationfactor"></a>
O número de lotes a serem processados de cada fragmento simultaneamente.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ParallelizationFactor](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-parallelizationfactor)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPosition`   <a name="sam-function-dynamodb-startingposition"></a>
A posição em um fluxo da qual você deseja iniciar a leitura.  
+ `AT_TIMESTAMP` – Especifique um tempo a partir do qual iniciar a leitura dos registros.
+ `LATEST` – Leia somente registros novos.
+ `TRIM_HORIZON` – Processe todos os registros disponíveis.
*Valores válidos*: `AT_TIMESTAMP` \$1 `LATEST` \$1 `TRIM_HORIZON`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartingPosition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPositionTimestamp`   <a name="sam-function-dynamodb-startingpositiontimestamp"></a>
O tempo a partir do qual iniciar a leitura, em segundos no horário do Unix. Defina `StartingPositionTimestamp` quando `StartingPosition` é especificado como .`AT_TIMESTAMP`  
*Tipo*: duplo  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartingPositionTimestamp](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Stream`   <a name="sam-function-dynamodb-stream"></a>
O nome de recurso da Amazon (ARN) do fluxo do DynamoDB.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventSourceArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `TumblingWindowInSeconds`   <a name="sam-function-dynamodb-tumblingwindowinseconds"></a>
A duração, em segundos, de uma janela de processamento. O intervalo válido é de 1 a 900 (15 minutos).  
Para obter mais informações, consulte [Janelas caindo](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#streams-tumbling) no *Guia do desenvolvedor do AWS Lambda *.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TumblingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-tumblingwindowinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

## Exemplos
<a name="sam-property-function-dynamodb--examples"></a>

### MetricsConfig evento
<a name="sam-property-function-dynamodb-example-metricsconfigevent"></a>

Veja a seguir um exemplo de um recurso que usa a propriedade `MetricsConfig` para capturar cada estágio de processamento para seus mapeamentos da origem do evento.

```
Resources:
  FilteredEventsFunction:
    Type: AWS::Serverless::Function
    Properties:
      CodeUri: s3://sam-demo-bucket/metricsConfig.zip
      Handler: index.handler
      Runtime: nodejs16.x
      Events:
        KinesisStream:
          Type: Kinesis
          Properties:
            Stream: !GetAtt KinesisStream.Arn
            StartingPosition: LATEST
            MetricsConfig:
              Metrics:
              - EventCount
```

### Fonte de eventos do DynamoDB para a tabela existente do DynamoDB
<a name="sam-property-function-dynamodb--examples--dynamodb-event-source-for-existing-dynamodb-table"></a>

Fonte de eventos do DynamoDB para uma tabela do DynamoDB que já existe em uma conta. AWS 

#### YAML
<a name="sam-property-function-dynamodb--examples--dynamodb-event-source-for-existing-dynamodb-table--yaml"></a>

```
Events:
  DDBEvent:
    Type: DynamoDB
    Properties:
      Stream: arn:aws:dynamodb:us-east-1:123456789012:table/TestTable/stream/2016-08-11T21:21:33.291
      StartingPosition: TRIM_HORIZON
      BatchSize: 10
      Enabled: false
```

### Evento do DynamoDB para tabela do DynamoDB declarado no modelo
<a name="sam-property-function-dynamodb--examples--dynamodb-event-for-dynamodb-table-declared-in-template"></a>

Evento do DynamoDB para uma tabela do DynamoDB declarada no mesmo arquivo de modelo.

#### YAML
<a name="sam-property-function-dynamodb--examples--dynamodb-event-for-dynamodb-table-declared-in-template--yaml"></a>

```
Events:
  DDBEvent:
    Type: DynamoDB
    Properties:
      Stream: 
        !GetAtt MyDynamoDBTable.StreamArn   # This must be the name of a DynamoDB table declared in the same template file
      StartingPosition: TRIM_HORIZON
      BatchSize: 10
      Enabled: false
```

# EventBridgeRule
<a name="sam-property-function-eventbridgerule"></a>

O objeto que descreve um tipo de fonte de `EventBridgeRule` evento, que define sua função sem servidor como o destino de uma regra da Amazon EventBridge . Para obter mais informações, consulte [O que é a Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) no *Guia do EventBridge usuário da Amazon*.

AWS SAM gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)recurso quando esse tipo de evento é definido. AWS SAM também cria um `AWS::Lambda::Permission` recurso, que é necessário para que eles `EventBridgeRule` possam chamar o Lambda.

## Sintaxe
<a name="sam-property-function-eventbridgerule-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-eventbridgerule-syntax.yaml"></a>

```
  [DeadLetterConfig](#sam-function-eventbridgerule-deadletterconfig): DeadLetterConfig
  [EventBusName](#sam-function-eventbridgerule-eventbusname): String
  [Input](#sam-function-eventbridgerule-input): String
  [InputPath](#sam-function-eventbridgerule-inputpath): String
  InputTransformer: [InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html)
  [Pattern](#sam-function-eventbridgerule-pattern): [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)
  [RetryPolicy](#sam-function-eventbridgerule-retrypolicy): [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)
  RuleName: String 
  State: String
  [Target](#sam-function-eventbridgerule-target): Target
```

## Propriedades
<a name="sam-property-function-eventbridgerule-properties"></a>

 `DeadLetterConfig`   <a name="sam-function-eventbridgerule-deadletterconfig"></a>
Configure a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma função Lambda que não existe ou quando não há permissões suficientes para invocar EventBridge a função Lambda. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *  
O tipo de recurso [AWS::Serverless::Function](sam-resource-function.md) tem um tipo de dados semelhante, `DeadLetterQueue`, que lida com falhas que ocorrem após a invocação bem-sucedida da função do Lambda de destino. Exemplos desses tipos de falhas incluem controle de utilização do Lambda ou erros retornados pela função de destino do Lambda. Para obter mais informações sobre a propriedade `DeadLetterQueue` da função, consulte [Filas de mensagens não entregues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq) no *Guia do desenvolvedor do AWS Lambda *.
*Digite*: [DeadLetterConfig](sam-property-function-deadletterconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig)` propriedade do tipo de `AWS::Events::Rule` `Target` dados. A AWS SAM versão dessa propriedade inclui subpropriedades adicionais, caso você queira criar AWS SAM a fila de mensagens mortas para você.

 `EventBusName`   <a name="sam-function-eventbridgerule-eventbusname"></a>
O barramento de eventos que deve ser associado a essa regra. Se você omitir essa propriedade, AWS SAM usará o barramento de eventos padrão.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: barramento de eventos padrão  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventBusName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname)` propriedade de um `AWS::Events::Rule` recurso.

 `Input`   <a name="sam-function-eventbridgerule-input"></a>
Texto JSON válido passado para o destino. Se você usar essa propriedade, nada do próprio texto do evento é passado para o destino.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Input](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input)` propriedade de um `AWS::Events::Rule Target` recurso.

 `InputPath`   <a name="sam-function-eventbridgerule-inputpath"></a>
Quando você não deseja passar todo o evento correspondente ao destino, a propriedade `InputPath` descreve qual parte do evento passar.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[InputPath](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath)` propriedade de um `AWS::Events::Rule Target` recurso.

 `InputTransformer`   <a name="sam-function-eventbridgerule-inputtransformer"></a>
Configurações para permitir que você forneça entrada personalizada para um destino com base em determinados dados de evento. Você pode extrair um ou mais pares de valor-chave do evento e usar esses dados para enviar a entrada personalizada para o destino. Para obter mais informações, consulte [Transformação EventBridge de entrada](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html) da *Amazon no Guia EventBridge do usuário da Amazon*.   
*Digite*: [InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputtransformer)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html)` propriedade de um tipo de `AWS::Events::Rule` `Target` dados.

 `Pattern`   <a name="sam-function-eventbridgerule-pattern"></a>
Descreve quais eventos são roteados para o destino especificado. Para obter mais informações, consulte [ EventBridgeEventos e [padrões de EventBridge eventos](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html) da Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html) no *Guia EventBridge do usuário da Amazon*.  
*Digite*: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)` propriedade de um `AWS::Events::Rule` recurso.

 `RetryPolicy`   <a name="sam-function-eventbridgerule-retrypolicy"></a>
Um objeto `RetryPolicy` que inclui informações sobre as configurações de política de repetição. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *  
*Digite*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)` propriedade do tipo de `AWS::Events::Rule` `Target` dados.

 `RuleName`   <a name="sam-function-eventbridgerule-rulename"></a>
O nome da regra.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name)` propriedade de um `AWS::Events::Rule` recurso.

 `State`   <a name="sam-function-eventbridgerule-state"></a>
O estado da regra.  
*Valores aceitos*: `DISABLED` \$1 `ENABLED` \$1 `ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state) ` propriedade de um `AWS::Events::Rule` recurso.

 `Target`   <a name="sam-function-eventbridgerule-target"></a>
O AWS recurso que é EventBridge invocado quando uma regra é acionada. Você pode usar essa propriedade para especificar a ID lógica do destino. Se essa propriedade não for especificada, a ID lógica do destino será AWS SAM gerada.  
*Tipo*: [Target](sam-property-function-target.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Targets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets)` propriedade de um `AWS::Events::Rule` recurso. `Amazon EC2 RebootInstances API call`é um exemplo de uma propriedade alvo. A versão AWS SAM dessa propriedade só permite que você especifique a ID lógica de um único destino.

## Exemplos
<a name="sam-property-function-eventbridgerule--examples"></a>

### EventBridgeRule
<a name="sam-property-function-eventbridgerule--examples--eventbridgerule"></a>

O exemplo a seguir mostra o tipo de origem de um evento `EventBridgeRule`.

#### YAML
<a name="sam-property-function-eventbridgerule--examples--eventbridgerule--yaml"></a>

```
EBRule:
  Type: EventBridgeRule
  Properties:
    Input: '{"Key": "Value"}'
    Pattern:
      detail:
        state:
          - terminated
    RetryPolicy:
      MaximumRetryAttempts: 5
      MaximumEventAgeInSeconds: 900
    DeadLetterConfig:
      Type: SQS
      QueueLogicalId: EBRuleDLQ
    Target:
      Id: MyTarget
```

# DeadLetterConfig
<a name="sam-property-function-deadletterconfig"></a>

O objeto usado para especificar a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma função do Lambda que não existe ou permissões insuficientes para invocar a função do Lambda. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *

**nota**  
O tipo de recurso [AWS::Serverless::Function](sam-resource-function.md) tem um tipo de dados semelhante, `DeadLetterQueue` que lida com falhas que ocorrem após a invocação bem-sucedida da função do Lambda de destino. Exemplos desse tipo de falha incluem controle de utilização do Lambda ou erros retornados pela função de destino do Lambda. Para obter mais informações sobre a propriedade `DeadLetterQueue` da função, consulte as [filas de mensagens não entregues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq) no *Guia do desenvolvedor do AWS Lambda *.

## Sintaxe
<a name="sam-property-function-deadletterconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-deadletterconfig-syntax.yaml"></a>

```
  [Arn](#sam-function-deadletterconfig-arn): String
  [QueueLogicalId](#sam-function-deadletterconfig-queuelogicalid): String
  [Type](#sam-function-deadletterconfig-type): String
```

## Propriedades
<a name="sam-property-function-deadletterconfig-properties"></a>

 `Arn`   <a name="sam-function-deadletterconfig-arn"></a>
O nome de recurso da Amazon (ARN) da fila Amazon SQS especificado como o destino para a fila de mensagens não entregues.  
Especifique a propriedade `Type` ou a propriedade `Arn`, mas não ambas.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Arn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-deadletterconfig.html#cfn-events-rule-deadletterconfig-arn)` propriedade do tipo de `AWS::Events::Rule` `DeadLetterConfig` dados.

 `QueueLogicalId`   <a name="sam-function-deadletterconfig-queuelogicalid"></a>
O nome personalizado da fila de letras mortas que AWS SAM cria se `Type` for especificado.  
Se a propriedade `Type` não estiver definida, essa propriedade será ignorada.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Type`   <a name="sam-function-deadletterconfig-type"></a>
O tipo da fila. Quando essa propriedade é definida, cria AWS SAM automaticamente uma fila de mensagens mortas e anexa a [política baseada em recursos](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html#dlq-perms) necessária para conceder permissão ao recurso de regra para enviar eventos para a fila.  
Especifique a propriedade `Type` ou a propriedade `Arn`, mas não ambas.
*Valores válidos*: `SQS`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-deadletterconfig--examples"></a>

### DeadLetterConfig
<a name="sam-property-function-deadletterconfig--examples--deadletterconfig"></a>

DeadLetterConfig

#### YAML
<a name="sam-property-function-deadletterconfig--examples--deadletterconfig--yaml"></a>

```
DeadLetterConfig:
  Type: SQS
  QueueLogicalId: MyDLQ
```

# Target
<a name="sam-property-function-target"></a>

Configura o AWS recurso que é EventBridge invocado quando uma regra é acionada.

## Sintaxe
<a name="sam-property-function-target-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-target-syntax.yaml"></a>

```
  [Id](#sam-function-target-id): String
```

## Propriedades
<a name="sam-property-function-target-properties"></a>

 `Id`   <a name="sam-function-target-id"></a>
O ID lógico do destino.  
O valor do `Id` pode incluir caracteres alfanuméricos, pontos (`.`), hifens (`-`) e sublinhados (`_`).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Id](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id)` propriedade do tipo de `AWS::Events::Rule` `Target` dados.

## Exemplos
<a name="sam-property-function-target--examples"></a>

### Target
<a name="sam-property-function-target--examples--target"></a>

#### YAML
<a name="sam-property-function-target--examples--target--yaml"></a>

```
EBRule:
  Type: EventBridgeRule
  Properties:
    Target:
      Id: MyTarget
```

# HttpApi
<a name="sam-property-function-httpapi"></a>

O objeto que descreve uma fonte de eventos com tipo HttpApi.

Se houver uma OpenApi definição para o caminho e o método especificados na API, o SAM adicionará a seção de integração e segurança do Lambda (se aplicável) para você.

Se não existir uma OpenApi definição para o caminho e o método especificados na API, o SAM criará essa definição para você.

## Sintaxe
<a name="sam-property-function-httpapi-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-httpapi-syntax.yaml"></a>

```
  [ApiId](#sam-function-httpapi-apiid): String
  [Auth](#sam-function-httpapi-auth): HttpApiFunctionAuth
  [Method](#sam-function-httpapi-method): String
  [Path](#sam-function-httpapi-path): String
  [PayloadFormatVersion](#sam-function-httpapi-payloadformatversion): String
  [RouteSettings](#sam-function-httpapi-routesettings): [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)
  [TimeoutInMillis](#sam-function-httpapi-timeoutinmillis): Integer
```

## Propriedades
<a name="sam-property-function-httpapi-properties"></a>

 `ApiId`   <a name="sam-function-httpapi-apiid"></a>
Identificador de um recurso [AWS::Serverless::HttpApi](sam-resource-httpapi.md) definido neste modelo.  
Se não for definido, um [AWS::Serverless::HttpApi](sam-resource-httpapi.md) recurso padrão é criado chamado `ServerlessHttpApi` usando um OpenApi documento gerado contendo uma união de todos os caminhos e métodos definidos pelos eventos da Api definidos neste modelo que não especificam um`ApiId`.  
Isso não pode fazer referência a um recurso [AWS::Serverless::HttpApi](sam-resource-httpapi.md) definido em outro modelo.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Auth`   <a name="sam-function-httpapi-auth"></a>
Configuração de autenticação para essa Api\$1Path\$1Method específica.  
Útil para substituir as APIs `DefaultAuthorizer` ou definir a configuração de autenticação em um caminho individual quando não `DefaultAuthorizer` é especificado.  
*Digite*: [HttpApiFunctionAuth](sam-property-function-httpapifunctionauth.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Method`   <a name="sam-function-httpapi-method"></a>
Método HTTP para o qual essa função é invocada.  
Se não `Path` e `Method` for especificado, o SAM criará um caminho de API padrão que roteia qualquer solicitação que não seja mapeada para um endpoint diferente para essa função do Lambda. Somente um desses caminhos padrão pode existir por API.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Path`   <a name="sam-function-httpapi-path"></a>
Caminho Uri para o qual essa função é invocada. Deve começar com `/`.  
Se não `Path` e `Method` for especificado, o SAM criará um caminho de API padrão que roteia qualquer solicitação que não seja mapeada para um endpoint diferente para essa função do Lambda. Somente um desses caminhos padrão pode existir por API.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `PayloadFormatVersion`   <a name="sam-function-httpapi-payloadformatversion"></a>
Especifica o formato da carga enviada para uma integração.  
OBSERVAÇÃO: PayloadFormatVersion requer que o SAM modifique sua definição de OpenAPI, portanto, ele só funciona com inline OpenApi definido na propriedade. `DefinitionBody`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: 2.0  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `RouteSettings`   <a name="sam-function-httpapi-routesettings"></a>
As configurações de rota por rota para essa API HTTP. Para obter mais informações sobre as configurações de rota, consulte [AWS::ApiGatewayV2::Stage RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-stage-routesettings.html)o *Guia do desenvolvedor do API Gateway*.  
Nota: Se RouteSettings forem especificados no HttpApi recurso e na fonte do evento, AWS SAM mescla-os com as propriedades da fonte do evento que têm precedência.  
*Digite*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)` propriedade de um `AWS::ApiGatewayV2::Stage` recurso.

 `TimeoutInMillis`   <a name="sam-function-httpapi-timeoutinmillis"></a>
Tempo limite personalizado entre 50 e 29.000 milissegundos.  
OBSERVAÇÃO: TimeoutInMillis requer que o SAM modifique sua definição de OpenAPI, portanto, ele só funciona com inline OpenApi definido na propriedade. `DefinitionBody`  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 5000  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-httpapi--examples"></a>

### HttpApi Evento padrão
<a name="sam-property-function-httpapi--examples--default-httpapi-event"></a>

HttpApi Evento que usa o caminho padrão. Todos os caminhos e métodos não mapeados nessa API serão roteados para esse endpoint.

#### YAML
<a name="sam-property-function-httpapi--examples--default-httpapi-event--yaml"></a>

```
Events:
  HttpApiEvent:
    Type: HttpApi
```

### HttpApi
<a name="sam-property-function-httpapi--examples--httpapi"></a>

HttpApi Evento que usa um caminho e um método específicos.

#### YAML
<a name="sam-property-function-httpapi--examples--httpapi--yaml"></a>

```
Events:
  HttpApiEvent:
    Type: HttpApi
    Properties:
      Path: /
      Method: GET
```

### HttpApi Autorização
<a name="sam-property-function-httpapi--examples--httpapi-authorization"></a>

HttpApi Evento que usa um Autorizador.

#### YAML
<a name="sam-property-function-httpapi--examples--httpapi-authorization--yaml"></a>

```
Events:
  HttpApiEvent:
    Type: HttpApi
    Properties:
      Path: /authenticated
      Method: GET
      Auth:
        Authorizer: OpenIdAuth
        AuthorizationScopes:
          - scope1
          - scope2
```

# HttpApiFunctionAuth
<a name="sam-property-function-httpapifunctionauth"></a>

Configura a autorização no nível do evento.

Configurar Auth para uma API \$1 Path \$1 Method específica

## Sintaxe
<a name="sam-property-function-httpapifunctionauth-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-httpapifunctionauth-syntax.yaml"></a>

```
  [AuthorizationScopes](#sam-function-httpapifunctionauth-authorizationscopes): List
  [Authorizer](#sam-function-httpapifunctionauth-authorizer): String
```

## Propriedades
<a name="sam-property-function-httpapifunctionauth-properties"></a>

 `AuthorizationScopes`   <a name="sam-function-httpapifunctionauth-authorizationscopes"></a>
Os escopos de autorização a serem aplicados a essa API, caminho e método.  
Os escopos listados aqui substituirão quaisquer escopos aplicados pelo, `DefaultAuthorizer` se existirem.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Authorizer`   <a name="sam-function-httpapifunctionauth-authorizer"></a>
O `Authorizer` para uma função específica. Para usar a autorização do IAM, especifique `AWS_IAM` e especifique `true` for `EnableIamAuthorizer` na `Globals` seção do seu modelo.  
Se você especificou um autorizador global na API e deseja tornar pública uma função específica, substitua configurando `Authorizer` como `NONE`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-httpapifunctionauth--examples"></a>

### Function-Auth
<a name="sam-property-function-httpapifunctionauth--examples--function-auth"></a>

Especificando a autorização no nível da função

#### YAML
<a name="sam-property-function-httpapifunctionauth--examples--function-auth--yaml"></a>

```
Auth:
  Authorizer: OpenIdAuth
  AuthorizationScopes:
    - scope1
    - scope2
```

### Autorização do IAM
<a name="sam-property-function-httpapifunctionauth--examples--iam-authorization"></a>

Especifica a autorização do IAM no nível do evento. Para usar a `AWS_IAM` autorização no nível do evento, você também deve especificar `true` for `EnableIamAuthorizer` na `Globals` seção do seu modelo. Para obter mais informações, consulte [Seção Global do modelo AWS SAM](sam-specification-template-anatomy-globals.md).

#### YAML
<a name="sam-property-function-httpapifunctionauth--examples--iam-authorization--yaml"></a>

```
Globals:
  HttpApi:
    Auth:
      EnableIamAuthorizer: true

Resources:
  HttpApiFunctionWithIamAuth:
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: HttpApi
          Properties:
            Path: /iam-auth
            Method: GET
            Auth:
              Authorizer: AWS_IAM
      Handler: index.handler
      InlineCode: |
        def handler(event, context):
          return {'body': 'HttpApiFunctionWithIamAuth', 'statusCode': 200}
      Runtime: python3.9
```

# IoTRule
<a name="sam-property-function-iotrule"></a>

O objeto que descreve um tipo de origem do evento `IoTRule`.

Cria um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html)recurso para declarar uma AWS IoT regra. Para obter mais informações, consulte a [Documentação do CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html)

## Sintaxe
<a name="sam-property-function-iotrule-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-iotrule-syntax.yaml"></a>

```
  [AwsIotSqlVersion](#sam-function-iotrule-awsiotsqlversion): String
  [Sql](#sam-function-iotrule-sql): String
```

## Propriedades
<a name="sam-property-function-iotrule-properties"></a>

 `AwsIotSqlVersion`   <a name="sam-function-iotrule-awsiotsqlversion"></a>
A versão do mecanismo de regras do SQL a ser usado ao avaliar a regra.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AwsIotSqlVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-awsiotsqlversion)` propriedade de um `AWS::IoT::TopicRule TopicRulePayload` recurso.

 `Sql`   <a name="sam-function-iotrule-sql"></a>
A instrução SQL usada para consultar o tópico. Para obter mais informações, consulte [Referência de SQL do AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference) no *Guia do desenvolvedor do AWS IoT *.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Sql](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrule-topicrulepayload.html#cfn-iot-topicrule-topicrulepayload-sql)` propriedade de um `AWS::IoT::TopicRule TopicRulePayload` recurso.

## Exemplos
<a name="sam-property-function-iotrule--examples"></a>

### Regra da IOT
<a name="sam-property-function-iotrule--examples--iot-rule"></a>

Exemplos de regras IOT

#### YAML
<a name="sam-property-function-iotrule--examples--iot-rule--yaml"></a>

```
IoTRule:
  Type: IoTRule
  Properties:
    Sql: SELECT * FROM 'topic/test'
```

# Kinesis
<a name="sam-property-function-kinesis"></a>

O objeto que descreve um tipo de fonte de evento `Kinesis`. Para obter mais informações, consulte Como [usar AWS Lambda com o Amazon Kinesis](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html) no Guia do *AWS Lambda desenvolvedor*.

AWS SAM gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)recurso quando esse tipo de evento é definido.

## Sintaxe
<a name="sam-property-function-kinesis-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-kinesis-syntax.yaml"></a>

```
  [BatchSize](#sam-function-kinesis-batchsize): Integer
  [BisectBatchOnFunctionError](#sam-function-kinesis-bisectbatchonfunctionerror): Boolean
  [DestinationConfig](#sam-function-kinesis-destinationconfig): [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig)
  [Enabled](#sam-function-kinesis-enabled): Boolean
  [FilterCriteria](#sam-function-kinesis-filtercriteria): [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)
  [FunctionResponseTypes](#sam-function-kinesis-functionresponsetypes): List
  KmsKeyArn: String          
  [MaximumBatchingWindowInSeconds](#sam-function-kinesis-maximumbatchingwindowinseconds): Integer
  [MaximumRecordAgeInSeconds](#sam-function-kinesis-maximumrecordageinseconds): Integer
  [MaximumRetryAttempts](#sam-function-kinesis-maximumretryattempts): Integer
  [MetricsConfig](#sam-function-kinesis-metricsconfig): [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)
  [ParallelizationFactor](#sam-function-kinesis-parallelizationfactor): Integer
  [StartingPosition](#sam-function-kinesis-startingposition): String
  StartingPositionTimestamp: Double
  [Stream](#sam-function-kinesis-stream): String
  [TumblingWindowInSeconds](#sam-function-kinesis-tumblingwindowinseconds): Integer
```

## Propriedades
<a name="sam-property-function-kinesis-properties"></a>

 `BatchSize`   <a name="sam-function-kinesis-batchsize"></a>
O número máximo de itens a serem recuperados em um único lote.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 100  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.  
*Mínimo*: `1`  
*Maximum*: `10000`

 `BisectBatchOnFunctionError`   <a name="sam-function-kinesis-bisectbatchonfunctionerror"></a>
Se a função retornar um erro, divida o lote em dois e tente novamente.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BisectBatchOnFunctionError](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `DestinationConfig`   <a name="sam-function-kinesis-destinationconfig"></a>
Uma fila do Amazon Simple Queue Service (Amazon SQS) ou um destino do tópico do Amazon Simple Notification Service (Amazon SNS) para registros descartados.  
*Digite*: [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Enabled`   <a name="sam-function-kinesis-enabled"></a>
Desabilita o mapeamento de origens de eventos para pausar a sondagem e a invocação.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Enabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FilterCriteria`   <a name="sam-function-kinesis-filtercriteria"></a>
Um objeto que define os critérios para determinar se o Lambda deve processar um evento. Para obter mais informações, consulte [Filtrando eventos do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Digite*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FunctionResponseTypes`   <a name="sam-function-kinesis-functionresponsetypes"></a>
Uma lista de tipos de resposta atuais aplicados ao mapeamento da origem do evento. Para obter mais informações, consulte [Relatar falhas de itens em lote](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#services-kinesis-batchfailurereporting) no *Guia do desenvolvedor do AWS Lambda *.  
*Valores válidos*: `ReportBatchItemFailures`  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FunctionResponseTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `KmsKeyArn`   <a name="sam-function-kinesis-kmskeyarn"></a>
O nome do recurso da Amazon (ARN) da chave para criptografar informações relacionadas a esse evento.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumBatchingWindowInSeconds`   <a name="sam-function-kinesis-maximumbatchingwindowinseconds"></a>
O máximo de tempo para reunir registros antes de invocar a função, em segundos.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumBatchingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumRecordAgeInSeconds`   <a name="sam-function-kinesis-maximumrecordageinseconds"></a>
A idade máxima de um registro que o Lambda envia a uma função para processamento.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRecordAgeInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumRetryAttempts`   <a name="sam-function-kinesis-maximumretryattempts"></a>
O número máximo de vezes para tentar novamente quando a função retorna um erro.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRetryAttempts](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MetricsConfig`   <a name="sam-function-kinesis-metricsconfig"></a>
Uma configuração opcional para obter métricas aprimoradas para os mapeamentos da origem do evento que capturam cada estágio do processamento. Para ver um exemplo, consulte [MetricsConfig evento](sam-property-function-dynamodb.md#sam-property-function-dynamodb-example-metricsconfigevent).  
*Digite*: [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `ParallelizationFactor`   <a name="sam-function-kinesis-parallelizationfactor"></a>
O número de lotes a serem processados de cada fragmento simultaneamente.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ParallelizationFactor](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-parallelizationfactor)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPosition`   <a name="sam-function-kinesis-startingposition"></a>
A posição em um fluxo da qual você deseja iniciar a leitura.  
+ `AT_TIMESTAMP` – Especifique um tempo a partir do qual iniciar a leitura dos registros.
+ `LATEST` – Leia somente registros novos.
+ `TRIM_HORIZON` – Processe todos os registros disponíveis.
*Valores válidos*: `AT_TIMESTAMP` \$1 `LATEST` \$1 `TRIM_HORIZON`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartingPosition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPositionTimestamp`   <a name="sam-function-kinesis-startingpositiontimestamp"></a>
O tempo a partir do qual iniciar a leitura, em segundos no horário do Unix. Defina `StartingPositionTimestamp` quando `StartingPosition` é especificado como .`AT_TIMESTAMP`  
*Tipo*: duplo  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartingPositionTimestamp](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Stream`   <a name="sam-function-kinesis-stream"></a>
O nome de recurso da Amazon (ARN) do fluxo de dados ou um consumidor de fluxo.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventSourceArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `TumblingWindowInSeconds`   <a name="sam-function-kinesis-tumblingwindowinseconds"></a>
A duração, em segundos, de uma janela de processamento. O intervalo válido é de 1 a 900 (15 minutos).  
Para obter mais informações, consulte [Janelas caindo](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#streams-tumbling) no *Guia do desenvolvedor do AWS Lambda *.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TumblingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-tumblingwindowinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

## Exemplos
<a name="sam-property-function-kinesis--examples"></a>

### MetricsConfig evento
<a name="sam-property-function-kinesis-example-metricsconfigevent"></a>

Veja a seguir um exemplo de um recurso que usa a propriedade `MetricsConfig` para capturar cada estágio de processamento para seus mapeamentos da origem do evento.

```
Resources:
  FilteredEventsFunction:
    Type: AWS::Serverless::Function
    Properties:
      CodeUri: s3://sam-demo-bucket/metricsConfig.zip
      Handler: index.handler
      Runtime: nodejs16.x
      Events:
        KinesisStream:
          Type: Kinesis
          Properties:
            Stream: !GetAtt KinesisStream.Arn
            StartingPosition: LATEST
            MetricsConfig:
              Metrics:
              - EventCount
```

### Fonte do evento do Kinesis
<a name="sam-property-function-kinesis--examples--kinesis-event-source"></a>

Veja a seguir um exemplo de uma fonte de eventos do Kinesis.

#### YAML
<a name="sam-property-function-kinesis--examples--kinesis-event-source--yaml"></a>

```
Events:
  KinesisEvent:
    Type: Kinesis
    Properties:
      Stream: arn:aws:kinesis:us-east-1:123456789012:stream/my-stream
      StartingPosition: TRIM_HORIZON
      BatchSize: 10
      Enabled: false
      FilterCriteria: 
        Filters: 
          - Pattern: '{"key": ["val1", "val2"]}'
```

# MQ
<a name="sam-property-function-mq"></a>

O objeto que descreve um tipo de fonte de evento `MQ`. Para obter mais informações, consulte [Uso do Lambda com o Amazon MQ](https://docs.aws.amazon.com/lambda/latest/dg/with-mq.html) no *Guia do desenvolvedor do AWS Lambda *.

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)recurso quando esse tipo de evento é definido.

**nota**  
Para ter uma fila do Amazon MQ em uma nuvem privada virtual (VPC) que se conecta a uma função do Lambda em uma rede pública, a função de execução da sua função deve incluir as seguintes permissões:   
`ec2:CreateNetworkInterface`
`ec2:DeleteNetworkInterface`
`ec2:DescribeNetworkInterfaces`
`ec2:DescribeSecurityGroups`
`ec2:DescribeSubnets`
`ec2:DescribeVpcs`
Para obter mais informações, consulte [Permissões de função de execução](https://docs.aws.amazon.com/lambda/latest/dg/with-mq.html#events-mq-permissions) no *Guia do desenvolvedor do AWS Lambda *.

## Sintaxe
<a name="sam-property-function-mq-syntax"></a>

Para declarar essa entidade em seu AWS SAM modelo, use a sintaxe a seguir.

### YAML
<a name="sam-property-function-mq-syntax.yaml"></a>

```
  [BatchSize](#sam-function-mq-batchsize): Integer
  [Broker](#sam-function-mq-broker): String
  DynamicPolicyName: Boolean
  [Enabled](#sam-function-mq-enabled): Boolean
  [FilterCriteria](#sam-function-mq-filtercriteria): [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)
  KmsKeyArn: String 
  [MaximumBatchingWindowInSeconds](#sam-function-mq-maximumbatchingwindowinseconds): Integer
  [Queues](#sam-function-mq-queues): List
  [SecretsManagerKmsKeyId](#sam-function-mq-secretsmanagerkmskeyid): String
  [SourceAccessConfigurations](#sam-function-mq-sourceaccessconfigurations): List
```

## Propriedades
<a name="sam-property-function-mq-properties"></a>

 `BatchSize`   <a name="sam-function-mq-batchsize"></a>
O número máximo de itens a serem recuperados em um único lote.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 100  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.  
*Mínimo*: `1`  
*Maximum*: `10000`

 `Broker`   <a name="sam-function-mq-broker"></a>
O nome de recurso da Amazon (ARN) do agente do Amazon MQ.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventSourceArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `DynamicPolicyName`   <a name="sam-function-mq-dynamicpolicyname"></a>
Por padrão, o nome da política AWS Identity and Access Management (IAM) é `SamAutoGeneratedAMQPolicy` para compatibilidade com versões anteriores. Especifique `true` o uso de um nome gerado automaticamente para sua política do IAM. Esse nome incluirá o ID lógico da fonte de eventos do Amazon MQ.  
Ao usar mais de uma fonte de eventos do Amazon MQ, especifique `true` para evitar nomes duplicados de políticas do IAM.
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `false`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Enabled`   <a name="sam-function-mq-enabled"></a>
Se `true`, o mapeamento da origem do evento estará ativo. Para pausar a sondagem e invocação, defina como `false`.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Enabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FilterCriteria`   <a name="sam-function-mq-filtercriteria"></a>
Um objeto que define os critérios que determinam se o Lambda deve processar um evento. Para obter mais informações, consulte [Filtrando eventos do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Digite*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `KmsKeyArn`   <a name="sam-function-mq-kmskeyarn"></a>
O nome do recurso da Amazon (ARN) da chave para criptografar informações relacionadas a esse evento.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumBatchingWindowInSeconds`   <a name="sam-function-mq-maximumbatchingwindowinseconds"></a>
O máximo de tempo para reunir registros antes de invocar a função, em segundos.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumBatchingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Queues`   <a name="sam-function-mq-queues"></a>
O nome da fila de destino do agente do Amazon MQ a ser consumido.  
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Queues](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-queues)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `SecretsManagerKmsKeyId`   <a name="sam-function-mq-secretsmanagerkmskeyid"></a>
O ID da chave AWS Key Management Service (AWS KMS) de uma chave gerenciada pelo cliente de AWS Secrets Manager. Obrigatório quando você usa uma chave gerenciada pelo cliente do Secrets Manager com uma função de execução do Lambda que não inclui a `kms:Decrypt` permissão.  
O valor padrão da propriedade é um UUID. Por exemplo: `1abc23d4-567f-8ab9-cde0-1fab234c5d67`.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceAccessConfigurations`   <a name="sam-function-mq-sourceaccessconfigurations"></a>
Uma matriz do protocolo de autenticação ou host virtual. Especifique isso usando o tipo de [SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html)dados.  
Para o tipo de fonte do `MQ` evento, os únicos tipos de configuração válidos são `BASIC_AUTH` e `VIRTUAL_HOST`.  
+ **`BASIC_AUTH`** – O segredo do Secrets Manager que armazena as credenciais do corretor. Para esse tipo, a credencial deverá estar no seguinte formato: `{"username": "your-username", "password": "your-password"}`. Somente um objeto do tipo `BASIC_AUTH` é permitido.
+ **`VIRTUAL_HOST`** – O nome do host virtual no seu agente do RabbitMQ. O Lambda usará esse host Rabbit MQ como fonte de eventos. Somente um objeto do tipo `VIRTUAL_HOST` é permitido.
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-sourceaccessconfigurations)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

## Exemplos
<a name="sam-property-function-mq--examples"></a>

### Fonte do evento do Amazon MQ
<a name="sam-property-function-mq--examples--amazon-mq-event-source"></a>

Veja a seguir um exemplo de um tipo de fonte de `MQ` evento para um agente do Amazon MQ.

#### YAML
<a name="sam-property-function-mq--examples--amazon-mq-event-source--yaml"></a>

```
Events:
  MQEvent:
    Type: MQ
    Properties:
      Broker: arn:aws:mq:us-east-2:123456789012:broker:MyBroker:b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9
      Queues: List of queues
      SourceAccessConfigurations:
        - Type: BASIC_AUTH
          URI: arn:aws:secretsmanager:us-east-1:01234567890:secret:MyBrokerSecretName
      BatchSize: 200
      Enabled: true
```

# MSK
<a name="sam-property-function-msk"></a>

O objeto que descreve um tipo de origem do evento `MSK`. Para obter mais informações, consulte Como [usar AWS Lambda com o Amazon MSK](https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html) no *Guia do AWS Lambda desenvolvedor*.

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)recurso quando esse tipo de evento é definido.

Para usar o Schema Registry, você precisa definir permissões específicas do perfil do IAM para sua função. Consulte [Configuração completa com perfis do IAM](#sam-property-function-msk-example-complete) para ver um exemplo da configuração necessária.

## Sintaxe
<a name="sam-property-function-msk-syntax"></a>

Para declarar essa entidade em seu AWS SAM modelo, use a sintaxe a seguir.

### YAML
<a name="sam-property-function-msk-syntax.yaml"></a>

```
  [BatchSize](#sam-function-msk-batchsize): Integer
  [BisectBatchOnFunctionError](#sam-function-msk-bisectbatchonfunctionerror): Boolean
  [ConsumerGroupId](#sam-function-msk-consumergroupid): String
  DestinationConfig: [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-destinationconfig.html)
  [Enabled](#sam-function-msk-enabled): Boolean
  [FilterCriteria](#sam-function-msk-filtercriteria): [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)
  [FunctionResponseTypes](#sam-function-msk-functionresponsetypes): List
  KmsKeyArn: String
  [MaximumBatchingWindowInSeconds](#sam-function-msk-maximumbatchingwindowinseconds): Integer
  [MaximumRecordAgeInSeconds](#sam-function-msk-maximumrecordageinseconds): Integer
  [MaximumRetryAttempts](#sam-function-msk-maximumretryattempts): Integer
  [LoggingConfig](#sam-function-msk-loggingconfig): [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-loggingconfig.html)
  [MetricsConfig](#sam-function-msk-metricsconfig): [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig.html)
  [ProvisionedPollerConfig](#sam-function-msk-provisionedpollerconfig): [ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig)
  [SchemaRegistryConfig](#sam-function-msk-schemaregistryconfig): [SchemaRegistryConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-schemaregistryconfig.html)
  SourceAccessConfigurations: [SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-sourceaccessconfigurations)
  [StartingPosition](#sam-function-msk-startingposition): String
  StartingPositionTimestamp: Double
  [Stream](#sam-function-msk-stream): String
  [Topics](#sam-function-msk-topics): List
```

## Propriedades
<a name="sam-property-function-msk-properties"></a>

 `BatchSize`   <a name="sam-function-msk-batchsize"></a>
O número máximo de registros em cada batch que o Lambda extrai da sua transmissão ou fila e envia para sua função. O Lambda transmite todos os registros no batch para a função em uma única chamada até o limite de carga útil para invocação síncrona (6 MB).  
*Padrão*: 100  
*Faixa válida*: valor mínimo de 1. Valor máximo de 10.000.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `BisectBatchOnFunctionError`   <a name="sam-function-msk-bisectbatchonfunctionerror"></a>
Se a função retornar um erro, divida o lote em dois e tente novamente.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BisectBatchOnFunctionError](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `ConsumerGroupId`   <a name="sam-function-msk-consumergroupid"></a>
Uma string que configura como os eventos serão lidos nos tópicos do Kafka.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AmazonManagedKafkaConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `DestinationConfig`   <a name="sam-function-msk-destinationconfig"></a>
Um objeto de configuração que especifica o destino de um evento depois que o Lambda processá-lo.  
Use essa propriedade para especificar o destino de invocações com falha da fonte de eventos do Amazon MSK.  
*Digite*: [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-destinationconfig.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Enabled`   <a name="sam-function-msk-enabled"></a>
Desabilita o mapeamento de origens de eventos para pausar a sondagem e a invocação.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Enabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FilterCriteria`   <a name="sam-function-msk-filtercriteria"></a>
Um objeto que define os critérios que determinam se o Lambda deve processar um evento. Para obter mais informações, consulte [Filtrando eventos do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Digite*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FunctionResponseTypes`   <a name="sam-function-msk-functionresponsetypes"></a>
Uma lista de tipos de resposta atuais aplicados ao mapeamento da origem do evento. Para obter mais informações, consulte [Relatar falhas de itens em lote](https://docs.aws.amazon.com/lambda/latest/dg/kafka-retry-configurations.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Valores válidos*: `ReportBatchItemFailures`  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FunctionResponseTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `KmsKeyArn`   <a name="sam-function-msk-kmskeyarn"></a>
O nome do recurso da Amazon (ARN) da chave para criptografar informações relacionadas a esse evento.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumBatchingWindowInSeconds`   <a name="sam-function-msk-maximumbatchingwindowinseconds"></a>
O máximo de tempo para reunir registros antes de invocar a função, em segundos.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumBatchingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumRecordAgeInSeconds`   <a name="sam-function-msk-maximumrecordageinseconds"></a>
A idade máxima de um registro que o Lambda envia a uma função para processamento.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRecordAgeInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumRetryAttempts`   <a name="sam-function-msk-maximumretryattempts"></a>
O número máximo de vezes para tentar novamente quando a função retorna um erro.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRetryAttempts](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `LoggingConfig`   <a name="sam-function-msk-loggingconfig"></a>
Um objeto de configuração que especifica a configuração de registro para o mapeamento da origem do evento.  
*Digite*: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-loggingconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-loggingconfig.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MetricsConfig`   <a name="sam-function-msk-metricsconfig"></a>
Um objeto de configuração que especifica a configuração de métricas para o mapeamento da origem do evento.  
*Digite*: [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `ProvisionedPollerConfig`   <a name="sam-function-msk-provisionedpollerconfig"></a>
Configuração para aumentar a quantidade de sondagens usados para computar os mapeamentos da origem do evento. Essa configuração permite um mínimo de 1 poller e um máximo de 2.000 pollers. Para obter um exemplo, consulte [ProvisionedPollerConfig exemplo](#sam-property-function-msk-example-provisionedpollerconfig).  
*Digite*: [ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

`SchemaRegistryConfig`  <a name="sam-function-msk-schemaregistryconfig"></a>
Configuração para usar um registro de esquema com a origem de eventos do Kafka.  
Esse recurso `ProvisionedPollerConfig` precisa ser configurado.
*Tipo*: SchemaRegistryConfig  
*Obrigatório*: não  
*CloudFormation compatibilidade:* essa propriedade é passada diretamente para a `[AmazonManagedKafkaEventSourceConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-amazonmanagedkafkaeventsourceconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `SourceAccessConfigurations`   <a name="sam-function-msk-sourceaccessconfigurations"></a>
Uma matriz do protocolo de autenticação, os componentes da VPC ou o host virtual para proteger e definir a fonte de eventos.  
*Valores válidos*: `CLIENT_CERTIFICATE_TLS_AUTH`  
*Tipo*: lista de [SourceAccessConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade:* essa propriedade faz parte da [AmazonManagedKafkaEventSourceConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-eventsourcemapping-amazonmanagedkafkaeventsourceconfig)propriedade de um recurso. `AWS::Lambda::EventSourceMapping`

 `StartingPosition`   <a name="sam-function-msk-startingposition"></a>
A posição em um fluxo da qual você deseja iniciar a leitura.  
+ `AT_TIMESTAMP` – Especifique um tempo a partir do qual iniciar a leitura dos registros.
+ `LATEST` – Leia somente registros novos.
+ `TRIM_HORIZON` – Processe todos os registros disponíveis.
*Valores válidos*: `AT_TIMESTAMP` \$1 `LATEST` \$1 `TRIM_HORIZON`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartingPosition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPositionTimestamp`   <a name="sam-function-msk-startingpositiontimestamp"></a>
O tempo a partir do qual iniciar a leitura, em segundos no horário do Unix. Defina `StartingPositionTimestamp` quando `StartingPosition` é especificado como .`AT_TIMESTAMP`  
*Tipo*: duplo  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartingPositionTimestamp](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Stream`   <a name="sam-function-msk-stream"></a>
O nome de recurso da Amazon (ARN) do fluxo de dados ou um consumidor de fluxo.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventSourceArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Topics`   <a name="sam-function-msk-topics"></a>
O nome do tópico do Kafka.  
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Topics](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-topics)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

## Exemplos
<a name="sam-property-function-msk--examples"></a>

### Configuração completa com perfis do IAM
<a name="sam-property-function-msk-example-complete"></a>

O exemplo a seguir mostra uma configuração completa, incluindo a configuração do perfil do IAM necessário para usar o Schema Registry:

```
Parameters:
  PreCreatedSubnetOne:
    Type: String
  PreCreatedSubnetTwo:
    Type: String
  MskClusterName4:
    Type: String

Resources:
  MyLambdaExecutionRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Version: '2012-10-17		 	 	 '
        Statement:
        - Action: [sts:AssumeRole]
          Effect: Allow
          Principal:
            Service: [lambda.amazonaws.com]
      Policies:
      - PolicyName: KafkaClusterPermissions
        PolicyDocument:
          Statement:
          - Action: [kafka:DescribeClusterV2, kafka:GetBootstrapBrokers]
            Effect: Allow
            Resource: 'arn:aws:kafka:us-east-1:123456789012:cluster/*'
      - PolicyName: KafkaAuthPolicy
        PolicyDocument:
          Statement:
          - Action: [secretsmanager:GetSecretValue, kms:Decrypt]
            Effect: "Allow"
            Resource: ['arn:aws:secretsmanager:us-west-2:123456789012:secret:kafkaSecret-******',
                        'arn:aws:kms:us-west-2:123456789012:key/keyId']
      - PolicyName: ENIPolicy
        PolicyDocument:
          Statement:
          - Action: [ec2:CreateNetworkInterface,
              ec2:DescribeNetworkInterfaces, ec2:DescribeVpcs, ec2:DeleteNetworkInterface,
              ec2:DescribeSubnets, ec2:DescribeSecurityGroups]
            Effect: Allow
            Resource: '*'
      - PolicyName: SchemaRegistryPolicy
        PolicyDocument:
          Statement:
          - Action: [glue:GetRegistry]
            Effect: Allow
            Resource: 'arn:aws:glue:{region}:{account-id}:registry/{registry-name}'
      - PolicyName: SchemaVersionsPolicy
        PolicyDocument:
          Statement:
          - Action: [glue:GetSchemaVersions]
            Effect: Allow
            Resource: '*'
      ManagedPolicyArns:
      - !Sub arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
      Tags:
      - {Value: SAM, Key: lambda:createdBy}

  MyMskCluster:
    Type: AWS::MSK::Cluster
    Properties:
      BrokerNodeGroupInfo:
        ClientSubnets:
        - Ref: PreCreatedSubnetOne
        - Ref: PreCreatedSubnetTwo
        InstanceType: kafka.t3.small
        StorageInfo:
          EBSStorageInfo:
            VolumeSize: 1
      ClusterName:
        Ref: MskClusterName4
      KafkaVersion: 3.8.x
      NumberOfBrokerNodes: 2

  MyMskStreamProcessor:
    Type: AWS::Serverless::Function
    Properties:
      Runtime: nodejs18.x
      Handler: index.handler
      CodeUri: ${codeuri}
      Role:
        Fn::GetAtt: [MyLambdaExecutionRole, Arn]
      Events:
        MyMskEvent:
          Type: MSK
          Properties:
            StartingPosition: LATEST
            Stream:
              Ref: MyMskCluster
            SourceAccessConfigurations:
            - Type: SASL_SCRAM_512_AUTH
              URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-path/my-secret-name-1a2b3c
            Topics:
            - SchemaRegistryTestTopic
            ProvisionedPollerConfig:
              MinimumPollers: 1
            SchemaRegistryConfig:
              AccessConfigs:
              - Type: BASIC_AUTH
                URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-path/my-secret-name-1a2b3c
              SchemaValidationConfigs:
              - Attribute: KEY
              EventRecordFormat: JSON
              SchemaRegistryURI: !Sub arn:${AWS::Partition}:glue:us-west-2:123456789012:registry/myregistry
```

### ProvisionedPollerConfig exemplo
<a name="sam-property-function-msk-example-provisionedpollerconfig"></a>

```
ProvisionedPollerConfig:
  MinimumPollers: 1
  MaximumPollers: 200
```

### Exemplo do Amazon MSK para cluster existente
<a name="sam-property-function-msk--examples--amazon-msk-example-for-existing-cluster"></a>

Veja a seguir um exemplo de um tipo de fonte de `MSK` evento para um cluster Amazon MSK que já existe em um Conta da AWS.

#### YAML
<a name="sam-property-function-msk--examples--amazon-msk-example-for-existing-cluster--yaml"></a>

```
Events:
  MSKEvent:
    Type: MSK
    Properties:
      StartingPosition: LATEST
      Stream: arn:aws:kafka:us-east-1:012345678012:cluster/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2
      Topics:
        - MyTopic
```

### Exemplo do Amazon MSK para cluster declarado no mesmo modelo
<a name="sam-property-function-msk--examples--amazon-msk-example-for-cluster-declared-in-same-template"></a>

Veja a seguir um exemplo de um tipo de fonte de `MSK` evento para um cluster Amazon MSK declarado no mesmo arquivo de modelo.

#### YAML
<a name="sam-property-function-msk--examples--amazon-msk-example-for-cluster-declared-in-same-template--yaml"></a>

```
Events:
  MSKEvent:
    Type: MSK
    Properties:
      StartingPosition: LATEST
      Stream:
        Ref: MyMskCluster   # This must be the name of an MSK cluster declared in the same template file
      Topics:
        - MyTopic
```

#### Origem de eventos MSK com o Schema Registry
<a name="sam-property-function-msk-example-schemaregistry"></a>

Veja a seguir um exemplo de um tipo de origem de evento do `MSK` configurado com o esquema de registro.

```
Events:
  MSKEvent:
    Type: MSK
    Properties:
      StartingPosition: LATEST
      Stream:
        Ref: MyMskCluster
      Topics:
        - SchemaRegistryTestTopic
      ProvisionedPollerConfig:
        MinimumPollers: 1
      SchemaRegistryConfig:
        SchemaRegistryURI: !Sub arn:${AWS::Partition}:glue:us-west-2:123456789012:registry/myregistry
        EventRecordFormat: JSON
        SchemaValidationConfigs:
          - Attribute: KEY
          - Attribute: VALUE
```

#### Origem de eventos MSK com o Confluent Schema Registry
<a name="sam-property-function-msk-example-schemaregistry-confluent"></a>

Veja a seguir um exemplo de um tipo de origem de eventos do `MSK` configurado com o Confluent Schema Registry.

```
Events:
  MSKEvent:
    Type: MSK
    Properties:
      StartingPosition: LATEST
      Stream:
        Ref: MyMskCluster
      Topics:
        - SchemaRegistryTestTopic
      ProvisionedPollerConfig:
        MinimumPollers: 1
      SchemaRegistryConfig:
        SchemaRegistryURI: https://my-schema-registry.confluent.cloud
        AccessConfigs:
          - Type: BASIC_AUTH
            URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-secret
        EventRecordFormat: JSON
        SchemaValidationConfigs:
          - Attribute: KEY
          - Attribute: VALUE
```

# S3
<a name="sam-property-function-s3"></a>

O objeto que descreve um tipo de fonte de evento de `S3`.

## Sintaxe
<a name="sam-property-function-s3-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-s3-syntax.yaml"></a>

```
  [Bucket](#sam-function-s3-bucket): String
  [Events](#sam-function-s3-events): String | List
  [Filter](#sam-function-s3-filter): [NotificationFilter](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html)
```

## Propriedades
<a name="sam-property-function-s3-properties"></a>

 `Bucket`   <a name="sam-function-s3-bucket"></a>
O nome do bucket do S3. Esse bucket precisa existir no mesmo modelo.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[BucketName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-name)` propriedade de um `AWS::S3::Bucket` recurso. Este é um campo obrigatório no SAM. Esse campo aceita somente uma referência ao bucket do S3 criado neste modelo

 `Events`   <a name="sam-function-s3-events"></a>
O evento do bucket do Amazon S3 para o qual invocar a função do Lambda. Consulte os [tipos de eventos compatíveis com o Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html#supported-notification-event-types) para obter uma lista de valores válidos.  
*Tipo*: String \$1 List  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Event](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-event)` propriedade do tipo de `AWS::S3::Bucket` `LambdaConfiguration` dados.

 `Filter`   <a name="sam-function-s3-filter"></a>
As regras de filtragem que determinam quais objetos do Amazon S3 invocam a função do Lambda. Para obter informações sobre a filtragem de nome de chave do Amazon S3, consulte [Configurar notificações de Amazon S3 Event](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) no *Guia do desenvolvedor do Amazon Simple Storage Service*.  
*Digite*: [NotificationFilter](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Filter](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html)` propriedade do tipo de `AWS::S3::Bucket` `LambdaConfiguration` dados.

## Exemplos
<a name="sam-property-function-s3--examples"></a>

### Evento do S3
<a name="sam-property-function-s3--examples--s3-event"></a>

Exemplo de um evento do S3.

#### YAML
<a name="sam-property-function-s3--examples--s3-event--yaml"></a>

```
Events:
  S3Event:
    Type: S3
    Properties:
      Bucket:
        Ref: ImagesBucket     # This must be the name of an S3 bucket declared in the same template file
      Events: s3:ObjectCreated:*
      Filter:
        S3Key:
          Rules:
          - Name: prefix      # or "suffix"
            Value: value      # The value to search for in the S3 object key names
```

# Schedule
<a name="sam-property-function-schedule"></a>

O objeto que descreve um tipo de fonte de `Schedule` evento, que define sua função sem servidor como o destino de uma EventBridge regra da Amazon que é acionada em um cronograma. Para obter mais informações, consulte [O que é a Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) no *Guia do EventBridge usuário da Amazon*.

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)recurso quando esse tipo de evento é definido.

**nota**  
EventBridge agora oferece um novo recurso de agendamento, a [Amazon EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html). EventBridge SchedulerA Amazon é um programador sem servidor que permite criar, executar e gerenciar tarefas a partir de um serviço gerenciado central. EventBridge Scheduleré altamente personalizável e oferece escalabilidade aprimorada em relação às regras EventBridge programadas, com um conjunto mais amplo de operações de API de destino e. Serviços da AWS  
Recomendamos que você use o EventBridge Scheduler para invocar destinos em uma programação. Para definir esse tipo de fonte de evento em seus AWS SAM modelos, consulte[ScheduleV2](sam-property-function-schedulev2.md).

## Sintaxe
<a name="sam-property-function-schedule-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-schedule-syntax.yaml"></a>

```
  [DeadLetterConfig](#sam-function-schedule-deadletterconfig): DeadLetterConfig
  [Description](#sam-function-schedule-description): String
  [Enabled](#sam-function-schedule-enabled): Boolean
  [Input](#sam-function-schedule-input): String
  [Name](#sam-function-schedule-name): String
  [RetryPolicy](#sam-function-schedule-retrypolicy): [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)
  [Schedule](#sam-function-schedule-schedule): String
  [State](#sam-function-schedule-state): String
```

## Propriedades
<a name="sam-property-function-schedule-properties"></a>

 `DeadLetterConfig`   <a name="sam-function-schedule-deadletterconfig"></a>
Configure a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma função Lambda que não existe ou quando não há permissões suficientes para invocar EventBridge a função Lambda. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *  
O tipo de recurso [AWS::Serverless::Function](sam-resource-function.md) tem um tipo de dados semelhante, `DeadLetterQueue`, que lida com falhas que ocorrem após a invocação bem-sucedida da função do Lambda de destino. Exemplos desses tipos de falhas incluem controle de utilização do Lambda ou erros retornados pela função de destino do Lambda. Para obter mais informações sobre a propriedade `DeadLetterQueue` da função, consulte [Filas de mensagens não entregues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq) no *Guia do desenvolvedor do AWS Lambda *.
*Digite*: [DeadLetterConfig](sam-property-function-scheduledeadletterconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig)` propriedade do tipo de `AWS::Events::Rule` `Target` dados. A AWS SAM versão dessa propriedade inclui subpropriedades adicionais, caso você queira criar AWS SAM a fila de mensagens mortas para você.

 `Description`   <a name="sam-function-schedule-description"></a>
Uma descrição da regra.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-description)` propriedade de um `AWS::Events::Rule` recurso.

 `Enabled`   <a name="sam-function-schedule-enabled"></a>
Indica se a regra está habilitada.  
Para desativar a regra, defina essa propriedade como `false`.  
Especifique a propriedade `Enabled` ou `State`, mas não ambas.
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state)` propriedade de um `AWS::Events::Rule` recurso. Se essa propriedade for definida como `true` então AWS SAM passa`ENABLED`, caso contrário, ela passa`DISABLED`.

 `Input`   <a name="sam-function-schedule-input"></a>
Texto JSON válido passado para o destino. Se você usar essa propriedade, nada do próprio texto do evento é passado para o destino.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Input](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input)` propriedade de um `AWS::Events::Rule Target` recurso.

 `Name`   <a name="sam-function-schedule-name"></a>
O nome da regra. Se você não especificar um nome, CloudFormation gera uma ID física exclusiva e usa essa ID para o nome da regra.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name)` propriedade de um `AWS::Events::Rule` recurso.

 `RetryPolicy`   <a name="sam-function-schedule-retrypolicy"></a>
Um objeto `RetryPolicy` que inclui informações sobre as configurações de política de repetição. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *  
*Digite*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)` propriedade do tipo de `AWS::Events::Rule` `Target` dados.

 `Schedule`   <a name="sam-function-schedule-schedule"></a>
A expressão de programação que determina quando e com que frequência a regra é executada. Para obter mais informações, consulte [Programar expressões para regras](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ScheduleExpression](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-scheduleexpression)` propriedade de um `AWS::Events::Rule` recurso.

 `State`   <a name="sam-function-schedule-state"></a>
O estado da regra.  
*Valores aceitos:* `DISABLED | ENABLED`  
Especifique a propriedade `Enabled` ou `State`, mas não ambas.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state)` propriedade de um `AWS::Events::Rule` recurso.

## Exemplos
<a name="sam-property-function-schedule--examples"></a>

### CloudWatch Agende um evento
<a name="sam-property-function-schedule--examples--cloudwatch-schedule-event"></a>

CloudWatch Exemplo de agendamento de evento

#### YAML
<a name="sam-property-function-schedule--examples--cloudwatch-schedule-event--yaml"></a>

```
CWSchedule:
  Type: Schedule
  Properties:
    Schedule: 'rate(1 minute)'
    Name: TestSchedule
    Description: test schedule
    Enabled: false
```

# DeadLetterConfig
<a name="sam-property-function-scheduledeadletterconfig"></a>

O objeto usado para especificar a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma função do Lambda que não existe ou permissões insuficientes para invocar a função do Lambda. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *

**nota**  
O tipo de recurso [AWS::Serverless::Function](sam-resource-function.md) tem um tipo de dados semelhante, `DeadLetterQueue` que lida com falhas que ocorrem após a invocação bem-sucedida da função do Lambda de destino. Exemplos desse tipo de falha incluem controle de utilização do Lambda ou erros retornados pela função de destino do Lambda. Para obter mais informações sobre a propriedade `DeadLetterQueue` da função, consulte as [filas de mensagens não entregues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq) no *Guia do desenvolvedor do AWS Lambda *.

## Sintaxe
<a name="sam-property-function-scheduledeadletterconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-scheduledeadletterconfig-syntax.yaml"></a>

```
  [Arn](#sam-function-scheduledeadletterconfig-arn): String
  [QueueLogicalId](#sam-function-scheduledeadletterconfig-queuelogicalid): String
  [Type](#sam-function-scheduledeadletterconfig-type): String
```

## Propriedades
<a name="sam-property-function-scheduledeadletterconfig-properties"></a>

 `Arn`   <a name="sam-function-scheduledeadletterconfig-arn"></a>
O nome de recurso da Amazon (ARN) da fila Amazon SQS especificado como o destino para a fila de mensagens não entregues.  
Especifique a propriedade `Type` ou a propriedade `Arn`, mas não ambas.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Arn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-deadletterconfig.html#cfn-events-rule-deadletterconfig-arn)` propriedade do tipo de `AWS::Events::Rule` `DeadLetterConfig` dados.

 `QueueLogicalId`   <a name="sam-function-scheduledeadletterconfig-queuelogicalid"></a>
O nome personalizado da fila de letras mortas que AWS SAM cria se `Type` for especificado.  
Se a propriedade `Type` não estiver definida, essa propriedade será ignorada.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Type`   <a name="sam-function-scheduledeadletterconfig-type"></a>
O tipo da fila. Quando essa propriedade é definida, cria AWS SAM automaticamente uma fila de mensagens mortas e anexa a [política baseada em recursos](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html#dlq-perms) necessária para conceder permissão ao recurso de regra para enviar eventos para a fila.  
Especifique a propriedade `Type` ou a propriedade `Arn`, mas não ambas.
*Valores válidos*: `SQS`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-scheduledeadletterconfig--examples"></a>

### DeadLetterConfig
<a name="sam-property-function-scheduledeadletterconfig--examples--deadletterconfig"></a>

DeadLetterConfig

#### YAML
<a name="sam-property-function-scheduledeadletterconfig--examples--deadletterconfig--yaml"></a>

```
DeadLetterConfig:
  Type: SQS
  QueueLogicalId: MyDLQ
```

# ScheduleV2
<a name="sam-property-function-schedulev2"></a>

O objeto que descreve um tipo de fonte de `ScheduleV2` evento, que define sua função sem servidor como o destino de um evento do Amazon EventBridge Scheduler que é acionado em uma programação. Para obter mais informações, consulte [O que é o Amazon EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html)? no *Guia do usuário do EventBridge Scheduler*.

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html)recurso quando esse tipo de evento é definido.

## Sintaxe
<a name="sam-property-function-schedulev2-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-schedulev2-syntax.yaml"></a>

```
[DeadLetterConfig](#sam-function-schedulev2-deadletterconfig): DeadLetterConfig
[Description](#sam-function-schedulev2-description): String
[EndDate](#sam-function-schedulev2-enddate): String
[FlexibleTimeWindow](#sam-function-schedulev2-flexibletimewindow): FlexibleTimeWindow
[GroupName](#sam-function-schedulev2-groupname): String
[Input](#sam-function-schedulev2-input): String
[KmsKeyArn](#sam-function-schedulev2-kmskeyarn): String
[Name](#sam-function-schedulev2-name): String
OmitName: Boolean
[PermissionsBoundary](#sam-function-schedulev2-permissionsboundary): String
[RetryPolicy](#sam-function-schedulev2-retrypolicy): RetryPolicy
[RoleArn](#sam-function-schedulev2-rolearn): String
[ScheduleExpression](#sam-function-schedulev2-schedule): String
[ScheduleExpressionTimezone](#sam-function-schedulev2-scheduleexpressiontimezone): String
[StartDate](#sam-function-schedulev2-startdate): String
[State](#sam-function-schedulev2-state): String
```

## Propriedades
<a name="sam-property-function-schedulev2-properties"></a>

 `DeadLetterConfig`   <a name="sam-function-schedulev2-deadletterconfig"></a>
Configure a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma função Lambda que não existe ou quando não há permissões suficientes para invocar EventBridge a função Lambda. *Para obter mais informações, consulte [Configurando uma fila de mensagens mortas para o EventBridge Scheduler no Guia do usuário do Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/configuring-schedule-dlq.html). EventBridge *  
O tipo de recurso [AWS::Serverless::Function](sam-resource-function.md) tem um tipo de dados semelhante, `DeadLetterQueue`, que lida com falhas que ocorrem após a invocação bem-sucedida da função do Lambda de destino. Exemplos desses tipos de falhas incluem controle de utilização do Lambda ou erros retornados pela função de destino do Lambda. Para obter mais informações sobre a propriedade `DeadLetterQueue` da função, consulte [Filas de mensagens não entregues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq) no *Guia do desenvolvedor do AWS Lambda *.
*Digite*: [DeadLetterConfig](sam-property-function-scheduledeadletterconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-deadletterconfig)` propriedade do tipo de `AWS::Scheduler::Schedule` `Target` dados. A AWS SAM versão dessa propriedade inclui subpropriedades adicionais, caso você queira criar AWS SAM a fila de mensagens mortas para você.

 `Description`   <a name="sam-function-schedulev2-description"></a>
Uma descrição da agenda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-description)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `EndDate`   <a name="sam-function-schedulev2-enddate"></a>
A data, em UTC, até a qual a agenda pode invocar seu destino. Dependendo da expressão de recorrência da agenda, as invocações podem ser interrompidas até a **EndDate** que você especifica.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EndDate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-enddate)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `FlexibleTimeWindow`   <a name="sam-function-schedulev2-flexibletimewindow"></a>
Permite a configuração de uma janela na qual uma agenda pode ser invocada.  
*Digite*: [FlexibleTimeWindow](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-flexibletimewindow)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FlexibleTimeWindow](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-flexibletimewindow)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `GroupName`   <a name="sam-function-schedulev2-groupname"></a>
O nome do grupo de agendas para associar a essa agenda. Se não for definido, o grupo padrão será usado.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[GroupName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-groupname)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `Input`   <a name="sam-function-schedulev2-input"></a>
Texto JSON válido passado para o destino. Se você usar essa propriedade, nada do próprio texto do evento é passado para o destino.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Input](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-input)` propriedade de um `AWS::Scheduler::Schedule Target` recurso.

 `KmsKeyArn`   <a name="sam-function-schedulev2-kmskeyarn"></a>
O ARN de uma chave KMS será usada para criptografar dados do cliente.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-kmskeyarn)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `Name`   <a name="sam-function-schedulev2-name"></a>
O nome da programação. Se você não especificar um nome, AWS SAM gera um nome no formato `Function-Logical-IDEvent-Source-Name` e usa essa ID para o nome da agenda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-name)` propriedade de um `AWS::Scheduler::Schedule` recurso.

`OmitName`  <a name="sam-function-schedulev2-omitname"></a>
Por padrão, AWS SAM gera e usa um nome de agendamento no formato de*<Function-logical-ID><event-source-name>*. Defina essa propriedade `true` para CloudFormation gerar uma ID física exclusiva e, em vez disso, use-a como nome da programação.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `false`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `PermissionsBoundary`   <a name="sam-function-schedulev2-permissionsboundary"></a>
O ARN da política usada para definir o limite de permissões para a função.  
Se `PermissionsBoundary` estiver definido, AWS SAM aplicará os mesmos limites à função IAM de destino da agenda do agendador.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[PermissionsBoundary](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary)` propriedade de um `AWS::IAM::Role` recurso.

 `RetryPolicy`   <a name="sam-function-schedulev2-retrypolicy"></a>
Um objeto **RetryPolicy** que inclui informações sobre as configurações de política de repetição.  
*Digite*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-retrypolicy)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-retrypolicy)` propriedade do tipo de `AWS::Scheduler::Schedule` `Target` dados.

 `RoleArn`   <a name="sam-function-schedulev2-rolearn"></a>
O ARN da função do IAM que o EventBridge Scheduler usará para o destino quando o agendamento for invocado.  
*Digite*: [RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn)` propriedade do tipo de `AWS::Scheduler::Schedule` `Target` dados.

 `ScheduleExpression`   <a name="sam-function-schedulev2-scheduleexpression"></a>
A expressão de programação que determina quando e com que frequência o evento de agendamento do agendador é executado.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ScheduleExpression](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-scheduleexpression)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `ScheduleExpressionTimezone`   <a name="sam-function-schedulev2-scheduleexpressiontimezone"></a>
O fuso horário no qual a expressão de agendamento é avaliada.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ScheduleExpressionTimezone](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-scheduleexpressiontimezone)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `StartDate`   <a name="sam-function-schedulev2-startdate"></a>
A data, em UTC, a partir da qual a agenda pode começar a invocar um destino. Dependendo da expressão de recorrência da agenda, as invocações podem ocorrer a partir da **StartDate** que você especifica.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartDate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-startdate)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `State`   <a name="sam-function-schedulev2-state"></a>
O estado da agenda do programador.  
*Valores aceitos:* `DISABLED | ENABLED`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-state)` propriedade de um `AWS::Scheduler::Schedule` recurso.

## Exemplos
<a name="sam-property-function-schedulev2--examples"></a>

### Exemplo básico de definição de um recurso ScheduleV2
<a name="sam-property-function-schedulev2--examples--example1"></a>

```
Resources:
  Function:
    Properties:
      ...
      Events:
        ScheduleEvent:
          Type: ScheduleV2
          Properties:
            ScheduleExpression: "rate(1 minute)"
        ComplexScheduleEvent:
          Type: ScheduleV2
          Properties:
            ScheduleExpression: rate(1 minute)
            FlexibleTimeWindow:
              Mode: FLEXIBLE
              MaximumWindowInMinutes: 5
            StartDate: '2022-12-28T12:00:00.000Z'
            EndDate: '2023-01-28T12:00:00.000Z'
            ScheduleExpressionTimezone: UTC
            RetryPolicy:
              MaximumRetryAttempts: 5
              MaximumEventAgeInSeconds: 300
            DeadLetterConfig:
              Type: SQS
```

**nota**  
O ID físico gerado do ScheduleV2 não inclui o nome da pilha.

# SelfManagedKafka
<a name="sam-property-function-selfmanagedkafka"></a>

O objeto que descreve um tipo de fonte de evento `SelfManagedKafka`. *Para obter mais informações, consulte [Usando AWS Lambda com o Apache Kafka autogerenciado](https://docs.aws.amazon.com/lambda/latest/dg/with-kafka.html) no Guia do desenvolvedor.AWS Lambda *

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)recurso quando esse tipo de evento é definido.

Para usar o Schema Registry, você precisa definir permissões específicas do perfil do IAM para sua função. Consulte [Configuração completa com perfis do IAM](sam-property-function-msk.md#sam-property-function-msk-example-complete) para ver um exemplo da configuração necessária.

## Sintaxe
<a name="sam-property-function-selfmanagedkafka-syntax"></a>

Para declarar essa entidade em seu AWS SAM modelo, use a sintaxe a seguir.

### YAML
<a name="sam-property-function-selfmanagedkafka-syntax.yaml"></a>

```
  [BatchSize](#sam-function-selfmanagedkafka-batchsize): Integer
  [BisectBatchOnFunctionError](#sam-function-selfmanagedkafka-bisectbatchonfunctionerror): Boolean
  [ConsumerGroupId](#sam-function-selfmanagedkafka-consumergroupid): String
  DestinationConfig: [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-destinationconfig.html)
  [Enabled](#sam-function-selfmanagedkafka-enabled): Boolean
  [FilterCriteria](#sam-function-selfmanagedkafka-filtercriteria): [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)
  [KafkaBootstrapServers](#sam-function-selfmanagedkafka-kafkabootstrapservers): List
  [FunctionResponseTypes](#sam-function-selfmanagedkafka-functionresponsetypes): List
  KmsKeyArn: String
  [LoggingConfig](#sam-function-selfmanagedkafka-loggingconfig): LoggingConfig
  [MaximumRecordAgeInSeconds](#sam-function-selfmanagedkafka-maximumrecordageinseconds): Integer
  [MaximumRetryAttempts](#sam-function-selfmanagedkafka-maximumretryattempts): Integer
  [MetricsConfig](#sam-function-selfmanagedkafka-metricsconfig): MetricsConfig
  [ProvisionedPollerConfig](#sam-function-selfmanagedkafka-provisionedpollerconfig): [ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig)
  [SchemaRegistryConfig](#sam-function-selfmanagedkafka-schemaregistryconfig): [SchemaRegistryConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-schemaregistryconfig.html)
  [SourceAccessConfigurations](#sam-function-selfmanagedkafka-sourceaccessconfigurations): [SourceAccessConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-sourceaccessconfigurations)
  StartingPosition: String
  StartingPositionTimestamp: Double
  [Topics](#sam-function-selfmanagedkafka-topics): List
```

## Propriedades
<a name="sam-property-function-selfmanagedkafka-properties"></a>

 `BatchSize`   <a name="sam-function-selfmanagedkafka-batchsize"></a>
O número máximo de registros em cada batch que o Lambda extrai da sua transmissão e envia para sua função.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 100  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.  
*Mínimo*: `1`  
*Maximum*: `10000`

 `BisectBatchOnFunctionError`   <a name="sam-function-selfmanagedkafka-bisectbatchonfunctionerror"></a>
Se a função retornar um erro, divida o lote em dois e tente novamente.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BisectBatchOnFunctionError](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-bisectbatchonfunctionerror)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `ConsumerGroupId`   <a name="sam-function-selfmanagedkafka-consumergroupid"></a>
Uma string que configura como os eventos serão lidos nos tópicos do Kafka.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SelfManagedKafkaEventSourceConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-selfmanagedkafkaeventsourceconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `DestinationConfig`   <a name="sam-function-selfmanagedkafka-destinationconfig"></a>
Um objeto de configuração que especifica o destino de um evento depois que o Lambda processá-lo.  
Use essa propriedade para especificar o destino de invocações com falha da fonte de eventos autogerenciada do Kafka.  
*Digite*: [DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-destinationconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ DestinationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-destinationconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Enabled`   <a name="sam-function-selfmanagedkafka-enabled"></a>
Desabilita o mapeamento de origens de eventos para pausar a sondagem e a invocação.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Enabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FilterCriteria`   <a name="sam-function-selfmanagedkafka-filtercriteria"></a>
Um objeto que define os critérios para determinar se o Lambda deve processar um evento. Para obter mais informações, consulte [Filtrando eventos do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Digite*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-filtercriteria)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `KafkaBootstrapServers`   <a name="sam-function-selfmanagedkafka-kafkabootstrapservers"></a>
A lista de servidores de bootstrap para seus corretores Kafka. Inclua a porta, por exemplo `broker.example.com:xxxx`  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionResponseTypes`   <a name="sam-function-selfmanagedkafka-functionresponsetypes"></a>
Uma lista de tipos de resposta atuais aplicados ao mapeamento da origem do evento. Para obter mais informações, consulte [Relatar falhas de itens em lote](https://docs.aws.amazon.com/lambda/latest/dg/kafka-retry-configurations.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Valores válidos*: `ReportBatchItemFailures`  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FunctionResponseTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `KmsKeyArn`   <a name="sam-function-selfmanagedkafka-kmskeyarn"></a>
O nome do recurso da Amazon (ARN) da chave para criptografar informações relacionadas a esse evento.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `LoggingConfig`   <a name="sam-function-selfmanagedkafka-loggingconfig"></a>
A configuração de registro para sua fonte de eventos.  
*Digite*: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-loggingconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-loggingconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumRecordAgeInSeconds`   <a name="sam-function-selfmanagedkafka-maximumrecordageinseconds"></a>
A idade máxima de um registro que o Lambda envia a uma função para processamento.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRecordAgeInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MetricsConfig`   <a name="sam-function-selfmanagedkafka-metricsconfig"></a>
A configuração de métricas para sua fonte de eventos.  
*Digite*: [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-metricsconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumRetryAttempts`   <a name="sam-function-selfmanagedkafka-maximumretryattempts"></a>
O número máximo de vezes para tentar novamente quando a função retorna um erro.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumRetryAttempts](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumretryattempts)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `ProvisionedPollerConfig`   <a name="sam-function-selfmanagedkafka-provisionedpollerconfig"></a>
Configuração para aumentar a quantidade de sondagens usados para computar os mapeamentos da origem do evento. Essa configuração permite um mínimo de 1 poller e um máximo de 2.000 pollers. Para obter um exemplo, consulte [ProvisionedPollerConfig exemplo](#sam-property-function-selfmanagedkafka-example-provisionedpollerconfig)  
*Digite*: [ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-provisionedpollerconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

`SchemaRegistryConfig`  <a name="sam-function-selfmanagedkafka-schemaregistryconfig"></a>
Configuração para usar um registro de esquema com a origem de eventos autogerenciada do Kafka.  
Esse recurso `ProvisionedPollerConfig` precisa ser configurado.
*Digite*: [SchemaRegistryConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-schemaregistryconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade:* essa propriedade é passada diretamente para a `[SelfManagedKafkaEventSourceConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-selfmanagedkafkaeventsourceconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `SourceAccessConfigurations`   <a name="sam-function-selfmanagedkafka-sourceaccessconfigurations"></a>
Uma matriz do protocolo de autenticação, os componentes da VPC ou o host virtual para proteger e definir a fonte de eventos.  
*Valores válidos*: `BASIC_AUTH | CLIENT_CERTIFICATE_TLS_AUTH | SASL_SCRAM_256_AUTH | SASL_SCRAM_512_AUTH | SERVER_ROOT_CA_CERTIFICATE`  
*Tipo*: lista de [SourceAccessConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-sourceaccessconfiguration)  
*Obrigatório*: sim  
*CloudFormation compatibilidade:* essa propriedade faz parte da `[SelfManagedKafkaEventSourceConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-selfmanagedkafkaeventsourceconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPosition`   <a name="sam-function-selfmanagedkafka-startingposition"></a>
A posição em um fluxo da qual você deseja iniciar a leitura.  
+ `AT_TIMESTAMP` – Especifique um tempo a partir do qual iniciar a leitura dos registros.
+ `LATEST` – Leia somente registros novos.
+ `TRIM_HORIZON` – Processe todos os registros disponíveis.
*Valores válidos*: `AT_TIMESTAMP` \$1 `LATEST` \$1 `TRIM_HORIZON`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartingPosition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `StartingPositionTimestamp`   <a name="sam-function-selfmanagedkafka-startingpositiontimestamp"></a>
O tempo a partir do qual iniciar a leitura, em segundos no horário do Unix. Defina `StartingPositionTimestamp` quando `StartingPosition` é especificado como .`AT_TIMESTAMP`  
*Tipo*: duplo  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartingPositionTimestamp](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingpositiontimestamp)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Topics`   <a name="sam-function-selfmanagedkafka-topics"></a>
O nome do tópico do Kafka.  
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Topics](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-topics)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

## Exemplos
<a name="sam-property-function-selfmanagedkafka--examples"></a>

### Configuração completa com perfis do IAM
<a name="sam-property-function-selfmanagedkafka-example-complete"></a>

O exemplo a seguir mostra uma configuração completa, incluindo a configuração do perfil do IAM necessário para usar o Schema Registry:

```
Parameters:
  PreCreatedSubnetOne:
    Type: String
  PreCreatedSubnetTwo:
    Type: String

Resources:
  MyLambdaExecutionRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Version: '2012-10-17		 	 	 '
        Statement:
        - Action: [sts:AssumeRole]
          Effect: Allow
          Principal:
            Service: [lambda.amazonaws.com]
      Policies:
      - PolicyName: KafkaAuthPolicy
        PolicyDocument:
          Statement:
          - Action: [secretsmanager:GetSecretValue, kms:Decrypt]
            Effect: "Allow"
            Resource: ['arn:aws:secretsmanager:us-west-2:123456789012:secret:kafkaSecret-******',
                        'arn:aws:kms:us-west-2:123456789012:key/keyId']
      - PolicyName: ENIPolicy
        PolicyDocument:
          Statement:
          - Action: [ec2:CreateNetworkInterface,
              ec2:DescribeNetworkInterfaces, ec2:DescribeVpcs, ec2:DeleteNetworkInterface,
              ec2:DescribeSubnets, ec2:DescribeSecurityGroups]
            Effect: Allow
            Resource: '*'
      - PolicyName: SchemaRegistryPolicy
        PolicyDocument:
          Statement:
          - Action: [glue:GetRegistry]
            Effect: Allow
            Resource: 'arn:aws:glue:{region}:{account-id}:registry/{registry-name}'
      - PolicyName: SchemaVersionsPolicy
        PolicyDocument:
          Statement:
          - Action: [glue:GetSchemaVersions]
            Effect: Allow
            Resource: '*'
      ManagedPolicyArns:
      - !Sub arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
      Tags:
      - {Value: SAM, Key: lambda:createdBy}

  MyKafkaProcessor:
    Type: AWS::Serverless::Function
    Properties:
      Runtime: nodejs18.x
      Handler: index.handler
      CodeUri: ${codeuri}
      Role:
        Fn::GetAtt: [MyLambdaExecutionRole, Arn]
      Events:
        SelfManagedKafkaEvent:
          Type: SelfManagedKafka
          Properties:
            KafkaBootstrapServers:
              - my-kafka-broker-1:9092
              - my-kafka-broker-2:9092
            Topics:
              - SchemaRegistryTestTopic
            StartingPosition: LATEST
            SourceAccessConfigurations:
              - Type: VPC_SUBNET
                URI: subnet:subnet-12345678
              - Type: VPC_SECURITY_GROUP
                URI: security_group:sg-12345678
              - Type: BASIC_AUTH
                URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-path/my-secret-name-1a2b3c
            ProvisionedPollerConfig:
              MinimumPollers: 1
            SchemaRegistryConfig:
              AccessConfigs:
              - Type: BASIC_AUTH
                URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-path/my-secret-name-1a2b3c
              SchemaValidationConfigs:
              - Attribute: KEY
              EventRecordFormat: JSON
              SchemaRegistryURI: !Sub arn:${AWS::Partition}:glue:us-west-2:123456789012:registry/myregistry
```

### ProvisionedPollerConfig exemplo
<a name="sam-property-function-selfmanagedkafka-example-provisionedpollerconfig"></a>

```
ProvisionedPollerConfig:
  MinimumPollers: 1
  MaximumPollers: 200
```

### Fonte autogerenciada de eventos Kafka
<a name="sam-property-function-selfmanagedkafka--examples--self-managed-kafka-event-source"></a>

O exemplo a seguir mostra o tipo de origem de um evento `SelfManagedKafka`.

#### YAML
<a name="sam-property-function-selfmanagedkafka--examples--self-managed-kafka-event-source--yaml"></a>

```
Events:
  SelfManagedKafkaEvent:
    Type: SelfManagedKafka
    Properties:
      BatchSize: 1000
      Enabled: true
      KafkaBootstrapServers:
        - abc.xyz.com:xxxx
      SourceAccessConfigurations:
        -  Type: BASIC_AUTH
           URI: arn:aws:secretsmanager:us-west-2:123456789012:secret:my-path/my-secret-name-1a2b3c
      Topics:
        - MyKafkaTopic
```

### Fonte de eventos Kafka autogerenciada com registro de esquemas AWS Glue
<a name="sam-property-function-selfmanagedkafka-example-schemaregistry"></a>

Veja a seguir um exemplo de um tipo de fonte de `SelfManagedKafka` evento configurado com o AWS Glue Schema Registry.

```
Events:
  SelfManagedKafkaEvent:
    Type: SelfManagedKafka
    Properties:
      KafkaBootstrapServers:
        - abc.xyz.com:9092
      Topics:
        - SchemaRegistryTestTopic
      StartingPosition: LATEST
      ProvisionedPollerConfig:
        MinimumPollers: 1
      SchemaRegistryConfig:
        SchemaRegistryURI: !Sub arn:${AWS::Partition}:glue:us-west-2:123456789012:registry/myregistry
        EventRecordFormat: JSON
        SchemaValidationConfigs:
          - Attribute: KEY
          - Attribute: VALUE
      SourceAccessConfigurations:
        - Type: VPC_SUBNET
          URI: subnet:subnet-12345678
        - Type: VPC_SECURITY_GROUP
          URI: security_group:sg-12345678
```

### Origem de eventos Kafka autogerenciada com o Confluent Schema Registry
<a name="sam-property-function-selfmanagedkafka-example-schemaregistry-confluent"></a>

Veja a seguir um exemplo de um tipo de origem de eventos do `SelfManagedKafka` configurado com o Confluent Schema Registry.

```
Events:
  SelfManagedKafkaEvent:
    Type: SelfManagedKafka
    Properties:
      KafkaBootstrapServers:
        - abc.xyz.com:9092
      Topics:
        - SchemaRegistryTestTopic
      StartingPosition: LATEST
      ProvisionedPollerConfig:
        MinimumPollers: 1
      SchemaRegistryConfig:
        SchemaRegistryURI: https://my-schema-registry.confluent.cloud
        AccessConfigs:
          - Type: BASIC_AUTH
            URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-secret
        EventRecordFormat: JSON
        SchemaValidationConfigs:
          - Attribute: KEY
          - Attribute: VALUE
      SourceAccessConfigurations:
        - Type: VPC_SUBNET
          URI: subnet:subnet-12345678
        - Type: VPC_SECURITY_GROUP
          URI: security_group:sg-12345678
        - Type: BASIC_AUTH
          URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:kafka-secret
```

# SNS
<a name="sam-property-function-sns"></a>

O objeto que descreve um tipo de fonte de evento `SNS`.

O SAM gera recursos [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html) quando esse tipo de evento é definido

## Sintaxe
<a name="sam-property-function-sns-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-sns-syntax.yaml"></a>

```
  [FilterPolicy](#sam-function-sns-filterpolicy): [SnsFilterPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicy)
  FilterPolicyScope: String
  RedrivePolicy: Json
  [Region](#sam-function-sns-region): String
  [SqsSubscription](#sam-function-sns-sqssubscription): Boolean | SqsSubscriptionObject
  [Topic](#sam-function-sns-topic): String
```

## Propriedades
<a name="sam-property-function-sns-properties"></a>

 `FilterPolicy`   <a name="sam-function-sns-filterpolicy"></a>
O JSON da política de filtros atribuído à assinatura. Para obter mais informações, consulte [GetSubscriptionAttributes](https://docs.aws.amazon.com/sns/latest/api/API_GetSubscriptionAttributes.html)a Referência da API do Amazon Simple Notification Service.  
*Digite*: [SnsFilterPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicy)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FilterPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicy)` propriedade de um `AWS::SNS::Subscription` recurso.

 `FilterPolicyScope`   <a name="sam-function-sns-filterpolicyscope"></a>
Esse atributo permite que você escolha o escopo da filtragem usando um dos seguintes tipos de valor de string:  
+ `MessageAttributes` – O filtro é aplicado aos atributos de mensagem.
+ `MessageBody` – O filtro é aplicado ao corpo da mensagem.
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `MessageAttributes`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a ` [ FilterPolicyScope](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-filterpolicyscope)` propriedade de um `AWS::SNS::Subscription` recurso.

 `RedrivePolicy`   <a name="sam-function-sns-redrivepolicy"></a>
Quando especificado, envia mensagens não entregues para a fila de mensagens não entregues do Amazon SQS especificada. As mensagens que não podem ser entregues devido a erros do cliente (por exemplo, quando o endpoint inscrito está inacessível) ou erros do servidor (por exemplo, quando o serviço que ativa o endpoint inscrito se torna indisponível) são mantidas na fila de mensagens não entregues para análise ou reprocessamento adicionais.  
Para obter mais informações sobre a política de redirecionamento e filas de mensagens não entregues, consulte [Filas de mensagens não entregues do Amazon SQS](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html) no *Guia do desenvolvedor do Amazon Simple Queue Service*.  
*Tipo*: Json  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ RedrivePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-redrivepolicy)` propriedade de um `AWS::SNS::Subscription` recurso.

 `Region`   <a name="sam-function-sns-region"></a>
Para assinaturas entre regiões, a região em que o tópico reside.  
Se nenhuma região for especificada, CloudFormation usa a região do chamador como padrão.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-subscription-region)` propriedade de um `AWS::SNS::Subscription` recurso.

 `SqsSubscription`   <a name="sam-function-sns-sqssubscription"></a>
Defina essa propriedade como verdadeira ou especifique `SqsSubscriptionObject` para habilitar notificações de tópicos do SNS em lotes em uma fila SQS. Definir essa propriedade para `true` cria uma nova fila SQS, enquanto especificar um `SqsSubscriptionObject` usa uma fila SQS existente.  
*Tipo*: Boolean \$1 [SqsSubscriptionObject](sam-property-function-sqssubscriptionobject.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Topic`   <a name="sam-function-sns-topic"></a>
O ARN do tópico que deseja assinar  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TopicArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#topicarn)` propriedade de um `AWS::SNS::Subscription` recurso.

## Exemplos
<a name="sam-property-function-sns--examples"></a>

### Exemplo de origem do evento do SNS
<a name="sam-property-function-sns--examples--sns-event-source-example"></a>

Exemplo de origem do evento do SNS

#### YAML
<a name="sam-property-function-sns--examples--sns-event-source-example--yaml"></a>

```
Events:
  SNSEvent:
    Type: SNS
    Properties:
      Topic: arn:aws:sns:us-east-1:123456789012:my_topic
      SqsSubscription: true
      FilterPolicy:
        store:
          - example_corp
        price_usd:
          - numeric:
              - ">="
              - 100
```

# SqsSubscriptionObject
<a name="sam-property-function-sqssubscriptionobject"></a>

Especifique uma opção de fila SQS existente para o evento SNS

## Sintaxe
<a name="sam-property-function-sqssubscriptionobject-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-sqssubscriptionobject-syntax.yaml"></a>

```
  [BatchSize](#sam-function-sqssubscriptionobject-batchsize): String
  [Enabled](#sam-function-sqssubscriptionobject-enabled): Boolean
  [QueueArn](#sam-function-sqssubscriptionobject-queuearn): String
  [QueuePolicyLogicalId](#sam-function-sqssubscriptionobject-queuepolicylogicalid): String
  [QueueUrl](#sam-function-sqssubscriptionobject-queueurl): String
```

## Propriedades
<a name="sam-property-function-sqssubscriptionobject-properties"></a>

 `BatchSize`   <a name="sam-function-sqssubscriptionobject-batchsize"></a>
O número máximo de itens a serem recuperados em um único lote para a fila do SQS.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: 10  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Enabled`   <a name="sam-function-sqssubscriptionobject-enabled"></a>
Desabilita o mapeamento de origens de eventos SQS para pausar a sondagem e a invocação.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: verdadeiro  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `QueueArn`   <a name="sam-function-sqssubscriptionobject-queuearn"></a>
Especifique um braço de fila SQS existente.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `QueuePolicyLogicalId`   <a name="sam-function-sqssubscriptionobject-queuepolicylogicalid"></a>
Forneça um nome LogicalID personalizado para o recurso. [AWS::SQS::QueuePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html)  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `QueueUrl`   <a name="sam-function-sqssubscriptionobject-queueurl"></a>
Especifique o URL da fila associado à propriedade `QueueArn`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-function-sqssubscriptionobject--examples"></a>

### Evento existente do SQS for SNS
<a name="sam-property-function-sqssubscriptionobject--examples--existing-sqs-for-sns-event"></a>

Exemplo para adicionar uma fila SQS existente para assinar um tópico do SNS.

#### YAML
<a name="sam-property-function-sqssubscriptionobject--examples--existing-sqs-for-sns-event--yaml"></a>

```
QueuePolicyLogicalId: CustomQueuePolicyLogicalId
QueueArn:
  Fn::GetAtt: MyCustomQueue.Arn
QueueUrl:
  Ref: MyCustomQueue
BatchSize: 5
```

# SQS
<a name="sam-property-function-sqs"></a>

O objeto que descreve um tipo de origem do evento `SQS`. Para obter mais informações, consulte Como [usar AWS Lambda com o Amazon SQS](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html) no Guia do *AWS Lambda desenvolvedor*.

O SAM gera recursos [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html) quando esse tipo de evento é definido

## Sintaxe
<a name="sam-property-function-sqs-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-sqs-syntax.yaml"></a>

```
  [BatchSize](#sam-function-sqs-batchsize): Integer
  [Enabled](#sam-function-sqs-enabled): Boolean
  [FilterCriteria](#sam-function-sqs-filtercriteria): [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)
  [FunctionResponseTypes](#sam-function-sqs-functionresponsetypes): List
  KmsKeyArn: String
  [MaximumBatchingWindowInSeconds](#sam-function-sqs-maximumbatchingwindowinseconds): Integer
  [MetricsConfig](#sam-function-sqs-metricsconfig): [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)
  [ProvisionedPollerConfig](#sam-function-sqs-provisionedpollerconfig): [ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig)
  [Queue](#sam-function-sqs-queue): String
  ScalingConfig: [ScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-scalingconfig.html)
```

## Propriedades
<a name="sam-property-function-sqs-properties"></a>

 `BatchSize`   <a name="sam-function-sqs-batchsize"></a>
O número máximo de itens a serem recuperados em um único lote.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 10  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[BatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.  
*Mínimo*: `1`  
*Maximum*: `10000`

 `Enabled`   <a name="sam-function-sqs-enabled"></a>
Desabilita o mapeamento de origens de eventos para pausar a sondagem e a invocação.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Enabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FilterCriteria`   <a name="sam-function-sqs-filtercriteria"></a>
Um objeto que define os critérios para determinar se o Lambda deve processar um evento. Para obter mais informações, consulte [Filtrando eventos do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Digite*: [FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FilterCriteria](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-filtercriteria.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `FunctionResponseTypes`   <a name="sam-function-sqs-functionresponsetypes"></a>
 Uma lista de tipos de resposta atuais aplicados ao mapeamento da origem do evento. Para obter mais informações, consulte [Relatar falhas de itens em lote](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#services-sqs-batchfailurereporting) no *Guia do desenvolvedor do AWS Lambda *.   
 *Valores válidos*: `ReportBatchItemFailures`   
 *Tipo:* lista   
 *Obrigatório*: não   
 *CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FunctionResponseTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionresponsetypes)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso. 

 `KmsKeyArn`   <a name="sam-function-sqs-kmskeyarn"></a>
O nome do recurso da Amazon (ARN) da chave para criptografar informações relacionadas a esse evento.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-kmskeyarn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MaximumBatchingWindowInSeconds`   <a name="sam-function-sqs-maximumbatchingwindowinseconds"></a>
O tempo máximo, em segundos, para coletar registros antes de invocar a função.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaximumBatchingWindowInSeconds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumbatchingwindowinseconds)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `MetricsConfig`   <a name="sam-function-sqs-metricsconfig"></a>
Uma configuração opcional para obter métricas aprimoradas para os mapeamentos da origem do evento que capturam cada estágio do processamento. Para ver um exemplo, consulte [MetricsConfig evento](sam-property-function-dynamodb.md#sam-property-function-dynamodb-example-metricsconfigevent).  
*Digite*: [MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MetricsConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-metricsconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `ProvisionedPollerConfig`   <a name="sam-function-sqs-provisionedpollerconfig"></a>
Configuração para aumentar a quantidade de sondagens usados para computar os mapeamentos da origem do evento. Essa configuração permite um mínimo de 2 pollers e um máximo de 2.000 pollers. Para obter um exemplo, consulte [ProvisionedPollerConfig exemplo](#sam-property-function-sqs-example-provisionedpollerconfig).  
*Digite*: [ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ProvisionedPollerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-provisionedpollerconfig)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `Queue`   <a name="sam-function-sqs-queue"></a>
O ARN da fila.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventSourceArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

 `ScalingConfig`   <a name="sam-function-sqs-scalingconfig"></a>
Configuração de escalabilidade dos agentes de sondagem SQS para controlar a taxa de invocação e definir o máximo de invocações simultâneas.  
*Digite*: `[ScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-scalingconfig.html)`  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ ScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-scalingconfig.html)` propriedade de um `AWS::Lambda::EventSourceMapping` recurso.

## Exemplos
<a name="sam-property-function-sqs--examples"></a>

### MetricsConfig evento
<a name="sam-property-function-sqs-example-metricsconfigevent"></a>

Veja a seguir um exemplo de um recurso que usa a propriedade `MetricsConfig` para capturar cada estágio de processamento para seus mapeamentos da origem do evento.

```
Resources:
  FilteredEventsFunction:
    Type: AWS::Serverless::Function
    Properties:
      CodeUri: s3://sam-demo-bucket/metricsConfig.zip
      Handler: index.handler
      Runtime: nodejs16.x
      Events:
        KinesisStream:
          Type: Kinesis
          Properties:
            Stream: !GetAtt KinesisStream.Arn
            StartingPosition: LATEST
            MetricsConfig:
              Metrics:
              - EventCount
```

### Evento do SQS básico
<a name="sam-property-function-sqs--examples--sqs-event"></a>

```
Events:
  SQSEvent:
    Type: SQS
    Properties:
      Queue: arn:aws:sqs:us-west-2:012345678901:my-queue
      BatchSize: 10
      Enabled: false
      FilterCriteria:
        Filters:
          - Pattern: '{"key": ["val1", "val2"]}'
```

### Configure relatórios parciais em lotes para sua fila SQS
<a name="sam-property-function-sqs--examples--sqs-partial-batch"></a>

```
Events:
  SQSEvent:
    Type: SQS
    Properties:
      Enabled: true
      FunctionResponseTypes:
        - ReportBatchItemFailures
      Queue: !GetAtt MySqsQueue.Arn
      BatchSize: 10
```

### Função do Lambda com um evento SQS que tem escalabilidade configurada
<a name="sam-property-function-sqs--examples--sqs-event-scaling"></a>

```
MyFunction:
  Type: AWS::Serverless::Function
  Properties:
    ...
    Events:
      MySQSEvent:
        Type: SQS
        Properties:
          ...
          ScalingConfig:
            MaximumConcurrency: 10
```

### ProvisionedPollerConfig exemplo
<a name="sam-property-function-sqs-example-provisionedpollerconfig"></a>

```
MyFunction:
  Type: AWS::Serverless::Function
  Properties:
    Handler: index.handler
    Runtime: nodejs18.x
    Timeout: 30
    Events:
      SQSEvent:
        Type: SQS
        Properties:
          Queue: !GetAtt MyQueue.Arn
          BatchSize: 10
          Enabled: True
          ProvisionedPollerConfig:
            MaximumPollers: 300
            MinimumPollers: 10
```

# FunctionCode
<a name="sam-property-function-functioncode"></a>

O [pacote de implantação](https://docs.aws.amazon.com/lambda/latest/dg/deployment-package-v2.html) para uma função do Lambda.

## Sintaxe
<a name="sam-property-function-functioncode-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-functioncode-syntax.yaml"></a>

```
  [Bucket](#sam-function-functioncode-bucket): String
  [Key](#sam-function-functioncode-key): String
  [Version](#sam-function-functioncode-version): String
```

## Propriedades
<a name="sam-property-function-functioncode-properties"></a>

 `Bucket`   <a name="sam-function-functioncode-bucket"></a>
Um bucket do Amazon S3 na mesma AWS região da sua função.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[S3Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3bucket)` propriedade do tipo de `AWS::Lambda::Function` `Code` dados.

 `Key`   <a name="sam-function-functioncode-key"></a>
A chave do Amazon S3 do pacote de implantação.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[S3Key](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3key)` propriedade do tipo de `AWS::Lambda::Function` `Code` dados.

 `Version`   <a name="sam-function-functioncode-version"></a>
Para objetos com controle de versão, a versão do objeto do pacote de implantação a ser usada.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[S3ObjectVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3objectversion)` propriedade do tipo de `AWS::Lambda::Function` `Code` dados.

## Exemplos
<a name="sam-property-function-functioncode--examples"></a>

### FunctionCode
<a name="sam-property-function-functioncode--examples--functioncode"></a>

`CodeUri`: exemplo de código da função

#### YAML
<a name="sam-property-function-functioncode--examples--functioncode--yaml"></a>

```
CodeUri:
  Bucket: sam-s3-demo-bucket-name
  Key: mykey-name
  Version: 121212
```

# FunctionUrlConfig
<a name="sam-property-function-functionurlconfig"></a>

Cria uma URL de AWS Lambda função com os parâmetros de configuração especificados. Um URL da função do Lambda é um endpoint HTTPS que você pode usar para invocar a função.

Por padrão, o URL da função que você cria usa a versão `$LATEST` da sua função do Lambda. Se você especificar um `AutoPublishAlias` para sua função do Lambda, o endpoint se conectará ao alias da função especificada.

Para obter mais informações, consulte a [função Lambda URLs](https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html) no Guia do *AWS Lambda desenvolvedor*.

## Sintaxe
<a name="sam-property-function-functionurlconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-functionurlconfig-syntax.yaml"></a>

```
[AuthType](#sam-function-functionurlconfig-authtype): String
[Cors](#sam-function-functionurlconfig-cors): [Cors](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-url-cors.html)
[InvokeMode](#sam-function-functionurlconfig-invokemode): String
```

## Propriedades
<a name="sam-property-function-functionurlconfig-properties"></a>

 `AuthType`   <a name="sam-function-functionurlconfig-authtype"></a>
O tipo de autenticação para o URL da função. Para usar AWS Identity and Access Management (IAM) para autorizar solicitações, defina `AWS_IAM` como. Para acesso aberto, defina-o como `NONE`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AuthType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html#cfn-lambda-url-authtype)` propriedade de um `AWS::Lambda::Url` recurso.

 `Cors`   <a name="sam-function-functionurlconfig-cors"></a>
As configurações de compartilhamento de recursos de origem cruzada (CORS) para o URL de função.  
*Type*: [Cors](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-url-cors.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Cors](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-url-cors.html)` propriedade de um `AWS::Lambda::Url` recurso.

 `InvokeMode`  <a name="sam-function-functionurlconfig-invokemode"></a>
O modo em que o URL da sua função será invocado. Para que sua função retorne a resposta após a conclusão da invocação, defina como `BUFFERED`. Para que sua função transmita a resposta, defina como `RESPONSE_STREAM`. O valor padrão é `BUFFERED`.  
*Valores válidos*: `BUFFERED` ou `RESPONSE_STREAM`  
*Tipo:* string  
*Obrigatório*: não  
*AWS CloudFormation compatibilidade*: essa propriedade é passada diretamente para a [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html#cfn-lambda-url-invokemode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html#cfn-lambda-url-invokemode)propriedade de um `AWS::Lambda::Url` recurso.

## Exemplos
<a name="sam-property-function-functionurlconfig--examples"></a>

### URL da função
<a name="sam-property-function-functionurlconfig--examples--function-url"></a>

O exemplo a seguir cria uma função do Lambda com um URL da função. O URL da função usa autorização do IAM.

#### YAML
<a name="sam-property-function-functionurlconfig--examples--function-url--yaml"></a>

```
HelloWorldFunction:
  Type: AWS::Serverless::Function
  Properties:
    CodeUri: hello_world/
    Handler: index.handler
    Runtime: nodejs20.x
    FunctionUrlConfig:
      AuthType: AWS_IAM
      InvokeMode: RESPONSE_STREAM

Outputs:
  MyFunctionUrlEndpoint:
      Description: "My Lambda Function URL Endpoint"
      Value:
        Fn::GetAtt: HelloWorldFunctionUrl.FunctionUrl
```

# CapacityProviderConfig
<a name="sam-property-function-capacityproviderconfig"></a>

Configura o provedor de capacidade ao qual as versões publicadas da função serão anexadas. Isso permite que a função seja executada em EC2 instâncias de propriedade do cliente gerenciadas pela Lambda.

**nota**  
Essa configuração determina o tipo de computação de uma função e precisa ser especificada durante a primeira implantação da função. Ele não pode ser adicionado ou removido após a criação do recurso da função.

## Sintaxe
<a name="sam-property-function-capacityproviderconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-capacityproviderconfig-syntax.yaml"></a>

```
[Arn](#sam-function-capacityproviderconfig-arn): String
[ExecutionEnvironmentMemoryGiBPerVCpu](#sam-function-capacityproviderconfig-executionenvironmentmemorygibpervcpu): Float
[PerExecutionEnvironmentMaxConcurrency](#sam-function-capacityproviderconfig-perexecutionenvironmentmaxconcurrency): Integer
```

## Propriedades
<a name="sam-property-function-capacityproviderconfig-properties"></a>

 `Arn`   <a name="sam-function-capacityproviderconfig-arn"></a>
O ARN do provedor de capacidade a ser usado para essa função.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva do SAM.

 `ExecutionEnvironmentMemoryGiBPerVCpu`   <a name="sam-function-capacityproviderconfig-executionenvironmentmemorygibpervcpu"></a>
A proporção de memória (em GiB) para vCPU para cada ambiente de execução.  
A taxa de memória por CPU não pode exceder a memória total da função de 2048 MB. As memory-to-CPU proporções suportadas são de 2 GB, 4 GB ou 8 GB por CPU.
*Tipo*: Flutuador  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ExecutionEnvironmentMemoryGiBPerVCpu](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-lambdamanagedinstancescapacityproviderconfig)` propriedade de um `AWS::Lambda::Function` recurso.

 `PerExecutionEnvironmentMaxConcurrency`   <a name="sam-function-capacityproviderconfig-perexecutionenvironmentmaxconcurrency"></a>
O número máximo de execuções simultâneas por ambiente de execução (sandbox).  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[PerExecutionEnvironmentMaxConcurrency](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-lambdamanagedinstancescapacityproviderconfig)` propriedade de um `AWS::Lambda::Function` recurso.

## Exemplos
<a name="sam-property-function-capacityproviderconfig-examples"></a>

### Configuração do provedor de capacidade
<a name="sam-property-function-capacityproviderconfig-examples-basic"></a>

O exemplo a seguir mostra uma configuração do provedor de capacidade que faz referência a um recurso do provedor de capacidade.

```
CapacityProviderConfig:
  Arn: !GetAtt MyCapacityProvider.Arn
  ExecutionEnvironmentMemoryGiBPerVCpu: 4.0
  PerExecutionEnvironmentMaxConcurrency: 100
```

# FunctionScalingConfig
<a name="sam-property-function-functionscalingconfig"></a>

Configura o comportamento de escalabilidade para as versões da função Lambda, controlando o número de ambientes de execução (sandboxes) que podem ser criados. Essa configuração se aplica às versões \$1LATEST.PUBLISHED e da função numérica.

## Sintaxe
<a name="sam-property-function-functionscalingconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-function-functionscalingconfig-syntax.yaml"></a>

```
[MinExecutionEnvironments](#sam-function-functionscalingconfig-minexecutionenvironments): Integer
[MaxExecutionEnvironments](#sam-function-functionscalingconfig-maxexecutionenvironments): Integer
```

## Propriedades
<a name="sam-property-function-functionscalingconfig-properties"></a>

 `MinExecutionEnvironments`   <a name="sam-function-functionscalingconfig-minexecutionenvironments"></a>
O número mínimo de ambientes de execução a serem mantidos para a versão da função.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: `3`  
*Mínimo*: `0`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MinExecutionEnvironments](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionscalingconfig-minexecutionenvironments)` propriedade de um `AWS::Lambda::Function` recurso.

 `MaxExecutionEnvironments`   <a name="sam-function-functionscalingconfig-maxexecutionenvironments"></a>
O número máximo de ambientes de execução que podem ser criados para a versão da função.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: `3`  
*Mínimo*: `0`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaxExecutionEnvironments](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionscalingconfig-maxexecutionenvironments)` propriedade de um `AWS::Lambda::Function` recurso.

## Exemplos
<a name="sam-property-function-functionscalingconfig-examples"></a>

### Configuração de escalonamento de funções
<a name="sam-property-function-functionscalingconfig-examples-basic"></a>

O exemplo a seguir mostra uma configuração de escalonamento de funções com ambientes de execução mínima e máxima.

```
FunctionScalingConfig:
  MinExecutionEnvironments: 5
  MaxExecutionEnvironments: 100
```

# AWS::Serverless::GraphQLApi
<a name="sam-resource-graphqlapi"></a>

Use o tipo de `AWS::Serverless::GraphQLApi` recurso AWS Serverless Application Model (AWS SAM) para criar e configurar uma AWS AppSync GraphQL API para seu aplicativo sem servidor.

Para saber mais AWS AppSync, consulte [O que é AWS AppSync?](https://docs.aws.amazon.com/appsync/latest/devguide/what-is-appsync.html) no *Guia do AWS AppSync desenvolvedor*.

## Sintaxe
<a name="sam-resource-graphqlapi-syntax"></a>

### YAML
<a name="sam-resource-graphqlapi-syntax-yaml"></a>

```
LogicalId:
  Type: AWS::Serverless::GraphQLApi
  Properties:
    ApiKeys: ApiKeys
    Auth: Auth
    Cache: [AWS::AppSync::ApiCache](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)
    DataSources: DataSource
    DomainName: [AWS::AppSync::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)
    Functions: Function
    Logging: [LogConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html)
    Name: String
    Resolvers: Resolver
    SchemaInline: String
    SchemaUri: String
    Tags:
    - [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)
    XrayEnabled: Boolean
```

## Propriedades
<a name="sam-resource-graphqlapi-properties"></a>

`ApiKeys`  <a name="sam-graphqlapi-apikeys"></a>
Crie uma chave exclusiva que possa ser usada para realizar operações GraphQL que exigem uma chave de API.  
*Digite*: [ApiKeys](sam-property-graphqlapi-apikeys.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`Auth`  <a name="sam-graphqlapi-auth"></a>
Configure a autenticação para sua API GraphQL.  
*Tipo*: [Auth](sam-property-graphqlapi-auth.md)  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`Cache`  <a name="sam-graphqlapi-cache"></a>
A entrada de uma operação `CreateApiCache`.  
*Digite*: [AWS::AppSync::ApiCache](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para o [AWS::AppSync::ApiCache](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)recurso.

`DataSources`  <a name="sam-graphqlapi-datasources"></a>
Crie fontes de dados para as funções AWS AppSync às quais se conectar. AWS SAM oferece suporte ao Amazon DynamoDB e às fontes de dados AWS Lambda .  
*Digite*: [DataSource](sam-property-graphqlapi-datasource.md)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`DomainName`  <a name="sam-graphqlapi-domainname"></a>
O nome de domínio personalizado para a sua API GraphQL.  
*Digite*: [AWS::AppSync::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para o [AWS::AppSync::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)recurso. AWS SAM gera automaticamente o [AWS::AppSync::DomainNameApiAssociation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html)recurso.

`Functions`  <a name="sam-graphqlapi-functions"></a>
Configure funções GraphQL APIs para realizar determinadas operações.  
*Tipo*: [Função](sam-property-graphqlapi-function.md)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`Logging`  <a name="sam-graphqlapi-logging"></a>
Configura o CloudWatch registro da Amazon para sua GraphQL API.  
Se você não especificar essa propriedade, AWS SAM gerará `CloudWatchLogsRoleArn` e definirá os seguintes valores:  
+ `ExcludeVerboseContent: true`
+ `FieldLogLevel: ALL`
Para cancelar o registro, especifique o seguinte:  

```
Logging: false
```
*Digite*: [LogConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[LogConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-logconfig)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

`LogicalId`  <a name="sam-graphqlapi-logicalid"></a>
O nome exclusivo da sua API GraphQL.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-name)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

`Name`  <a name="sam-graphqlapi-name"></a>
O nome da sua API GraphQL. Especifique essa propriedade para substituir o valor `LogicalId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-name)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

`Resolvers`  <a name="sam-graphqlapi-resolvers"></a>
Configure resolvedores para os campos da sua APIGraphQL. O AWS SAM suporta [JavaScript resolvedores de pipeline](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html#anatomy-of-a-pipeline-resolver-js).  
*Tipo*: [Resolver](sam-property-graphqlapi-resolver.md)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`SchemaInline`  <a name="sam-graphqlapi-schemainline"></a>
A representação de texto de um esquema GraphQL no formato SDL.  
*Tipo:* string  
*Obrigatório:* condicional. Você deve especificar o `SchemaInline` ou o `SchemaUri`.  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Definition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definition)` propriedade de um `AWS::AppSync::GraphQLSchema` recurso.

`SchemaUri`  <a name="sam-graphqlapi-schemauri"></a>
O URI ou o caminho do bucket do Amazon Simple Storage Service (Amazon S3) do esquema para uma pasta local.  
Se você especificar um caminho para uma pasta local, CloudFormation exigirá que o arquivo seja primeiro carregado no Amazon S3 antes da implantação. Você pode usar o AWS SAMCLI para facilitar esse processo. Para obter mais informações, consulte [Como AWS SAM carrega arquivos locais na implantação](deploy-upload-local-files.md).  
*Tipo:* string  
*Obrigatório:* condicional. Você deve especificar o `SchemaInline` ou o `SchemaUri`.  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DefinitionS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definitions3location)` propriedade de um `AWS::AppSync::GraphQLSchema` recurso.

`Tags`  <a name="sam-graphqlapi-tags"></a>
Tags (pares de chave-valor) para essa API GraphQL. Use as tags para identificar e categorizar os recursos.  
*Tipo:* lista de [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-tags)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

`XrayEnabled`  <a name="sam-graphqlapi-xrayenabled"></a>
Indique se o [AWS rastreamento de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) deve ser usado para esse recurso.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[XrayEnabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-xrayenabled)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

## Valores de retorno
<a name="sam-resource-graphqlapi-return-values"></a>

Para obter uma lista dos valores de retorno, consulte o [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#aws-resource-appsync-graphqlapi-return-values.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#aws-resource-appsync-graphqlapi-return-values.html) no [Guia do usuário do CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

## Exemplos
<a name="sam-resource-graphqlapi-examples"></a>

### GraphQL API com a fonte de dados do DynamoDB
<a name="sam-resource-graphqlapi-examples-example1"></a>

Neste exemplo, criamos uma API GraphQL que usa uma tabela do DynamoDB como fonte de dados.

**schema.graphql**

```
schema {
  query: Query
  mutation: Mutation
}

type Query {
  getPost(id: String!): Post
}

type Mutation {
  addPost(author: String!, title: String!, content: String!): Post!
}

type Post {
  id: String!
  author: String
  title: String
  content: String
  ups: Int!
  downs: Int!
  version: Int!
}
```

**template.yaml**

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  DynamoDBPostsTable:
    Type: AWS::Serverless::SimpleTable

  MyGraphQLAPI:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      SchemaUri: ./sam_graphql_api/schema.graphql
      Auth:
        Type: AWS_IAM
      DataSources:
        DynamoDb:
          PostsDataSource:
            TableName: !Ref DynamoDBPostsTable
            TableArn: !GetAtt DynamoDBPostsTable.Arn
      Functions:
        preprocessPostItem:
          Runtime:
            Name: APPSYNC_JS
            Version: 1.0.0
          DataSource: NONE
          CodeUri: ./sam_graphql_api/preprocessPostItem.js
        createPostItem:
          Runtime:
            Name: APPSYNC_JS
            Version: "1.0.0"
          DataSource: PostsDataSource
          CodeUri: ./sam_graphql_api/createPostItem.js
        getPostFromTable:
          Runtime:
            Name: APPSYNC_JS
            Version: "1.0.0"
          DataSource: PostsDataSource
          CodeUri: ./sam_graphql_api/getPostFromTable.js
      Resolvers:
        Mutation:
          addPost:
            Runtime:
              Name: APPSYNC_JS
              Version: "1.0.0"
            Pipeline:
            - preprocessPostItem
            - createPostItem
        Query:
          getPost:
            CodeUri: ./sam_graphql_api/getPost.js
            Runtime:
              Name: APPSYNC_JS
              Version: "1.0.0"
            Pipeline:
            - getPostFromTable
```

**createPostItem.js**

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  const { key, values } = ctx.prev.result;
  return {
    operation: "PutItem",
    key: util.dynamodb.toMapValues(key),
    attributeValues: util.dynamodb.toMapValues(values),
  };
}

export function response(ctx) {
  return ctx.result;
}
```

**getPostFromTable.js**

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  return dynamoDBGetItemRequest({ id: ctx.args.id });
}

export function response(ctx) {
  return ctx.result;
}

/**
 * A helper function to get a DynamoDB item
 */
function dynamoDBGetItemRequest(key) {
  return {
    operation: "GetItem",
    key: util.dynamodb.toMapValues(key),
  };
}
```

**preprocessPostItem.js**

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  const id = util.autoId();
  const { ...values } = ctx.args;
  values.ups = 1;
  values.downs = 0;
  values.version = 1;
  return { payload: { key: { id }, values: values } };
}

export function response(ctx) {
  return ctx.result;
}
```

Aqui está nosso código de resolução:

**getPost.js**

```
export function request(ctx) {
  return {};
}

export function response(ctx) {
  return ctx.prev.result;
}
```

### API GraphQL com uma função do Lambda como fonte de dados
<a name="sam-resource-graphqlapi-examples-example2"></a>

Neste exemplo, criamos uma API GraphQL que usa uma função do Lambda como fonte de dados.

**template.yaml**

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyLambdaFunction:
    Type: AWS::Serverless::Function
    Properties:
      Handler: index.handler
      Runtime: nodejs20.x
      CodeUri: ./lambda

  MyGraphQLAPI:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      Name: MyApi
      SchemaUri: ./gql/schema.gql
      Auth:
        Type: API_KEY
      ApiKeys:
        MyApiKey:
          Description: my api key
      DataSources:
        Lambda:
          MyLambdaDataSource:
            FunctionArn: !GetAtt MyLambdaFunction.Arn
      Functions:
        lambdaInvoker:
          Runtime:
            Name: APPSYNC_JS
            Version: 1.0.0
          DataSource: MyLambdaDataSource
          CodeUri: ./gql/invoker.js
      Resolvers:
        Mutation:
          addPost:
            Runtime:
              Name: APPSYNC_JS
              Version: 1.0.0
            Pipeline:
            - lambdaInvoker
        Query:
          getPost:
            Runtime:
              Name: APPSYNC_JS
              Version: 1.0.0
            Pipeline:
            - lambdaInvoker

Outputs:
  MyGraphQLAPI:
    Description: AppSync API
    Value: !GetAtt MyGraphQLAPI.GraphQLUrl
  MyGraphQLAPIMyApiKey:
    Description: API Key for authentication
    Value: !GetAtt MyGraphQLAPIMyApiKey.ApiKey
```

**schema.graphql**

```
schema {
  query: Query
  mutation: Mutation
}
type Query {
  getPost(id: ID!): Post
}
type Mutation {
  addPost(id: ID!, author: String!, title: String, content: String): Post!
}
type Post {
  id: ID!
  author: String!
  title: String
  content: String
  ups: Int
  downs: Int
}
```

Aqui estão nossas funções:

**lambda/index.js**

```
exports.handler = async (event) => {
  console.log("Received event {}", JSON.stringify(event, 3));

  const posts = {
    1: {
      id: "1",
      title: "First book",
      author: "Author1",
      content: "Book 1 has this content",
      ups: "100",
      downs: "10",
    },
  };

  console.log("Got an Invoke Request.");
  let result;
  switch (event.field) {
    case "getPost":
      return posts[event.arguments.id];
    case "addPost":
      // return the arguments back
      return event.arguments;
    default:
      throw new Error("Unknown field, unable to resolve " + event.field);
  }
};
```

**invoker.js**

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  const { source, args } = ctx;
  return {
    operation: "Invoke",
    payload: { field: ctx.info.fieldName, arguments: args, source },
  };
}

export function response(ctx) {
  return ctx.result;
}
```

# ApiKeys
<a name="sam-property-graphqlapi-apikeys"></a>

Crie uma chave exclusiva que possa ser usada para realizar operações GraphQL que exigem uma chave de API.

## Sintaxe
<a name="sam-property-graphqlapi-apikeys-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-apikeys-syntax-yaml"></a>

```
LogicalId:
  ApiKeyId: String
  Description: String
  ExpiresOn: Double
```

## Propriedades
<a name="sam-property-graphqlapi-apikeys-properties"></a>

`ApiKeyId`  <a name="sam-graphqlapi-apikeys-apikeyid"></a>
O nome exclusivo da sua chave de API. Especifique para substituir o valor `LogicalId`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ApiKeyId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apikeyid)` propriedade de um `AWS::AppSync::ApiKey` recurso.

`Description`  <a name="sam-graphqlapi-apikeys-description"></a>
Descrição da sua chave de API.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-description)` propriedade de um `AWS::AppSync::ApiKey` recurso.

`ExpiresOn`  <a name="sam-graphqlapi-apikeys-expireson"></a>
O tempo após o qual a chave de API expira. A data é representada como segundos desde o epoch, arredondada para baixo para a hora mais próxima.  
*Tipo*: duplo  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Expires](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-expires)` propriedade de um `AWS::AppSync::ApiKey` recurso.

`LogicalId`  <a name="sam-graphqlapi-apikeys-logicalid"></a>
O nome exclusivo da sua chave de API.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ApiKeyId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apikeyid)` propriedade de um `AWS::AppSync::ApiKey` recurso.

# Auth
<a name="sam-property-graphqlapi-auth"></a>

Configure a autorização para sua GraphQL API.

## Sintaxe
<a name="sam-property-graphqlapi-auth-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-auth-syntax-yaml"></a>

```
Additional:
- AuthProvider
LambdaAuthorizer: [LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html)
OpenIDConnect: [OpenIDConnectConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html)
Type: String
UserPool: [UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html)
```

## Propriedades
<a name="sam-property-graphqlapi-auth-properties"></a>

`Additional`  <a name="sam-graphqlapi-auth-additional"></a>
Uma lista de tipos de autorização adicionais para sua GraphQL API.  
*Tipo*: Lista de [AuthProvider](sam-property-graphqlapi-auth-authprovider.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`LambdaAuthorizer`  <a name="sam-graphqlapi-auth-lambdaauthorizer"></a>
Especifique a configuração de autorização opcional para seu autorizador de função do Lambda. Você pode configurar essa propriedade opcional quando `Type` for especificado como `AWS_LAMBDA`.  
*Tipo*: [LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-lambdaauthorizerconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

`OpenIDConnect`  <a name="sam-graphqlapi-auth-openidconnect"></a>
Especifique a configuração de autorização opcional para seu serviço OpenID Connect compatível. Você pode configurar essa propriedade opcional quando `Type` for especificado como `OPENID_CONNECT`.  
*Tipo*: [Open IDConnect Config](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-openidconnectconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ OpenIDConnectConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

`Type`  <a name="sam-graphqlapi-auth-type"></a>
O tipo de autorização padrão entre aplicativos e sua AWS AppSync GraphQL API.  
Para obter uma lista e uma descrição dos valores permitidos, consulte [Autorização e autenticação](https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html) no *AWS AppSync Guia do desenvolvedor*.  
Quando você especifica um autorizador Lambda (`AWS_LAMBDA`), AWS SAM cria uma política AWS Identity and Access Management (IAM) para provisionar permissões entre sua API GraphQL e a função Lambda.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AuthenticationType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-authenticationtype)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

`UserPool`  <a name="sam-graphqlapi-auth-userpool"></a>
Especifique a configuração de autorização opcional para usar grupos de usuários do Amazon Cognito. Você pode configurar essa propriedade opcional quando `Type` for especificado como `AMAZON_COGNITO_USER_POOLS`.  
*Tipo*: [UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-userpoolconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html)` propriedade de um `AWS::AppSync::GraphQLApi` recurso.

## Exemplos
<a name="sam-property-graphqlapi-auth-examples"></a>

### Configurar um tipo de autorização padrão e adicional
<a name="sam-property-graphqlapi-auth-examples-example1"></a>

Neste exemplo, começamos configurando um autorizador Lambda como o tipo de autorização padrão para nossa API GraphQL.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyGraphQLAPI:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      Auth:
        Type: AWS_LAMBDA
        LambdaAuthorizer:
          AuthorizerUri: !GetAtt Authorizer1.Arn
          AuthorizerResultTtlInSeconds: 10
          IdentityValidationExpression: hello
```

Em seguida, configuramos tipos de autorização adicionais para nossa GraphQL API adicionando o seguinte ao nosso modelo AWS SAM :

```
        Additional:
        - Type: AWS_IAM
        - Type: API_KEY
        - Type: OPENID_CONNECT
          OpenIDConnect:
            AuthTTL: 10
            ClientId: myId
            IatTTL: 10
            Issuer: prod
```

Isso resulta no seguinte AWS SAM modelo:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyGraphQLAPI:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      Auth:
        Type: AWS_LAMBDA
        LambdaAuthorizer:
          AuthorizerUri: !GetAtt Authorizer1.Arn
          AuthorizerResultTtlInSeconds: 10
          IdentityValidationExpression: hello
        Additional:
        - Type: AWS_IAM
        - Type: API_KEY
        - Type: OPENID_CONNECT
          OpenIDConnect:
            AuthTTL: 10
            ClientId: myId
            IatTTL: 10
            Issuer: prod
```

# AuthProvider
<a name="sam-property-graphqlapi-auth-authprovider"></a>

Configuração de autorização opcional para seus tipos adicionais de autorização de GraphQL API.

## Sintaxe
<a name="sam-property-graphqlapi-auth-authprovider-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-auth-authprovider-syntax-yaml"></a>

```
LambdaAuthorizer: [LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html)
OpenIDConnect: [OpenIDConnectConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html)
Type: String
UserPool: [UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html)
```

## Propriedades
<a name="sam-property-graphqlapi-auth-authprovider-properties"></a>

`LambdaAuthorizer`  <a name="sam-graphqlapi-auth-authprovider-lambdaauthorizer"></a>
Especifique a configuração de autorização opcional para seu autorizador de AWS Lambda função. Você pode configurar essa propriedade opcional quando `Type` for especificado como `AWS_LAMBDA`.  
*Tipo*: [ LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-lambdaauthorizerconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html)` propriedade de um `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` objeto.

`OpenIDConnect`  <a name="sam-graphqlapi-auth-authprovider-openidconnect"></a>
Especifique a configuração de autorização opcional para seu serviço OpenID Connect compatível. Você pode configurar essa propriedade opcional quando `Type` for especificado como `OPENID_CONNECT`.  
*Tipo*: [Open IDConnect Config](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-openidconnectconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ OpenIDConnectConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html)` propriedade de um `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` objeto.

`Type`  <a name="sam-graphqlapi-auth-authprovider-type"></a>
O tipo de autorização padrão entre aplicativos e sua AWS AppSync GraphQL API.  
Para obter uma lista e uma descrição dos valores permitidos, consulte [Autorização e autenticação](https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html) no *AWS AppSync Guia do desenvolvedor*.  
Quando você especifica um autorizador Lambda (`AWS_LAMBDA`), AWS SAM cria uma política AWS Identity and Access Management (IAM) para provisionar permissões entre sua API GraphQL e a função Lambda.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ AuthenticationType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-authenticationtype)` propriedade de um `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` objeto.

`UserPool`  <a name="sam-graphqlapi-auth-authprovider-userpool"></a>
Especifique a configuração de autorização opcional para usar grupos de usuários do Amazon Cognito. Você pode configurar essa propriedade opcional quando `Type` for especificado como `AMAZON_COGNITO_USER_POOLS`.  
*Tipo*: [ UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-userpoolconfig)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html)` propriedade de um `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` objeto.

# DataSource
<a name="sam-property-graphqlapi-datasource"></a>

Configure uma fonte de dados à qual seu resolvedor de GraphQL API possa se conectar. Você pode usar modelos AWS Serverless Application Model (AWS SAM) para configurar conexões com as seguintes fontes de dados:
+ Amazon DynamoDB
+ AWS Lambda

Para saber mais sobre fontes de dados, consulte [Anexar uma fonte de dados](https://docs.aws.amazon.com/appsync/latest/devguide/attaching-a-data-source.html) no *AWS AppSync Guia do desenvolvedor*.

## Sintaxe
<a name="sam-property-graphqlapi-datasource-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-datasource-syntax-yaml"></a>

```
DynamoDb: DynamoDb
Lambda: Lambda
```

## Propriedades
<a name="sam-property-graphqlapi-datasource-properties"></a>

`DynamoDb`  <a name="sam-graphqlapi-datasource-dynamodb"></a>
Configure uma tabela do DynamoDB como fonte de dados para seu resolvedor de GraphQL API.  
*Digite*: [DynamoDb](sam-property-graphqlapi-datasource-dynamodb.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`Lambda`  <a name="sam-graphqlapi-datasource-lambda"></a>
Configure uma função do Lambda como fonte de dados para seu resolvedor de GraphQL API.  
*Type*: [Lambda](sam-property-graphqlapi-datasource-lambda.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

# DynamoDb
<a name="sam-property-graphqlapi-datasource-dynamodb"></a>

Configure uma tabela do Amazon DynamoDB como fonte de dados para seu resolvedor de GraphQL API.

## Sintaxe
<a name="sam-property-graphqlapi-datasource-dynamodb-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-datasource-dynamodb-syntax-yaml"></a>

```
LogicalId:
  DeltaSync: [DeltaSyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html)
  Description: String
  Name: String
  Permissions: List
  Region: String
  ServiceRoleArn: String
  TableArn: String
  TableName: String
  UseCallerCredentials: Boolean
  Versioned: Boolean
```

## Propriedades
<a name="sam-property-graphqlapi-datasource-dynamodb-properties"></a>

`DeltaSync`  <a name="sam-graphqlapi-datasource-dynamodb-deltasync"></a>
Descreve uma configuração de sincronização delta.  
*Digite*: [DeltaSyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DeltaSyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-deltasyncconfig)` propriedade de um `AWS::AppSync::DataSource DynamoDBConfig` objeto.

`Description`  <a name="sam-graphqlapi-datasource-dynamodb-description"></a>
A descrição da sua fonte de dados.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description)` propriedade de um `AWS::AppSync::DataSource` recurso.

`LogicalId`  <a name="sam-graphqlapi-datasource-dynamodb-logicalid"></a>
O nome exclusivo de sua fonte de dados.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name)` propriedade de um `AWS::AppSync::DataSource` recurso.

`Name`  <a name="sam-graphqlapi-datasource-dynamodb-name"></a>
O nome da sua fonte de dados. Especifique essa propriedade para substituir o valor `LogicalId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name)` propriedade de um `AWS::AppSync::DataSource` recurso.

`Permissions`  <a name="sam-graphqlapi-datasource-dynamodb-permissions"></a>
Provisione permissões para sua fonte de dados usando [conectores do AWS SAM ](managing-permissions-connectors.md). Você pode fornecer qualquer um dos seguintes valores em uma lista:  
+ `Read` - Permite que seu resolvedor leia sua fonte de dados.
+ `Write` - Permite que seu resolvedor grave em sua fonte de dados.
AWS SAM usa um `AWS::Serverless::Connector` recurso que é transformado na implantação para provisionar suas permissões. Para saber mais sobre os recursos gerados, consulte [CloudFormation recursos gerados quando você especifica AWS::Serverless::Connector](sam-specification-generated-resources-connector.md).  
É possível especificar `Permissions` ou `ServiceRoleArn`, mas não ambos. Se nenhum for especificado, AWS SAM gerará valores padrão de `Read` `Write` e. Para revogar o acesso à sua fonte de dados, remova o objeto DynamoDB do seu modelo. AWS SAM 
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente. É semelhante à propriedade `Permissions` de um recurso `AWS::Serverless::Connector`.

`Region`  <a name="sam-graphqlapi-datasource-dynamodb-region"></a>
A Região da AWS da sua tabela do DynamoDB. Se você não especificar, AWS SAM usa`[AWS::Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/pseudo-parameter-reference.html#cfn-pseudo-param-region)`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AwsRegion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-awsregion)` propriedade de um `AWS::AppSync::DataSource DynamoDBConfig` objeto.

`ServiceRoleArn`  <a name="sam-graphqlapi-datasource-dynamodb-servicerolearn"></a>
O ARN da função de serviço AWS Identity and Access Management (IAM) da fonte de dados. O sistema assume essa função ao acessar a fonte de dados.  
É possível especificar `Permissions` ou `ServiceRoleArn`, mas não ambos.  
*Tipo:* string  
*Obrigatório*: Não. Se não for especificado, AWS SAM aplica o valor padrão para`Permissions`.  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ServiceRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn)` propriedade de um `AWS::AppSync::DataSource` recurso.

`TableArn`  <a name="sam-graphqlapi-datasource-dynamodb-tablearn"></a>
O ARN da tabela do DynamoDB.  
*Tipo:* string  
*Obrigatório:* condicional. Se você não especificar o `ServiceRoleArn`, o `TableArn` será necessário.  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`TableName`  <a name="sam-graphqlapi-datasource-dynamodb-tablename"></a>
O nome da tabela.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TableName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-tablename)` propriedade de um `AWS::AppSync::DataSource DynamoDBConfig` objeto.

`UseCallerCredentials`  <a name="sam-graphqlapi-datasource-dynamodb-usecallercredentials"></a>
Defina como `true` para usar o IAM com essa fonte de dados.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[UseCallerCredentials](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-usecallercredentials)` propriedade de um `AWS::AppSync::DataSource DynamoDBConfig` objeto.

`Versioned`  <a name="sam-graphqlapi-datasource-dynamodb-versioned"></a>
Defina como `true` para usar a [Detecção de conflitos, resolução de conflitos e sincronização](https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html) com esta fonte de dados.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Versioned](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-versioned)` propriedade de um `AWS::AppSync::DataSource DynamoDBConfig` objeto.

# Lambda
<a name="sam-property-graphqlapi-datasource-lambda"></a>

Configure uma AWS Lambda função como fonte de dados para seu resolvedor de GraphQL API.

## Sintaxe
<a name="sam-property-graphqlapi-datasource-lambda-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-datasource-lambda-syntax-yaml"></a>

```
LogicalId:
  Description: String
  FunctionArn: String
  Name: String
  ServiceRoleArn: String
```

## Propriedades
<a name="sam-property-graphqlapi-datasource-lambda-properties"></a>

`Description`  <a name="sam-graphqlapi-datasource-lambda-description"></a>
A descrição da sua fonte de dados.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description)` propriedade de um `AWS::AppSync::DataSource` recurso.

`FunctionArn`  <a name="sam-graphqlapi-datasource-lambda-functionarn"></a>
O ARN da função do Lambda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[LambdaFunctionArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html#cfn-appsync-datasource-lambdaconfig-lambdafunctionarn)` propriedade de um `AWS::AppSync::DataSource LambdaConfig` objeto.

`LogicalId`  <a name="sam-graphqlapi-datasource-lambda-logicalid"></a>
O nome exclusivo de sua fonte de dados.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name)` propriedade de um `AWS::AppSync::DataSource` recurso.

`Name`  <a name="sam-graphqlapi-datasource-lambda-name"></a>
O nome da sua fonte de dados. Especifique essa propriedade para substituir o valor `LogicalId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name)` propriedade de um `AWS::AppSync::DataSource` recurso.

`ServiceRoleArn`  <a name="sam-graphqlapi-datasource-lambda-servicerolearn"></a>
O ARN da função de serviço AWS Identity and Access Management (IAM) da fonte de dados. O sistema assume essa função ao acessar a fonte de dados.  
Para revogar o acesso à sua fonte de dados, remova o objeto Lambda do seu modelo AWS SAM .
*Tipo:* string  
*Obrigatório*: Não. Se não for especificado, AWS SAM provisionará `Write` as permissões usando[conectores do AWS SAM ](managing-permissions-connectors.md).  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ServiceRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn)` propriedade de um `AWS::AppSync::DataSource` recurso.

# Função
<a name="sam-property-graphqlapi-function"></a>

Configure funções GraphQL APIs para realizar determinadas operações.

## Sintaxe
<a name="sam-property-graphqlapi-function-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-function-syntax-yaml"></a>

```
LogicalId:
  CodeUri: String
  DataSource: String
  Description: String
  Id: String
  InlineCode: String
  MaxBatchSize: Integer
  Name: String
  Runtime: Runtime
  Sync: [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html)
```

## Propriedades
<a name="sam-property-graphqlapi-function-properties"></a>

`CodeUri`  <a name="sam-graphqlapi-function-codeuri"></a>
O URI Amazon Simple Storage Service (Amazon S3) ou o caminho para a pasta local de código de função.  
Se você especificar um caminho para uma pasta local, CloudFormation exigirá que o arquivo seja primeiro carregado no Amazon S3 antes da implantação. Você pode usar o AWS SAMCLI para facilitar esse processo. Para obter mais informações, consulte [Como AWS SAM carrega arquivos locais na implantação](deploy-upload-local-files.md).  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CodeS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-codes3location)` propriedade de um `AWS::AppSync::FunctionConfiguration` recurso.

`DataSource`  <a name="sam-graphqlapi-function-datasource"></a>
O nome da fonte de dados à qual esta função será anexada.  
+ Para referenciar uma fonte de dados dentro do recurso `AWS::Serverless::GraphQLApi`, especifique sua ID lógica.
+ Para referenciar uma fonte de dados fora do recurso `AWS::Serverless::GraphQLApi`, forneça seu atributo `Name` usando a função `Fn::GetAtt` intrínseca. Por exemplo, .`!GetAtt MyLambdaDataSource.Name`
+ Para referenciar uma fonte de dados de uma pilha diferente, use `[Fn::ImportValue](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html)`.
Se uma variação de `[NONE | None | none]` for especificada, AWS SAM gerará um `None` valor para o `AWS::AppSync::DataSource` `[Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-type)` objeto.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DataSourceName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-datasourcename)` propriedade de um `AWS::AppSync::FunctionConfiguration` recurso.

`Description`  <a name="sam-graphqlapi-function-description"></a>
A descrição de sua função.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-description)` propriedade de um `AWS::AppSync::FunctionConfiguration` recurso.

`Id`  <a name="sam-graphqlapi-function-id"></a>
O ID da função de uma função localizada fora do recurso `AWS::Serverless::GraphQLApi`.  
+ Para referenciar uma função dentro do mesmo AWS SAM modelo, use a função `Fn::GetAtt` intrínseca. Por exemplo, `Id: !GetAtt createPostItemFunc.FunctionId`.
+ Para referenciar uma função de uma pilha diferente, use `[Fn::ImportValue](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html)`.
Ao usar`Id`, todas as outras propriedades não são permitidas. AWS SAM passará automaticamente o ID da função de sua função referenciada.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`InlineCode`  <a name="sam-graphqlapi-function-inlinecode"></a>
O código de função que contém as funções de solicitação e resposta.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-code)` propriedade de um `AWS::AppSync::FunctionConfiguration` recurso.

`LogicalId`  <a name="sam-graphqlapi-function-logicalid"></a>
Escolha o nome único para a função.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-name)` propriedade de um `AWS::AppSync::FunctionConfiguration` recurso.

`MaxBatchSize`  <a name="sam-graphqlapi-function-maxbatchsize"></a>
O número máximo de entradas de solicitações do resolvedor que serão enviadas a uma única função do AWS Lambda em uma operação `BatchInvoke`.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a [MaxBatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-maxbatchsize)propriedade de um `AWS::AppSync::FunctionConfiguration` recurso.

`Name`  <a name="sam-graphqlapi-function-name"></a>
Nome da função. Especifique para substituir o valor `LogicalId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-name)` propriedade de um `AWS::AppSync::FunctionConfiguration` recurso.

`Runtime`  <a name="sam-graphqlapi-function-runtime"></a>
Descreve um tempo de execução usado por uma AWS AppSync função ou resolvedor de AWS AppSync pipeline. Especifica o nome e a versão do tempo de execução a ser usado.  
*Tipo*: [Tempo de execução](sam-property-graphqlapi-function-runtime.md)  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente. É semelhante à propriedade `[Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-runtime)` de um recurso `AWS::AppSync::FunctionConfiguration`.

`Sync`  <a name="sam-graphqlapi-function-sync"></a>
Descreve uma configuração de sincronização para uma função.  
Especifica quais estratégias de detecção de conflitos e de resolução devem ser usadas quando a função for invocada.  
*Digite*: [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-syncconfig)` propriedade de um `AWS::AppSync::FunctionConfiguration` recurso.

# Runtime
<a name="sam-property-graphqlapi-function-runtime"></a>

O tempo de execução do seu resolvedor ou função de pipeline. Especifica o nome e a versão a serem usados.

## Sintaxe
<a name="sam-property-graphqlapi-function-runtime-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-function-runtime-syntax-yaml"></a>

```
Name: String
Version: String
```

## Propriedades
<a name="sam-property-graphqlapi-function-runtime-properties"></a>

`Name`  <a name="sam-graphqlapi-function-runtime-name"></a>
O nome do tempo de execução a ser usado. Atualmente, o único valor permitido é `APPSYNC_JS`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-appsyncruntime.html#cfn-appsync-functionconfiguration-appsyncruntime-name)` propriedade de um `AWS::AppSync::FunctionConfiguration AppSyncRuntime` objeto.

`Version`  <a name="sam-graphqlapi-function-runtime-version"></a>
A versão do tempo de execução a ser usada. Atualmente, a única versão permitida é `1.0.0`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RuntimeVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-appsyncruntime.html#cfn-appsync-functionconfiguration-appsyncruntime-runtimeversion)` propriedade de um `AWS::AppSync::FunctionConfiguration AppSyncRuntime` objeto.

# Resolvedor
<a name="sam-property-graphqlapi-resolver"></a>

Configure resolvedores para os campos da sua GraphQL API. AWS Serverless Application Model (AWS SAM) suporta [resolvedores de JavaScript pipeline](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html).

## Sintaxe
<a name="sam-property-graphqlapi-resolver-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-resolver-syntax-yaml"></a>

```
OperationType:
  LogicalId:
    Caching: [CachingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-cachingconfig.html)
    CodeUri: String
    FieldName: String
    InlineCode: String 
    MaxBatchSize: Integer
    Pipeline: List
    Runtime: Runtime
    Sync: [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html)
```

## Propriedades
<a name="sam-property-graphqlapi-resolver-properties"></a>

`Caching`  <a name="sam-graphqlapi-resolver-caching"></a>
A configuração de cache para o resolvedor que tenha o cache ativado.  
*Digite*: [CachingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-cachingconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CachingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-cachingconfig)` propriedade de um `AWS::AppSync::Resolver` recurso.

`CodeUri`  <a name="sam-graphqlapi-resolver-codeuri"></a>
O URI do código da função do resolvedor Amazon Simple Storage Service (Amazon S3) ou o caminho para uma pasta local.  
Se você especificar um caminho para uma pasta local, CloudFormation exigirá que o arquivo seja primeiro carregado no Amazon S3 antes da implantação. Você pode usar o AWS SAMCLI para facilitar esse processo. Para obter mais informações, consulte [Como AWS SAM carrega arquivos locais na implantação](deploy-upload-local-files.md).  
Se nenhum deles `CodeUri` `InlineCode` for fornecido, AWS SAM será gerado `InlineCode` que redirecionará a solicitação para a primeira função do pipeline e receberá a resposta da última função do pipeline.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CodeS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-codes3location)` propriedade de um `AWS::AppSync::Resolver` recurso.

`FieldName`  <a name="sam-graphqlapi-resolver-fieldname"></a>
O nome do seu resolvedor. Especifique essa propriedade para substituir o valor `LogicalId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FieldName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-fieldname)` propriedade de um `AWS::AppSync::Resolver` recurso.

`InlineCode`  <a name="sam-graphqlapi-resolver-inlinecode"></a>
O código do resolvedor que contém as funções de solicitação e resposta.  
Se nenhum deles `CodeUri` `InlineCode` for fornecido, AWS SAM será gerado `InlineCode` que redirecionará a solicitação para a primeira função do pipeline e receberá a resposta da última função do pipeline.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-code)` propriedade de um `AWS::AppSync::Resolver` recurso.

`LogicalId`  <a name="sam-graphqlapi-resolver-logicalid"></a>
O nome exclusivo do seu resolvedor. Em um esquema GraphQL, o nome do resolvedor deve corresponder ao nome do campo para o qual ele é usado. Use o mesmo nome de campo para `LogicalId`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`MaxBatchSize`  <a name="sam-graphqlapi-resolver-maxbatchsize"></a>
O número máximo de entradas de solicitações do resolvedor que serão enviadas a uma única função do AWS Lambda em uma operação `BatchInvoke`.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MaxBatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-maxbatchsize)` propriedade de um `AWS::AppSync::Resolver` recurso.

`OperationType`  <a name="sam-graphqlapi-resolver-operationtype"></a>
O tipo de operação GraphQL associada ao seu resolvedor. Por exemplo, `Query`, `Mutation` ou `Subscription`. Você pode agrupar vários resolvedores por `LogicalId` em um único `OperationType`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TypeName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-typename)` propriedade de um `AWS::AppSync::Resolver` recurso.

`Pipeline`  <a name="sam-graphqlapi-resolver-pipeline"></a>
Funções vinculadas ao resolvedor de pipeline. Especifique as funções por ID lógica em uma lista.  
*Tipo*: lista  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente. É semelhante à propriedade `[PipelineConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-pipelineconfig)` de um recurso `AWS::AppSync::Resolver`.

`Runtime`  <a name="sam-graphqlapi-resolver-runtime"></a>
O tempo de execução do seu resolvedor ou função de pipeline. Especifica o nome e a versão a serem usados.  
*Tipo*: [Tempo de execução](sam-property-graphqlapi-resolver-runtime.md)  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente. É semelhante à propriedade `[Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-runtime)` de um recurso `AWS::AppSync::Resolver`.

`Sync`  <a name="sam-graphqlapi-resolver-sync"></a>
Descreve uma configuração de sincronização para um resolvedor.  
Especifica quais estratégias de detecção de conflitos e de resolução devem ser usadas quando o resolvedor for invocado.  
*Digite*: [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-syncconfig)` propriedade de um `AWS::AppSync::Resolver` recurso.

## Exemplos
<a name="sam-property-graphqlapi-resolver-examples"></a>

### Use o código da função resolvedor AWS SAM gerada e salve os campos como variáveis
<a name="sam-property-graphqlapi-resolver-examples-example1"></a>

Aqui está o esquema GraphQL do nosso exemplo:

```
schema {
  query: Query
  mutation: Mutation
}

type Query {
  getPost(id: ID!): Post
}

type Mutation {
  addPost(author: String!, title: String!, content: String!): Post!
}

type Post {
  id: ID!
  author: String
  title: String
  content: String
}
```

Aqui está um trecho do nosso AWS SAM modelo:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyGraphQLApi:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      ...
      Functions:
        preprocessPostItem:
          ...
        createPostItem:
          ...
      Resolvers:
        Mutation:
          addPost:
            Runtime:
              Name: APPSYNC_JS
              Version: 1.0.0
            Pipeline:
            - preprocessPostItem
            - createPostItem
```

Em nosso AWS SAM modelo, não especificamos `CodeUri` ou`InlineCode`. Na implantação, gera AWS SAM automaticamente o seguinte código embutido para nosso resolvedor:

```
export function request(ctx) {
  return {};
}

export function response(ctx) {
  return ctx.prev.result;
}
```

Esse código de resolução padrão redireciona a solicitação para a primeira função do pipeline e recebe a resposta da última função do pipeline.

Em nossa primeira função de pipeline, podemos usar o campo `args` fornecido para analisar o objeto de solicitação e criar nossas variáveis. Podemos então usar essas variáveis em nossa função. Veja um exemplo da nossa função `preprocessPostItem`:

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  const author = ctx.args.author;
  const title = ctx.args.title;
  const content = ctx.args.content;
  
  // Use variables to process data
  
}

export function response(ctx) {
  return ctx.result;
}
```

# Runtime
<a name="sam-property-graphqlapi-resolver-runtime"></a>

O tempo de execução do seu resolvedor ou função de pipeline. Especifica o nome e a versão a serem usados.

## Sintaxe
<a name="sam-property-graphqlapi-resolver-runtime-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-graphqlapi-resolver-runtime-syntax-yaml"></a>

```
Name: String
Version: String
```

## Propriedades
<a name="sam-property-graphqlapi-resolver-runtime-properties"></a>

`Name`  <a name="sam-graphqlapi-resolver-runtime-name"></a>
O nome do tempo de execução a ser usado. Atualmente, o único valor permitido é `APPSYNC_JS`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-appsyncruntime.html#cfn-appsync-resolver-appsyncruntime-name)` propriedade de um `AWS::AppSync::Resolver AppSyncRuntime` objeto.

`Version`  <a name="sam-graphqlapi-resolver-runtime-version"></a>
A versão do tempo de execução a ser usada. Atualmente, a única versão permitida é `1.0.0`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RuntimeVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-appsyncruntime.html#cfn-appsync-resolver-appsyncruntime-runtimeversion)` propriedade de um `AWS::AppSync::Resolver AppSyncRuntime` objeto.

# AWS::Serverless::HttpApi
<a name="sam-resource-httpapi"></a>

Cria uma API HTTP do Amazon API Gateway, que permite criar RESTful APIs com menor latência e custos mais baixos do que o REST APIs. Para obter mais informações, consulte [Trabalhando com HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html) no *Guia do Desenvolvedor do API Gateway*.

Recomendamos que você use CloudFormation ganchos ou políticas do IAM para verificar se os recursos do API Gateway têm autorizadores vinculados a eles para controlar o acesso a eles.

Para obter mais informações sobre o uso de CloudFormation ganchos, consulte [Registrando ganchos](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/registering-hook-python.html) no guia do *usuário da CloudFormation CLI* e no repositório. [apigw-enforce-authorizer](https://github.com/aws-cloudformation/aws-cloudformation-samples/tree/main/hooks/python-hooks/apigw-enforce-authorizer/) GitHub 

Para obter mais informações sobre o uso de políticas do IAM, consulte [Exigir que as rotas de API tenham autorização](https://docs.aws.amazon.com/apigateway/latest/developerguide/security_iam_id-based-policy-examples.html#security_iam_id-based-policy-examples-require-authorization) no *Guia do desenvolvedor do API Gateway*.

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

## Sintaxe
<a name="sam-resource-httpapi-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-httpapi-syntax.yaml"></a>

```
Type: AWS::Serverless::HttpApi
Properties:
  [AccessLogSettings](#sam-httpapi-accesslogsettings): [AccessLogSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings)
  [Auth](#sam-httpapi-auth): HttpApiAuth
  [CorsConfiguration](#sam-httpapi-corsconfiguration): String | HttpApiCorsConfiguration
  [DefaultRouteSettings](#sam-httpapi-defaultroutesettings): [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)
  [DefinitionBody](#sam-httpapi-definitionbody): JSON
  [DefinitionUri](#sam-httpapi-definitionuri): String | HttpApiDefinition
  [Description](#sam-httpapi-description): String
  [DisableExecuteApiEndpoint](#sam-httpapi-disableexecuteapiendpoint): Boolean
  [Domain](#sam-httpapi-domain): HttpApiDomainConfiguration
  [FailOnWarnings](#sam-httpapi-failonwarnings): Boolean
  Name: String
  PropagateTags: Boolean
  [RouteSettings](#sam-httpapi-routesettings): [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)
  [StageName](#sam-httpapi-stagename): String
  [StageVariables](#sam-httpapi-stagevariables): [Json](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables)
  [Tags](#sam-httpapi-tags): Map
```

## Propriedades
<a name="sam-resource-httpapi-properties"></a>

 `AccessLogSettings`   <a name="sam-httpapi-accesslogsettings"></a>
As configurações para o registro em log de acesso em um estágio.  
*Digite*: [AccessLogSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AccessLogSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings)` propriedade de um `AWS::ApiGatewayV2::Stage` recurso.

 `Auth`   <a name="sam-httpapi-auth"></a>
Configura a autorização para controlar o acesso à sua API HTTP do API Gateway.  
Para obter mais informações, consulte [Controle do acesso ao HTTP APIs com autorizadores JWT](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html) no Guia do *desenvolvedor do API Gateway*.  
*Digite*: [HttpApiAuth](sam-property-httpapi-httpapiauth.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `CorsConfiguration`   <a name="sam-httpapi-corsconfiguration"></a>
Gerencia o compartilhamento de recursos de origem cruzada (CORS) para todo o seu API Gateway HTTP. APIs Especifique o domínio a ser permitido como uma string ou especifique um objeto `HttpApiCorsConfiguration`. Observe que o CORS AWS SAM precisa modificar sua definição de OpenAPI, então o CORS funciona somente se `DefinitionBody` a propriedade for especificada.  
Para obter mais informações, consulte [Configurar o CORS para uma API HTTP](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html) no *Guia do desenvolvedor do API Gateway*.  
Se `CorsConfiguration` for definido em uma definição de OpenAPI e no nível da propriedade, AWS SAM mesclará as duas fontes de configuração com as propriedades que têm precedência. Se essa propriedade for definida como `true`, todas as origens serão permitidas.
*Tipo*: String \$1 [HttpApiCorsConfiguration](sam-property-httpapi-httpapicorsconfiguration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `DefaultRouteSettings`   <a name="sam-httpapi-defaultroutesettings"></a>
As configurações de rota padrão para essa API HTTP. Essas configurações se aplicam a todas as rotas, a menos que sejam substituídas pela propriedade `RouteSettings` para determinadas rotas.  
*Digite*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)` propriedade de um `AWS::ApiGatewayV2::Stage` recurso.

 `DefinitionBody`   <a name="sam-httpapi-definitionbody"></a>
A definição de OpenAPI que descreve sua API HTTP. Se você não especificar um `DefinitionUri` ou um`DefinitionBody`, AWS SAM gera um `DefinitionBody` para você com base na configuração do seu modelo.  
*Type*: JSON  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-body)` propriedade de um `AWS::ApiGatewayV2::Api` recurso. Se determinadas propriedades forem fornecidas, AWS SAM poderá inserir conteúdo ou modificar o `DefinitionBody` antes de ser passado para CloudFormation. As propriedades incluem `Auth` e um `EventSource` do tipo HttpApi para um `AWS::Serverless::Function` recurso correspondente.

 `DefinitionUri`   <a name="sam-httpapi-definitionuri"></a>
O URI, o caminho de arquivo local ou o objeto de localização do Amazon Simple Storage Service (Amazon S3) da definição de OpenAPI que define a API HTTP. O objeto Amazon S3 ao qual essa propriedade faz referência deve ser um arquivo de definição de OpenAPI válido. Se você não especificar a `DefinitionUri` ou se `DefinitionBody` for especificado, AWS SAM gera um `DefinitionBody` para você com base na configuração do seu modelo.  
Se você fornecer um caminho de arquivo local, o modelo deverá passar pelo fluxo de trabalho que inclui o comando `sam deploy` ou `sam package` para que a definição seja transformada adequadamente.  
As funções intrínsecas não são suportadas nos arquivos de OpenApi definição externos aos quais você faz referência. `DefinitionUri` Para importar uma OpenApi definição para o modelo, use a `DefinitionBody` propriedade com a [transformação Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html).  
*Tipo*: String \$1 [HttpApiDefinition](sam-property-httpapi-httpapidefinition.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[BodyS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-bodys3location)` propriedade de um `AWS::ApiGatewayV2::Api` recurso. As propriedades aninhadas do Amazon S3 têm nomes diferentes.

 `Description`   <a name="sam-httpapi-description"></a>
A descrição do recurso de API HTTP.  
Quando você especificar`Description`, AWS SAM modificará a OpenApi definição do recurso da API HTTP definindo o `description` campo. Os seguintes cenários resultarão em um erro:  
+ A `DefinitionBody` propriedade é especificada com o `description` campo definido na definição da Open API — isso resulta em um conflito do `description` campo que AWS SAM não será resolvido.
+ A `DefinitionUri` propriedade é especificada — AWS SAM não modificará uma definição de API aberta que é recuperada do Amazon S3.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `DisableExecuteApiEndpoint`   <a name="sam-httpapi-disableexecuteapiendpoint"></a>
Especifica se os clientes podem invocar sua API HTTP usando o endpoint `execute-api` padrão `https://{api_id}.execute-api.{region}.amazonaws.com`. Por padrão, os clientes podem invocar sua API com o endpoint padrão. Para exigir que os clientes usem somente um nome de domínio personalizado para invocar sua API, desabilite o endpoint padrão.  
Para usar essa propriedade, você deve especificar a propriedade `DefinitionBody` em vez da propriedade `DefinitionUri` ou definir `x-amazon-apigateway-endpoint-configuration` com `disableExecuteApiEndpoint` na definição de OpenAPI.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[ DisableExecuteApiEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-disableexecuteapiendpoint)` propriedade de um `AWS::ApiGatewayV2::Api` recurso. Ele é passado diretamente para a propriedade `disableExecuteApiEndpoint` de uma extensão `[ x-amazon-apigateway-endpoint-configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html)`, que é adicionada à propriedade ` [ Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-body)` de um recurso `AWS::ApiGatewayV2::Api`.

 `Domain`   <a name="sam-httpapi-domain"></a>
Configura um domínio personalizado para essa API HTTP do API Gateway.  
*Digite*: [HttpApiDomainConfiguration](sam-property-httpapi-httpapidomainconfiguration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FailOnWarnings`   <a name="sam-httpapi-failonwarnings"></a>
Especifica se deve reverter a criação da API HTTP (`true`) ou não (`false`) quando um aviso é encontrado. O valor padrão é `false`.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FailOnWarnings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-failonwarnings)` propriedade de um `AWS::ApiGatewayV2::Api` recurso.

`Name`  <a name="sam-httpapi-name"></a>
O nome do recurso API HTTP.  
Quando você especificar`Name`, AWS SAM modificará a definição de openAPI do recurso da API HTTP definindo o `title` campo. Os seguintes cenários resultarão em um erro:  
+ A `DefinitionBody` propriedade é especificada com o `title` campo definido na definição da Open API — isso resulta em um conflito do `title` campo que AWS SAM não será resolvido.
+ A `DefinitionUri` propriedade é especificada — AWS SAM não modificará uma definição de API aberta que é recuperada do Amazon S3.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`PropagateTags`  <a name="sam-httpapi-propagatetags"></a>
Indique se deseja ou não passar as tags da propriedade `Tags` para os recursos [AWS::Serverless::HttpApi](sam-specification-generated-resources-httpapi.md) gerados. Especifique `True` para propagar as tags nos recursos gerados.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `False`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `RouteSettings`   <a name="sam-httpapi-routesettings"></a>
As configurações de rota, por rota, para essa API HTTP. Para obter mais informações, consulte Como [trabalhar com rotas para HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-routes.html) no *Guia do desenvolvedor do API Gateway*.  
*Digite*: [RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RouteSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-routesettings)` propriedade de um `AWS::ApiGatewayV2::Stage` recurso.

 `StageName`   <a name="sam-httpapi-stagename"></a>
O nome do estágio da API. Se nenhum nome for especificado, AWS SAM usa o `$default` estágio do API Gateway.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: \$1default  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StageName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagename)` propriedade de um `AWS::ApiGatewayV2::Stage` recurso.

 `StageVariables`   <a name="sam-httpapi-stagevariables"></a>
Um mapa que define as variáveis da etapa. Os nomes das variáveis podem ter caracteres alfanuméricos e sublinhados. Os valores devem corresponder a [A-Za-z0-9-.\$1\$1:/? \$1&=,] \$1.  
*Type*: [Json](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StageVariables](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-stagevariables)` propriedade de um `AWS::ApiGatewayV2::Stage` recurso.

 `Tags`   <a name="sam-httpapi-tags"></a>
Um mapa (string para string) que especifica as tags a serem adicionadas a esse estágio do API Gateway. As chaves podem ter de 1 a 128 caracteres Unicode e não podem incluir o prefixo `aws:`. Use qualquer um dos seguintes caracteres: o conjunto de letras, dígitos, espaço em branco, `_`, `.`, `/`, `=`, `+` e `-`. Os valores podem ter de 1 a 256 caracteres Unicode.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Observações adicionais*: a `Tags` propriedade AWS SAM precisa modificar sua definição de OpenAPI. Portanto, as tags são adicionadas somente se a `DefinitionBody` propriedade for especificada. Nenhuma tag será adicionada se a propriedade for especificada. `DefinitionUri` AWS SAM adiciona automaticamente uma `httpapi:createdBy:SAM` tag. As tags também são adicionadas ao recurso `AWS::ApiGatewayV2::Stage` e ao recurso `AWS::ApiGatewayV2::DomainName` (se `DomainName` for especificado).

## Valores de retorno
<a name="sam-resource-httpapi-return-values"></a>

### Ref.
<a name="sam-resource-httpapi-return-values-ref"></a>

Quando você transmite o ID lógico desse recurso para a função intrínseca `Ref`, `Ref` retorna o ID da API do recurso `AWS::ApiGatewayV2::Api` subjacente, como `a1bcdef2gh`.

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no *Guia do usuário do AWS CloudFormation *. 

## Exemplos
<a name="sam-resource-httpapi--examples"></a>

### Simples HttpApi
<a name="sam-resource-httpapi--examples--simple-httpapi"></a>

O exemplo a seguir mostra o mínimo necessário para configurar um endpoint de API HTTP apoiado por uma função do Lambda. Este exemplo usa a API HTTP padrão que AWS SAM cria.

#### YAML
<a name="sam-resource-httpapi--examples--simple-httpapi--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Description: AWS SAM template with a simple API definition
Resources:
  ApiFunction:
    Type: AWS::Serverless::Function
    Properties:
      Events:
        ApiEvent:
          Type: HttpApi
      Handler: index.handler
      InlineCode: |
        def handler(event, context):
            return {'body': 'Hello World!', 'statusCode': 200}
      Runtime: python3.7
Transform: AWS::Serverless-2016-10-31
```

### HttpApi com Auth
<a name="sam-resource-httpapi--examples--httpapi-with-auth"></a>

O exemplo a seguir mostra como configurar a autorização em endpoints da API HTTP.

#### YAML
<a name="sam-resource-httpapi--examples--httpapi-with-auth--yaml"></a>

```
Properties:
  FailOnWarnings: true
  Auth:
    DefaultAuthorizer: OAuth2
    Authorizers:
      OAuth2:
        AuthorizationScopes:
          - scope4
        JwtConfiguration:
          issuer: "https://www.example.com/v1/connect/oauth2"
          audience:
            - MyApi
        IdentitySource: "$request.querystring.param"
```

### HttpApi com definição de OpenAPI
<a name="sam-resource-httpapi--examples--httpapi-with-openapi-definition"></a>

O exemplo a seguir mostra como adicionar uma definição de OpenAPI ao modelo.

Observe que AWS SAM preenche todas as integrações Lambda ausentes HttpApi para eventos que fazem referência a essa API HTTP. AWS SAM também adiciona todos os caminhos ausentes aos quais os HttpApi eventos fazem referência.

#### YAML
<a name="sam-resource-httpapi--examples--httpapi-with-openapi-definition--yaml"></a>

```
Properties:
  FailOnWarnings: true
  DefinitionBody:
    info:
      version: '1.0'
      title:
        Ref: AWS::StackName
    paths:
      "/":
        get:
          security:
          - OpenIdAuth:
            - scope1
            - scope2
          responses: {}
    openapi: 3.0.1
    securitySchemes:
      OpenIdAuth:
        type: openIdConnect
        x-amazon-apigateway-authorizer:
          identitySource: "$request.querystring.param"
          type: jwt
          jwtConfiguration:
            audience:
            - MyApi
            issuer: https://www.example.com/v1/connect/oidc
          openIdConnectUrl: https://www.example.com/v1/connect/oidc/.well-known/openid-configuration
```

### HttpApi com definições de configuração
<a name="sam-resource-httpapi--examples--httpapi-with-configuration-settings"></a>

O exemplo a seguir mostra como adicionar configurações da API HTTP e do estágio ao modelo.

#### YAML
<a name="sam-resource-httpapi--examples--httpapi-with-configuration-settings--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Parameters:
  StageName:
    Type: String
    Default: Prod
    
Resources:
  HttpApiFunction:
    Type: AWS::Serverless::Function
    Properties:
      InlineCode: |
          def handler(event, context):
              import json
              return {
                  "statusCode": 200,
                  "body": json.dumps(event),
              }
      Handler: index.handler
      Runtime: python3.7
      Events:
        ExplicitApi: # warning: creates a public endpoint
          Type: HttpApi
          Properties:
            ApiId: !Ref HttpApi
            Method: GET
            Path: /path
            TimeoutInMillis: 15000
            PayloadFormatVersion: "2.0"
            RouteSettings:
              ThrottlingBurstLimit: 600

  HttpApi:
    Type: AWS::Serverless::HttpApi
    Properties:
      StageName: !Ref StageName
      Tags:
        Tag: Value
      AccessLogSettings:
        DestinationArn: !GetAtt AccessLogs.Arn
        Format: $context.requestId
      DefaultRouteSettings:
        ThrottlingBurstLimit: 200
      RouteSettings:
        "GET /path":
          ThrottlingBurstLimit: 500 # overridden in HttpApi Event
      StageVariables:
        StageVar: Value
      FailOnWarnings: true

  AccessLogs:
    Type: AWS::Logs::LogGroup

Outputs:
  HttpApiUrl:
    Description: URL of your API endpoint
    Value:
      Fn::Sub: 'https://${HttpApi}.execute-api.${AWS::Region}.${AWS::URLSuffix}/${StageName}/'
  HttpApiId:
    Description: Api id of HttpApi
    Value:
      Ref: HttpApi
```

# HttpApiAuth
<a name="sam-property-httpapi-httpapiauth"></a>

Configure a autorização para controlar o acesso à sua API HTTP do Amazon API Gateway.

Para obter mais informações sobre como configurar o acesso ao HTTP APIs, consulte [Controle e gerenciamento do acesso a uma API HTTP no API Gateway no](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-access-control.html) *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-httpapi-httpapiauth-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-httpapiauth-syntax.yaml"></a>

```
  [Authorizers](#sam-httpapi-httpapiauth-authorizers): OAuth2Authorizer | LambdaAuthorizer
  [DefaultAuthorizer](#sam-httpapi-httpapiauth-defaultauthorizer): String
  [EnableIamAuthorizer](#sam-httpapi-httpapiauth-enableiamauthorizer): Boolean
```

## Propriedades
<a name="sam-property-httpapi-httpapiauth-properties"></a>

 `Authorizers`   <a name="sam-httpapi-httpapiauth-authorizers"></a>
O autorizador usado para controlar o acesso à sua API do API Gateway.  
*Tipo*: [OAuth2Autorizador \$1 [LambdaAuthorizer](sam-property-httpapi-lambdaauthorizer.md)](sam-property-httpapi-oauth2authorizer.md)  
*Obrigatório*: não  
*Padrão*: nenhum  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Notas adicionais*: AWS SAM adiciona os autorizadores à definição da OpenAPI.

 `DefaultAuthorizer`   <a name="sam-httpapi-httpapiauth-defaultauthorizer"></a>
Especifique o autorizador padrão a ser usado para autorizar chamadas de API para sua API do API Gateway. Você pode especificar o `AWS_IAM` como autorizador padrão se o `EnableIamAuthorizer` estiver definido como `true`. Caso contrário, especifique um autorizador que você definiu no `Authorizers`.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: nenhum  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `EnableIamAuthorizer`   <a name="sam-httpapi-httpapiauth-enableiamauthorizer"></a>
Especifique se deseja usar a autorização do IAM para a rota da API.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-httpapi-httpapiauth--examples"></a>

### OAuth 2.0 Autorizador
<a name="sam-property-httpapi-httpapiauth--examples--oauth-2.0-authorizer"></a>

OAuth Exemplo de autorizador 2.0

#### YAML
<a name="sam-property-httpapi-httpapiauth--examples--oauth-2.0-authorizer--yaml"></a>

```
Auth:
  Authorizers:
    OAuth2Authorizer:
      AuthorizationScopes:
        - scope1
        - scope2
      JwtConfiguration:
        issuer: "https://www.example.com/v1/connect/oauth2"
        audience:
          - MyApi
      IdentitySource: "$request.querystring.param"
  DefaultAuthorizer: OAuth2Authorizer
```

### autorizador do IAM
<a name="sam-property-httpapi-httpapiauth--examples--iam-authorizer"></a>

Exemplo de autorizador do IAM

#### YAML
<a name="sam-property-httpapi-httpapiauth--examples--iam-authorizer--yaml"></a>

```
Auth:
  EnableIamAuthorizer: true
  DefaultAuthorizer: AWS_IAM
```

# LambdaAuthorizer
<a name="sam-property-httpapi-lambdaauthorizer"></a>

Configure um autorizador Lambda para controlar o acesso à sua API HTTP do Amazon API Gateway com uma função. AWS Lambda 

Para obter mais informações e exemplos, consulte Como [trabalhar com AWS Lambda autorizadores para HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-httpapi-lambdaauthorizer-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-lambdaauthorizer-syntax.yaml"></a>

```
  [AuthorizerPayloadFormatVersion](#sam-httpapi-lambdaauthorizer-authorizerpayloadformatversion): String
  EnableFunctionDefaultPermissions: Boolean
  [EnableSimpleResponses](#sam-httpapi-lambdaauthorizer-enablesimpleresponses): Boolean
  [FunctionArn](#sam-httpapi-lambdaauthorizer-functionarn): String
  [FunctionInvokeRole](#sam-httpapi-lambdaauthorizer-functioninvokerole): String
  [Identity](#sam-httpapi-lambdaauthorizer-identity): LambdaAuthorizationIdentity
```

## Propriedades
<a name="sam-property-httpapi-lambdaauthorizer-properties"></a>

 `AuthorizerPayloadFormatVersion`   <a name="sam-httpapi-lambdaauthorizer-authorizerpayloadformatversion"></a>
Especifica o formato da carga útil enviada a um autorizador da API HTTP do Lambda. Necessário para autorizadores da API HTTP do Lambda.  
Isso é passado para a seção `authorizerPayloadFormatVersion` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
*Valores válidos*: `1.0` ou `2.0`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `EnableFunctionDefaultPermissions`   <a name="sam-httpapi-lambdaauthorizer-enablefunctiondefaultpermissions"></a>
Por padrão, o recurso da API HTTP não tem permissão para invocar o autorizador do Lambda. Especifique essa propriedade como `true` para criar automaticamente permissões entre seu recurso de API HTTP e seu autorizador do Lambda.  
*Tipo*: booliano  
*Obrigatório*: não  
*Valor padrão*: `false`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `EnableSimpleResponses`   <a name="sam-httpapi-lambdaauthorizer-enablesimpleresponses"></a>
Especifica se um autorizador do Lambda retorna uma resposta em um formato simples. Por padrão, um autorizador Lambda deve retornar uma política AWS Identity and Access Management (IAM). Se habilitado, o autorizador do Lambda pode retornar um valor booliano em vez de uma política do IAM.  
Isso é passado para a seção `enableSimpleResponses` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionArn`   <a name="sam-httpapi-lambdaauthorizer-functionarn"></a>
O nome de recurso da Amazon (ARN) da função do Lambda que fornece autorização para a API.  
Isso é passado para a seção `authorizerUri` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionInvokeRole`   <a name="sam-httpapi-lambdaauthorizer-functioninvokerole"></a>
O ARN do perfil do IAM que tem as credenciais necessárias para o API Gateway invocar a função do autorizador. Especifique esse parâmetro se a política baseada em recursos de sua função não conceder permissão ao API Gateway `lambda:InvokeFunction`.  
Isso é passado para a seção `authorizerCredentials` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
Para obter mais informações, consulte [Criar um autorizador do Lambda](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html#http-api-lambda-authorizer.example-create) no *Guia do desenvolvedor do API Gateway*.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Identity`   <a name="sam-httpapi-lambdaauthorizer-identity"></a>
Especifica uma `IdentitySource` em uma solicitação recebida para um autorizador.  
Isso é passado para a seção `identitySource` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
*Digite*: [LambdaAuthorizationIdentity](sam-property-httpapi-lambdaauthorizationidentity.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-httpapi-lambdaauthorizer--examples"></a>

### LambdaAuthorizer
<a name="sam-property-httpapi-lambdaauthorizer--examples--lambdaauthorizer"></a>

LambdaAuthorizer exemplo

#### YAML
<a name="sam-property-httpapi-lambdaauthorizer--examples--lambdaauthorizer--yaml"></a>

```
Auth:
  Authorizers:
    MyLambdaAuthorizer:
      AuthorizerPayloadFormatVersion: 2.0
      FunctionArn:
        Fn::GetAtt:
          - MyAuthFunction
          - Arn
      FunctionInvokeRole:
        Fn::GetAtt:
          - LambdaAuthInvokeRole
          - Arn
      Identity:
        Headers:
          - Authorization
```

# LambdaAuthorizationIdentity
<a name="sam-property-httpapi-lambdaauthorizationidentity"></a>

A propriedade Use pode ser usada para especificar um IdentitySource em uma solicitação recebida para um autorizador Lambda. Para obter mais informações sobre fontes de identidade, consulte [Fontes de identidade](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html#http-api-lambda-authorizer.identity-sources) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-httpapi-lambdaauthorizationidentity-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-lambdaauthorizationidentity-syntax.yaml"></a>

```
  [Context](#sam-httpapi-lambdaauthorizationidentity-context): List
  [Headers](#sam-httpapi-lambdaauthorizationidentity-headers): List
  [QueryStrings](#sam-httpapi-lambdaauthorizationidentity-querystrings): List
  [ReauthorizeEvery](#sam-httpapi-lambdaauthorizationidentity-reauthorizeevery): Integer
  [StageVariables](#sam-httpapi-lambdaauthorizationidentity-stagevariables): List
```

## Propriedades
<a name="sam-property-httpapi-lambdaauthorizationidentity-properties"></a>

 `Context`   <a name="sam-httpapi-lambdaauthorizationidentity-context"></a>
Converte as cadeias de caracteres de contexto fornecidas em uma lista de expressões de mapeamento no formato `$context.contextString`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Headers`   <a name="sam-httpapi-lambdaauthorizationidentity-headers"></a>
Converte os cabeçalhos em uma lista de expressões de mapeamento no formato `$request.header.name`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `QueryStrings`   <a name="sam-httpapi-lambdaauthorizationidentity-querystrings"></a>
Converte as cadeias de caracteres de consulta fornecidas em uma lista de expressões de mapeamento no formato `$request.querystring.queryString`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ReauthorizeEvery`   <a name="sam-httpapi-lambdaauthorizationidentity-reauthorizeevery"></a>
O período time-to-live (TTL), em segundos, que especifica por quanto tempo o API Gateway armazena em cache os resultados do autorizador. Se você especificar um valor maior que 0, o API Gateway armazenará em cache as respostas do autorizador. O valor máximo é 3600, ou uma hora.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `StageVariables`   <a name="sam-httpapi-lambdaauthorizationidentity-stagevariables"></a>
Converte as variáveis de estágio fornecidas em uma lista de expressões de mapeamento no formato `$stageVariables.stageVariable`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-httpapi-lambdaauthorizationidentity--examples"></a>

### LambdaRequestIdentity
<a name="sam-property-httpapi-lambdaauthorizationidentity--examples--lambdarequestidentity"></a>

Exemplo de identidade de solicitação Lambda

#### YAML
<a name="sam-property-httpapi-lambdaauthorizationidentity--examples--lambdarequestidentity--yaml"></a>

```
Identity:
  QueryStrings:
    - auth
  Headers:
    - Authorization
  StageVariables:
    - VARIABLE
  Context:
    - authcontext
  ReauthorizeEvery: 100
```

# OAuth2Authorizer
<a name="sam-property-httpapi-oauth2authorizer"></a>

Definição para um autorizador OAuth 2.0, também conhecido como autorizador JSON Web Token (JWT).

Para obter mais informações, consulte [Controle do acesso ao HTTP APIs com autorizadores JWT](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html) no Guia do *desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-httpapi-oauth2authorizer-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-oauth2authorizer-syntax.yaml"></a>

```
  [AuthorizationScopes](#sam-httpapi-oauth2authorizer-authorizationscopes): List
  [IdentitySource](#sam-httpapi-oauth2authorizer-identitysource): String
  [JwtConfiguration](#sam-httpapi-oauth2authorizer-jwtconfiguration): Map
```

## Propriedades
<a name="sam-property-httpapi-oauth2authorizer-properties"></a>

 `AuthorizationScopes`   <a name="sam-httpapi-oauth2authorizer-authorizationscopes"></a>
Lista de escopos de autorização para esse autorizador.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IdentitySource`   <a name="sam-httpapi-oauth2authorizer-identitysource"></a>
Expressão da fonte de identidade para esse autorizador.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `JwtConfiguration`   <a name="sam-httpapi-oauth2authorizer-jwtconfiguration"></a>
Configuração do JWT para esse autorizador.  
Isso é passado para a seção `jwtConfiguration` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
As propriedades `issuer` e `audience` não diferenciam maiúsculas e minúsculas e podem ser usadas em minúsculas, como na OpenAPI, ou em maiúsculas, como em. `Issuer` `Audience` [AWS::ApiGatewayV2::Authorizer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-authorizer-jwtconfiguration.html) 
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-httpapi-oauth2authorizer--examples"></a>

### OAuth Autorizador 2.0
<a name="sam-property-httpapi-oauth2authorizer--examples--oauth-2.0-authorizer"></a>

OAuth Exemplo de autorizador 2.0

#### YAML
<a name="sam-property-httpapi-oauth2authorizer--examples--oauth-2.0-authorizer--yaml"></a>

```
Auth:
  Authorizers:
    OAuth2Authorizer:
      AuthorizationScopes:
        - scope1
      JwtConfiguration:
        issuer: "https://www.example.com/v1/connect/oauth2"
        audience:
          - MyApi
      IdentitySource: "$request.querystring.param"
  DefaultAuthorizer: OAuth2Authorizer
```

# HttpApiCorsConfiguration
<a name="sam-property-httpapi-httpapicorsconfiguration"></a>

Gerencie o compartilhamento de recursos de origem cruzada (CORS) para seu HTTP. APIs Especifique o domínio a ser permitido como uma string ou especifique um dicionário com configuração adicional do Cors. NOTA: O Cors exige que o SAM modifique sua definição de OpenAPI, portanto, ele só funciona com OpenApi inline definido na propriedade. `DefinitionBody`

Para obter mais informações sobre o CORS, consulte [Configurando o CORS para uma API HTTP](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html) no *Guia do desenvolvedor do API Gateway*.

Observação: se HttpApiCorsConfiguration estiver definido tanto na OpenAPI quanto no nível da propriedade, AWS SAM mescla-os com as propriedades que têm precedência.

## Sintaxe
<a name="sam-property-httpapi-httpapicorsconfiguration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-httpapicorsconfiguration-syntax.yaml"></a>

```
  [AllowCredentials](#sam-httpapi-httpapicorsconfiguration-allowcredentials): Boolean
  [AllowHeaders](#sam-httpapi-httpapicorsconfiguration-allowheaders): List
  [AllowMethods](#sam-httpapi-httpapicorsconfiguration-allowmethods): List
  [AllowOrigins](#sam-httpapi-httpapicorsconfiguration-alloworigins): List
  [ExposeHeaders](#sam-httpapi-httpapicorsconfiguration-exposeheaders): List
  [MaxAge](#sam-httpapi-httpapicorsconfiguration-maxage): Integer
```

## Propriedades
<a name="sam-property-httpapi-httpapicorsconfiguration-properties"></a>

 `AllowCredentials`   <a name="sam-httpapi-httpapicorsconfiguration-allowcredentials"></a>
Especifica se as credenciais estão incluídas na solicitação de CORS.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AllowHeaders`   <a name="sam-httpapi-httpapicorsconfiguration-allowheaders"></a>
Representa uma coleção de cabeçalhos permitidos.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AllowMethods`   <a name="sam-httpapi-httpapicorsconfiguration-allowmethods"></a>
Representa uma coleção de métodos HTTP permitidos.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AllowOrigins`   <a name="sam-httpapi-httpapicorsconfiguration-alloworigins"></a>
Representa uma coleção de origens permitidas.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ExposeHeaders`   <a name="sam-httpapi-httpapicorsconfiguration-exposeheaders"></a>
Representa uma coleção de cabeçalhos expostos.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `MaxAge`   <a name="sam-httpapi-httpapicorsconfiguration-maxage"></a>
Especifica o número de segundos que o navegador deve armazenar em cache os resultados da solicitação de simulação.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-httpapi-httpapicorsconfiguration--examples"></a>

### HttpApiCorsConfiguration
<a name="sam-property-httpapi-httpapicorsconfiguration--examples--httpapicorsconfiguration"></a>

Exemplo de configuração do Cors da API HTTP.

#### YAML
<a name="sam-property-httpapi-httpapicorsconfiguration--examples--httpapicorsconfiguration--yaml"></a>

```
CorsConfiguration:
  AllowOrigins:
    - "https://example.com"
  AllowHeaders:
    - x-apigateway-header
  AllowMethods:
    - GET
  MaxAge: 600
  AllowCredentials: true
```

# HttpApiDefinition
<a name="sam-property-httpapi-httpapidefinition"></a>

Um documento da OpenAPI que define a API.

## Sintaxe
<a name="sam-property-httpapi-httpapidefinition-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-httpapidefinition-syntax.yaml"></a>

```
  [Bucket](#sam-httpapi-httpapidefinition-bucket): String
  [Key](#sam-httpapi-httpapidefinition-key): String
  [Version](#sam-httpapi-httpapidefinition-version): String
```

## Propriedades
<a name="sam-property-httpapi-httpapidefinition-properties"></a>

 `Bucket`   <a name="sam-httpapi-httpapidefinition-bucket"></a>
O nome do bucket do Amazon S3 no qual o arquivo do OpenAPI está armazenado.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-bucket)` propriedade do tipo de `AWS::ApiGatewayV2::Api` `BodyS3Location` dados.

 `Key`   <a name="sam-httpapi-httpapidefinition-key"></a>
A chave do Amazon S3 do arquivo OpenAPI.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Key](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-key)` propriedade do tipo de `AWS::ApiGatewayV2::Api` `BodyS3Location` dados.

 `Version`   <a name="sam-httpapi-httpapidefinition-version"></a>
Para objetos com controle de versão, a versão do arquivo OpenAPI.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Version](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-api-bodys3location.html#cfn-apigatewayv2-api-bodys3location-version)` propriedade do tipo de `AWS::ApiGatewayV2::Api` `BodyS3Location` dados.

## Exemplos
<a name="sam-property-httpapi-httpapidefinition--examples"></a>

### Exemplo de definição de Uri
<a name="sam-property-httpapi-httpapidefinition--examples--definition-uri-example"></a>

Exemplo de definição de API

#### YAML
<a name="sam-property-httpapi-httpapidefinition--examples--definition-uri-example--yaml"></a>

```
DefinitionUri:
  Bucket: sam-s3-demo-bucket-name
  Key: mykey-name
  Version: 121212
```

# HttpApiDomainConfiguration
<a name="sam-property-httpapi-httpapidomainconfiguration"></a>

Configura um domínio personalizado para uma API.

## Sintaxe
<a name="sam-property-httpapi-httpapidomainconfiguration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-httpapidomainconfiguration-syntax.yaml"></a>

```
  [BasePath](#sam-httpapi-httpapidomainconfiguration-basepath): List
  [CertificateArn](#sam-httpapi-httpapidomainconfiguration-certificatearn): String
  [DomainName](#sam-httpapi-httpapidomainconfiguration-domainname): String
  [EndpointConfiguration](#sam-httpapi-httpapidomainconfiguration-endpointconfiguration): String
  [MutualTlsAuthentication](#sam-httpapi-httpapidomainconfiguration-mutualtlsauthentication): [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-mutualtlsauthentication)
  [OwnershipVerificationCertificateArn](#sam-httpapi-httpapidomainconfiguration-ownershipverificationcertificatearn): String
  [Route53](#sam-httpapi-httpapidomainconfiguration-route53): Route53Configuration
  [SecurityPolicy](#sam-httpapi-httpapidomainconfiguration-securitypolicy): String
```

## Propriedades
<a name="sam-property-httpapi-httpapidomainconfiguration-properties"></a>

 `BasePath`   <a name="sam-httpapi-httpapidomainconfiguration-basepath"></a>
Uma lista dos caminhos básicos a serem configurados com o nome de domínio do Amazon API Gateway.  
*Tipo*: lista  
*Obrigatório*: não  
*Padrão*: /  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[ApiMappingKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html#cfn-apigatewayv2-apimapping-apimappingkey)` propriedade de um `AWS::ApiGatewayV2::ApiMapping` recurso. AWS SAM cria vários `AWS::ApiGatewayV2::ApiMapping` recursos, um por valor especificado nessa propriedade.

 `CertificateArn`   <a name="sam-httpapi-httpapidomainconfiguration-certificatearn"></a>
O Amazon Resource Name (ARN) de um certificado AWS gerenciado para o endpoint desse nome de domínio. AWS Certificate Manager é a única fonte compatível.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-certificatearn)` propriedade de um `AWS::ApiGateway2::DomainName DomainNameConfiguration` recurso.

 `DomainName`   <a name="sam-httpapi-httpapidomainconfiguration-domainname"></a>
O nome de domínio personalizado para a sua API Gateway API. Letras maiúsculas não são compatíveis.  
AWS SAM gera um `AWS::ApiGatewayV2::DomainName` recurso quando essa propriedade é definida. Para obter informações sobre esse cenário, consulte [DomainName propriedade é especificada](sam-specification-generated-resources-httpapi.md#sam-specification-generated-resources-httpapi-domain-name). Para obter informações sobre CloudFormation os recursos gerados, consulte[CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-domainname)` propriedade de um `AWS::ApiGateway2::DomainName` recurso.

 `EndpointConfiguration`   <a name="sam-httpapi-httpapidomainconfiguration-endpointconfiguration"></a>
Define o tipo de endpoint do API Gateway a ser mapeado para o domínio personalizado. O valor dessa propriedade determina como a `CertificateArn` propriedade é mapeada CloudFormation.  
O único valor válido para HTTP APIs é`REGIONAL`.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `REGIONAL`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `MutualTlsAuthentication`   <a name="sam-httpapi-httpapidomainconfiguration-mutualtlsauthentication"></a>
A Transport Layer Security (TLS) mútua para um nome de domínio personalizado.  
*Digite*: [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-mutualtlsauthentication)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html#cfn-apigatewayv2-domainname-mutualtlsauthentication)` propriedade de um `AWS::ApiGatewayV2::DomainName` recurso.

 `OwnershipVerificationCertificateArn`   <a name="sam-httpapi-httpapidomainconfiguration-ownershipverificationcertificatearn"></a>
O ARN do certificado público emitido pelo ACM para validar a propriedade do domínio personalizado. Necessário somente para configurar o TLS mútuo e para especificar um ARN de CA privado ou importado do ACM para o `CertificateArn`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[OwnershipVerificationCertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-ownershipverificationcertificatearn)` propriedade do tipo de `AWS::ApiGatewayV2::DomainName` `DomainNameConfiguration` dados.

 `Route53`   <a name="sam-httpapi-httpapidomainconfiguration-route53"></a>
Define uma configuração do Amazon Route 53.  
*Tipo:*: [Route53Configuration](sam-property-httpapi-route53configuration.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SecurityPolicy`   <a name="sam-httpapi-httpapidomainconfiguration-securitypolicy"></a>
A versão da política de segurança da TLS para esse nome de domínio.  
O único valor válido para HTTP APIs é`TLS_1_2`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SecurityPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-domainname-domainnameconfiguration.html#cfn-apigatewayv2-domainname-domainnameconfiguration-securitypolicy)` propriedade do tipo de `AWS::ApiGatewayV2::DomainName` `DomainNameConfiguration` dados.

## Exemplos
<a name="sam-property-httpapi-httpapidomainconfiguration--examples"></a>

### DomainName
<a name="sam-property-httpapi-httpapidomainconfiguration--examples--domainname"></a>

DomainName exemplo

#### YAML
<a name="sam-property-httpapi-httpapidomainconfiguration--examples--domainname--yaml"></a>

```
Domain:
  DomainName: www.example.com
  CertificateArn: arn-example
  EndpointConfiguration: REGIONAL
  Route53:
    HostedZoneId: Z1PA6795UKMFR9
  BasePath:
    - foo
    - bar
```

# Route53Configuration
<a name="sam-property-httpapi-route53configuration"></a>

Configura os conjuntos de registros Route53 para uma API.

## Sintaxe
<a name="sam-property-httpapi-route53configuration-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-route53configuration-syntax.yaml"></a>

```
  [DistributionDomainName](#sam-httpapi-route53configuration-distributiondomainname): String
  [EvaluateTargetHealth](#sam-httpapi-route53configuration-evaluatetargethealth): Boolean
  [HostedZoneId](#sam-httpapi-route53configuration-hostedzoneid): String
  [HostedZoneName](#sam-httpapi-route53configuration-hostedzonename): String
  [IpV6](#sam-httpapi-route53configuration-ipv6): Boolean
  Region: String
  SetIdentifier: String
```

## Propriedades
<a name="sam-property-httpapi-route53configuration-properties"></a>

 `DistributionDomainName`   <a name="sam-httpapi-route53configuration-distributiondomainname"></a>
Configura uma distribuição personalizada do nome de domínio personalizado da API.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: use a distribuição do API Gateway.  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DNSName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget-1.html#cfn-route53-aliastarget-dnshostname)` propriedade de um `AWS::Route53::RecordSetGroup AliasTarget` recurso.  
*Notas adicionais*: O nome de domínio de uma [CloudFrontdistribuição](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html).

 `EvaluateTargetHealth`   <a name="sam-httpapi-route53configuration-evaluatetargethealth"></a>
Quando EvaluateTargetHealth verdadeiro, um registro de alias herda a integridade do AWS recurso referenciado, como um balanceador de carga do Elastic Load Balancing ou outro registro na zona hospedada.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EvaluateTargetHealth](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth)` propriedade de um `AWS::Route53::RecordSetGroup AliasTarget` recurso.  
*Observações adicionais*: você não pode EvaluateTargetHealth definir como verdadeiro quando o destino do alias é uma CloudFront distribuição.

 `HostedZoneId`   <a name="sam-httpapi-route53configuration-hostedzoneid"></a>
O ID da zona hospedada na qual você deseja criar registros.  
Especifique `HostedZoneName` ou `HostedZoneId`, mas não ambos. Se houver várias zonas hospedadas com o mesmo nome de domínio, especifique a zona hospedada usando `HostedZoneId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[HostedZoneId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzoneid)` propriedade de um `AWS::Route53::RecordSetGroup RecordSet` recurso.

 `HostedZoneName`   <a name="sam-httpapi-route53configuration-hostedzonename"></a>
O nome da zona hospedada na qual você deseja criar registros. Você deve incluir um ponto final (por exemplo, `www.example.com.`) como parte do `HostedZoneName`.  
Especifique `HostedZoneName` ou `HostedZoneId`, mas não ambos. Se houver várias zonas hospedadas com o mesmo nome de domínio, especifique a zona hospedada usando `HostedZoneId`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[HostedZoneName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzonename)` propriedade de um `AWS::Route53::RecordSetGroup RecordSet` recurso.

 `IpV6`   <a name="sam-httpapi-route53configuration-ipv6"></a>
Quando essa propriedade é definida, AWS SAM cria um `AWS::Route53::RecordSet` recurso e define [Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type) como `AAAA` para o fornecido HostedZone.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`Region`  <a name="sam-httpapi-route53configuration-region"></a>
*Somente conjuntos de registros de recursos baseados em latência: a* EC2 região amazônica onde você criou o recurso ao qual esse conjunto de registros de recursos se refere. O recurso normalmente é um AWS recurso, como uma EC2 instância ou um balanceador de carga ELB, e é referido por um endereço IP ou nome de domínio DNS, dependendo do tipo de registro.  
Quando o Amazon Route 53 recebe uma consulta de DNS para um nome e tipo de domínio para o qual você criou conjuntos de registros de recursos de latência, o Route 53 seleciona o conjunto de registros de recursos de latência que tem a menor latência entre o usuário final e a região da Amazon associada. EC2 O Route 53 retorna o valor associado ao conjunto de registros de recursos selecionado.  
Observe o seguinte:  
+ Só é possível especificar um `ResourceRecord` por conjunto de registros de recursos de latência.
+ Você só pode criar um conjunto de registros de recursos de latência para cada EC2 região da Amazon.
+ Você não precisa criar conjuntos de registros de recursos de latência para todas as EC2 regiões da Amazon. O Route 53 selecionará a região com a melhor latência entre as regiões para as quais você cria conjuntos de registros de recursos de latência.
+ Não é possível criar conjuntos de registros de recursos que não sejam de latência e tenham os mesmos valores para os elementos `Name` e `Type` como conjuntos registros de recursos de latência.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-region)` propriedade de um tipo de `AWS::Route53::RecordSetGroup` `RecordSet` dados.

`SetIdentifier`  <a name="sam-httpapi-route53configuration-setidentifier"></a>
*Conjuntos de registros de recursos que têm uma política de roteamento diferente da simples:* um identificador que diferencia entre vários conjuntos de registros de recursos que têm a mesma combinação de nome e tipo, como vários conjuntos de registros de recursos ponderados chamados acme.example.com que tenham um tipo de A. Em um grupo de conjuntos de registros de recursos que têm o mesmo nome e tipo, o valor de `SetIdentifier` deve ser exclusivo para cada conjunto de registros de recursos.  
Para obter informações sobre políticas de roteamento, consulte [Escolher uma política de roteamento](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) no *Guia do desenvolvedor do Amazon Route 53*.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ SetIdentifier](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-setidentifier)` propriedade de um tipo de `AWS::Route53::RecordSetGroup` `RecordSet` dados.

## Exemplos
<a name="sam-property-httpapi-route53configuration--examples"></a>

### Exemplo de configuração do Route 53
<a name="sam-property-httpapi-route53configuration--examples--route-53-configuration-example"></a>

Este exemplo mostra como configurar o Route 53.

#### YAML
<a name="sam-property-httpapi-route53configuration--examples--route-53-configuration-example--yaml"></a>

```
Domain:
  DomainName: www.example.com
  CertificateArn: arn-example
  EndpointConfiguration: EDGE
  Route53:
    HostedZoneId: Z1PA6795UKMFR9
    EvaluateTargetHealth: true
    DistributionDomainName: xyz
```

# AWS::Serverless::LayerVersion
<a name="sam-resource-layerversion"></a>

Cria um Lambda LayerVersion que contém a biblioteca ou o código de tempo de execução necessário para uma função Lambda.

O [AWS::Serverless::LayerVersion](#sam-resource-layerversion) recurso também suporta o atributo `Metadata` resource, para que você possa AWS SAM instruir a criar camadas incluídas em seu aplicativo. Para obter mais informações sobre a criação de camadas, consulte [Construindo camadas Lambda em AWS SAM](building-layers.md).

**Nota importante**: Desde o lançamento do atributo de [UpdateReplacePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html)recurso em CloudFormation, [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html)(recomendado) oferece os mesmos benefícios que[AWS::Serverless::LayerVersion](#sam-resource-layerversion).

Quando um Serverless LayerVersion é transformado, o SAM também transforma o ID lógico do recurso para que o antigo não seja excluído automaticamente CloudFormation quando o recurso LayerVersions for atualizado.

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

## Sintaxe
<a name="sam-resource-layerversion-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-layerversion-syntax.yaml"></a>

```
Type: AWS::Serverless::LayerVersion
Properties:
  [CompatibleArchitectures](#sam-layerversion-compatiblearchitectures): List
  [CompatibleRuntimes](#sam-layerversion-compatibleruntimes): List
  [ContentUri](#sam-layerversion-contenturi): String | LayerContent
  [Description](#sam-layerversion-description): String
  [LayerName](#sam-layerversion-layername): String
  [LicenseInfo](#sam-layerversion-licenseinfo): String
  [PublishLambdaVersion](#sam-layerversion-PublishLambdaVersion): Boolean
  [RetentionPolicy](#sam-layerversion-retentionpolicy): String
```

## Propriedades
<a name="sam-resource-layerversion-properties"></a>

 `CompatibleArchitectures`   <a name="sam-layerversion-compatiblearchitectures"></a>
Especifica as arquiteturas de conjunto de instruções suportadas para a versão da camada.  
Para obter mais informações sobre esta propriedade, consulte [Arquiteturas de conjuntos de instruções do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html) no *Guia do desenvolvedor do AWS Lambda *.  
*Valores válidos*: `x86_64`, `arm64`  
*Tipo:* lista  
*Obrigatório*: não  
*Padrão*: `x86_64`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CompatibleArchitectures](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-compatiblearchitectures)` propriedade de um `AWS::Lambda::LayerVersion` recurso.

 `CompatibleRuntimes`   <a name="sam-layerversion-compatibleruntimes"></a>
Lista de tempos de execução compatíveis com isso LayerVersion.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[CompatibleRuntimes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-compatibleruntimes)` propriedade de um `AWS::Lambda::LayerVersion` recurso.

 `ContentUri`   <a name="sam-layerversion-contenturi"></a>
Uri do Amazon S3, caminho para a pasta local ou LayerContent objeto do código da camada.  
[Se um Uri ou LayerContent objeto do Amazon S3 for fornecido, o objeto do Amazon S3 referenciado deverá ser um arquivo ZIP válido que contenha o conteúdo de uma camada Lambda.](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)  
Se for fornecido um caminho para uma pasta local, para que o conteúdo seja transformado corretamente, o modelo deverá passar pelo fluxo de trabalho que inclui [sam build](sam-cli-command-reference-sam-build.md) seguido por [sam deploy](sam-cli-command-reference-sam-deploy.md) ou [sam package](sam-cli-command-reference-sam-package.md). Por padrão, os caminhos relativos são resolvidos com relação à localização do AWS SAM modelo.  
*Tipo*: String \$1 [LayerContent](sam-property-layerversion-layercontent.md)  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Content](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-content)` propriedade de um `AWS::Lambda::LayerVersion` recurso. As propriedades aninhadas do Amazon S3 têm nomes diferentes.

 `Description`   <a name="sam-layerversion-description"></a>
Descrição dessa camada.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-description)` propriedade de um `AWS::Lambda::LayerVersion` recurso.

 `LayerName`   <a name="sam-layerversion-layername"></a>
O nome ou o nome de recurso da Amazon (ARN) da camada.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: ID lógica do recurso  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[LayerName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-layername)` propriedade de um `AWS::Lambda::LayerVersion` recurso. Caso você não especifique um nome, o ID lógico do recurso será usado como nome.

 `LicenseInfo`   <a name="sam-layerversion-licenseinfo"></a>
Informações sobre a licença para isso LayerVersion.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[LicenseInfo](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-licenseinfo)` propriedade de um `AWS::Lambda::LayerVersion` recurso.

 `PublishLambdaVersion`   <a name="sam-layerversion-PublishLambdaVersion"></a>
Uma propriedade opcional que cria uma nova versão do Lambda sempre que há uma alteração no recurso referenciado `LayerVersion`. Quando habilitado com `AutoPublishAlias` e `AutoPublishAliasAllProperties` na função do Lambda conectada, haverá uma nova versão do Lambda criada para cada alteração feita no recurso `LayerVersion`.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `RetentionPolicy`   <a name="sam-layerversion-retentionpolicy"></a>
Essa propriedade especifica se versões antigas da `LayerVersion` são retidas ou excluídas quando você exclui um recurso. Se você precisar reter versões antigas do `LayerVersion` quando atualizar ou substituir um recurso, deverá ter o atributo `UpdateReplacePolicy` habilitado. Para obter informações sobre como fazer isso, consulte [atributo `UpdateReplacePolicy`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html) no *Guia do usuário do AWS CloudFormation *.  
*Valores válidos*: `Retain` ou `Delete`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Observações adicionais*: Quando você especifica`Retain`, AWS SAM adiciona um [Atributos de recursos suportados por AWS SAM](sam-specification-resource-attributes.md) de `DeletionPolicy: Retain` ao `AWS::Lambda::LayerVersion` recurso transformado.

## Valores de retorno
<a name="sam-resource-layerversion-return-values"></a>

### Ref.
<a name="sam-resource-layerversion-return-values-ref"></a>

Quando a ID lógica desse recurso é fornecida à função `Ref` intrínseca, ela retorna o ARN do recurso do Lambda subjacente. LayerVersion

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no *Guia do usuário do AWS CloudFormation *. 

## Exemplos
<a name="sam-resource-layerversion--examples"></a>

### LayerVersionExample
<a name="sam-resource-layerversion--examples--layerversionexample"></a>

Exemplo de um LayerVersion

#### YAML
<a name="sam-resource-layerversion--examples--layerversionexample--yaml"></a>

```
Properties:
  LayerName: MyLayer
  Description: Layer description
  ContentUri: 's3://sam-s3-demo-bucket/my-layer.zip'
  CompatibleRuntimes:
    - nodejs10.x
    - nodejs12.x
  LicenseInfo: 'Available under the MIT-0 license.'
  RetentionPolicy: Retain
```

# LayerContent
<a name="sam-property-layerversion-layercontent"></a>

Um arquivo ZIP que contém o conteúdo de uma [camada do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).

## Sintaxe
<a name="sam-property-layerversion-layercontent-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-layerversion-layercontent-syntax.yaml"></a>

```
  [Bucket](#sam-layerversion-layercontent-bucket): String
  [Key](#sam-layerversion-layercontent-key): String
  [Version](#sam-layerversion-layercontent-version): String
```

## Propriedades
<a name="sam-property-layerversion-layercontent-properties"></a>

 `Bucket`   <a name="sam-layerversion-layercontent-bucket"></a>
O bucket do Amazon S3 do arquivamento de camada.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[S3Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3bucket)` propriedade do tipo de `AWS::Lambda::LayerVersion` `Content` dados.

 `Key`   <a name="sam-layerversion-layercontent-key"></a>
A chave do Amazon S3 do arquivamento de camada.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[S3Key](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3key)` propriedade do tipo de `AWS::Lambda::LayerVersion` `Content` dados.

 `Version`   <a name="sam-layerversion-layercontent-version"></a>
Para objetos com controle de versão, a versão do objeto de arquivamento de camada a ser usada.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[S3ObjectVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3objectversion)` propriedade do tipo de `AWS::Lambda::LayerVersion` `Content` dados.

## Exemplos
<a name="sam-property-layerversion-layercontent--examples"></a>

### LayerContent
<a name="sam-property-layerversion-layercontent--examples--layercontent"></a>

Exemplo de conteúdo de camada

#### YAML
<a name="sam-property-layerversion-layercontent--examples--layercontent--yaml"></a>

```
LayerContent:
  Bucket: amzn-s3-demo-bucket-name
  Key: mykey-name
  Version: 121212
```

# AWS::Serverless::SimpleTable
<a name="sam-resource-simpletable"></a>

Cria uma tabela do DynamoDB com uma chave primária de atributo único. É útil quando os dados só precisam ser acessados por meio de uma chave primária.

Para atributos mais avançados, use um recurso [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html) no CloudFormation. Esses recursos podem ser usados no AWS SAM. Eles são abrangentes e fornecem mais personalização, incluindo [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-keyschema.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-keyschema.html) e personalização de [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-resourcepolicy.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-resourcepolicy.html).

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

## Sintaxe
<a name="sam-resource-simpletable-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-simpletable-syntax.yaml"></a>

```
Type: AWS::Serverless::SimpleTable
Properties:
  PointInTimeRecoverySpecification: [PointInTimeRecoverySpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html)
  [PrimaryKey](#sam-simpletable-primarykey): PrimaryKeyObject
  [ProvisionedThroughput](#sam-simpletable-provisionedthroughput): ProvisionedThroughputObject
  [SSESpecification](#sam-simpletable-ssespecification): [SSESpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html)
  [TableName](#sam-simpletable-tablename): String
  [Tags](#sam-simpletable-tags): Map
```

## Propriedades
<a name="sam-resource-simpletable-properties"></a>

 `PointInTimeRecoverySpecification`   <a name="sam-simpletable-pointintimerecoveryspecification"></a>
As configurações usadas para habilitar a recuperação point-in-time.  
*Tipo*: [PointInTimeRecoverySpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[PointInTimeRecoverySpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html)` propriedade de um `AWS::DynamoDB::Table` recurso.

 `PrimaryKey`   <a name="sam-simpletable-primarykey"></a>
Nome e tipo do atributo a ser usado como chave primária da tabela. Se não for fornecida, a chave primária será a `String` com um valor de `id`.  
O valor dessa propriedade não pode ser modificado após a criação desse recurso.
*Digite*: [PrimaryKeyObject](sam-property-simpletable-primarykeyobject.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ProvisionedThroughput`   <a name="sam-simpletable-provisionedthroughput"></a>
Leia e grave informações de provisionamento de Throughput.  
Se não `ProvisionedThroughput` for especificado `BillingMode` será especificado como `PAY_PER_REQUEST`.  
*Digite*: [ProvisionedThroughputObject](sam-property-simpletable-provisionedthroughputobject.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ProvisionedThroughput](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-provisionedthroughput.html)` propriedade de um `AWS::DynamoDB::Table` recurso.

 `SSESpecification`   <a name="sam-simpletable-ssespecification"></a>
Especifica as configurações para habilitar a criptografia no lado do servidor.  
*Digite*: [SSESpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[SSESpecification](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html)` propriedade de um `AWS::DynamoDB::Table` recurso.

 `TableName`   <a name="sam-simpletable-tablename"></a>
Nome da tabela do DynamoDB.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TableName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tablename)` propriedade de um `AWS::DynamoDB::Table` recurso.

 `Tags`   <a name="sam-simpletable-tags"></a>
Um mapa (string a string) que especifica as tags a serem adicionadas a ele. SimpleTable Para obter detalhes sobre chaves e valores válidos para tags, consulte [Etiqueta de recurso](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) no *AWS CloudFormation Guia do usuário*.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tags)` propriedade de um `AWS::DynamoDB::Table` recurso. A propriedade Tags no SAM consiste em pares de chave-valor; CloudFormation nela consiste em uma lista de objetos Tag.

## Valores de retorno
<a name="sam-resource-simpletable-return-values"></a>

### Ref.
<a name="sam-resource-simpletable-return-values-ref"></a>

Quando o ID lógico desse recurso é fornecido para a função intrínseca Ref, retorna o nome do recurso da tabela subjacente do DynamoDB.

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no *Guia do usuário do AWS CloudFormation *. 

## Exemplos
<a name="sam-resource-simpletable--examples"></a>

### SimpleTableExample
<a name="sam-resource-simpletable--examples--simpletableexample"></a>

Exemplo de um SimpleTable

#### YAML
<a name="sam-resource-simpletable--examples--simpletableexample--yaml"></a>

```
Properties:
  TableName: my-table
  PrimaryKey:
    Name: MyPrimaryKey
    Type: String
  ProvisionedThroughput:
    ReadCapacityUnits: 5
    WriteCapacityUnits: 5
  Tags:
    Department: Engineering
    AppType: Serverless
```

# PrimaryKeyObject
<a name="sam-property-simpletable-primarykeyobject"></a>

O objeto que descreve as propriedades de uma chave primária.

## Sintaxe
<a name="sam-property-simpletable-primarykeyobject-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-simpletable-primarykeyobject-syntax.yaml"></a>

```
  [Name](#sam-simpletable-primarykeyobject-name): String
  [Type](#sam-simpletable-primarykeyobject-type): String
```

## Propriedades
<a name="sam-property-simpletable-primarykeyobject-properties"></a>

 `Name`   <a name="sam-simpletable-primarykeyobject-name"></a>
O nome do atributo da chave primária.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AttributeName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename)` propriedade do tipo de `AWS::DynamoDB::Table` `AttributeDefinition` dados.  
*Notas adicionais*: Essa propriedade também é passada para a [AttributeName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-attributename)propriedade de um tipo de `AWS::DynamoDB::Table KeySchema` dados.

 `Type`   <a name="sam-simpletable-primarykeyobject-type"></a>
O tipo de dados da chave primária.  
*Valores válidos*: `String`, `Number`, `Binary`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[AttributeType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename-attributetype)` propriedade do tipo de `AWS::DynamoDB::Table` `AttributeDefinition` dados.

## Exemplos
<a name="sam-property-simpletable-primarykeyobject--examples"></a>

### PrimaryKey
<a name="sam-property-simpletable-primarykeyobject--examples--primarykey"></a>

Exemplo de chave primária.

#### YAML
<a name="sam-property-simpletable-primarykeyobject--examples--primarykey--yaml"></a>

```
Properties:
  PrimaryKey:
    Name: MyPrimaryKey
    Type: String
```

# ProvisionedThroughputObject
<a name="sam-property-simpletable-provisionedthroughputobject"></a>

O objeto que descreve as propriedades de um throughput provisionado.

## Sintaxe
<a name="sam-property-simpletable-provisionedthroughputobject-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="w2aac13c22c41c19b5b5"></a>

```
  [ReadCapacityUnits](#sam-simpletable-provisionedthroughputobject-readcapacityunits): Integer
  [WriteCapacityUnits](#sam-simpletable-provisionedthroughputobject-writecapacityunits): Integer
```

## Propriedades
<a name="sam-property-simpletable-provisionedthroughputobject-properties"></a>

 `ReadCapacityUnits`   <a name="sam-simpletable-provisionedthroughputobject-readcapacityunits"></a>
O número máximo de leituras fortemente consistentes consumidas por segundo antes de o DynamoDB retornar um `ThrottlingException`.  
*Tipo*: inteiro  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ReadCapacityUnits](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-provisionedthroughput.html#aws-properties-dynamodb-table-provisionedthroughput-properties)` propriedade do tipo de `AWS::DynamoDB::Table` `ProvisionedThroughput` dados.

 `WriteCapacityUnits`   <a name="sam-simpletable-provisionedthroughputobject-writecapacityunits"></a>
O número máximo de gravações consumidas por segundo antes de o DynamoDB retornar um `ThrottlingException`.  
*Tipo*: inteiro  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[WriteCapacityUnits](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-provisionedthroughput.html#aws-properties-dynamodb-table-provisionedthroughput-properties)` propriedade do tipo de `AWS::DynamoDB::Table` `ProvisionedThroughput` dados.

## Exemplos
<a name="sam-property-simpletable-provisionedthroughputobject--examples"></a>

### ProvisionedThroughput
<a name="sam-property-simpletable-provisionedthroughputobject--examples--provisionedthroughput"></a>

Exemplo de throughput provisionado.

#### YAML
<a name="sam-property-simpletable-provisionedthroughputobject--examples--provisionedthroughput--yaml"></a>

```
Properties:
   ProvisionedThroughput:
     ReadCapacityUnits: 5
     WriteCapacityUnits: 5
```

# AWS::Serverless::StateMachine
<a name="sam-resource-statemachine"></a>

Cria uma máquina de AWS Step Functions estado, que você pode usar para orquestrar AWS Lambda funções e outros AWS recursos para formar fluxos de trabalho complexos e robustos.

Para obter mais informações sobre o Steps Functions, consulte o [Guia do desenvolvedor do AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html).

**nota**  
Quando você implanta AWS CloudFormation, AWS SAM transforma seus AWS SAM recursos em CloudFormation recursos. Para obter mais informações, consulte [CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

## Sintaxe
<a name="sam-resource-statemachine-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-resource-statemachine-syntax.yaml"></a>

```
Type: AWS::Serverless::StateMachine
Properties:
  AutoPublishAlias: String
  UseAliasAsEventTarget: Boolean
  [Definition](#sam-statemachine-definition): Map
  [DefinitionSubstitutions](#sam-statemachine-definitionsubstitutions): Map
  [DefinitionUri](#sam-statemachine-definitionuri): String | [S3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitions3location)
  DeploymentPreference: [DeploymentPreference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachinealias-deploymentpreference.html)
  [Events](#sam-statemachine-events): EventSource
  [Logging](#sam-statemachine-logging): [LoggingConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-loggingconfiguration)
  [Name](#sam-statemachine-name): String
  [PermissionsBoundary](#sam-statemachine-permissionsboundary): String
  [Policies](#sam-statemachine-policies): String | List | Map
  PropagateTags: Boolean
  [RolePath](#sam-statemachine-rolepath): String
  [Role](#sam-statemachine-role): String
  [Tags](#sam-statemachine-tags): Map
  [Tracing](#sam-statemachine-tracing): [TracingConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tracingconfiguration)
  [Type](#sam-statemachine-type): String
```

## Propriedades
<a name="sam-resource-statemachine-properties"></a>

 `AutoPublishAlias`   <a name="sam-statemachine-autopublishalias"></a>
O nome do alias da máquina de estado. *Para saber mais sobre o uso dos aliases de máquina de estado do Step Functions, consulte [Gerenciar implantações contínuas com versões e aliases](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-cd-aliasing-versioning.html) no AWS Step Functions Guia do desenvolvedor.*  
Use `DeploymentPreference` para configurar as preferências de implantação do seu alias. Se você não especificar`DeploymentPreference`, AWS SAM configurará o tráfego para mudar para a versão mais recente da máquina de estado de uma só vez.  
AWS SAM define a versão `DeletionPolicy` e `UpdateReplacePolicy` como `Retain` por padrão. As versões anteriores não serão excluídas automaticamente.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a ` [ Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachinealias.html#cfn-stepfunctions-statemachinealias-name)` propriedade de um `AWS::StepFunctions::StateMachineAlias` recurso.

 `UseAliasAsEventTarget`   <a name="sam-statemachine-usealiasaseventtarget"></a>
Indique se o alias, criado usando a propriedade `AutoPublishAlias`, deve ou não ser passado para o destino da origem de eventos definido com [Eventos](#sam-statemachine-events).  
Especifique `True` para usar o alias como destino do evento.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `False`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Definition`   <a name="sam-statemachine-definition"></a>
A definição da máquina de estado é um objeto, em que o formato do objeto corresponde ao formato do seu arquivo de AWS SAM modelo, por exemplo, JSON ou YAML. As definições de máquina de estado aderem ao [Amazon States Language](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html).  
Para obter um exemplo de uma definição de máquina de estado embutida, consulte [Exemplos](#sam-resource-statemachine--examples).  
Você deve fornecer um `Definition` ou um `DefinitionUri`.  
*Tipo*: mapa  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `DefinitionSubstitutions`   <a name="sam-statemachine-definitionsubstitutions"></a>
Um string-to-string mapa que especifica os mapeamentos para variáveis de espaço reservado na definição da máquina de estado. Isso permite injetar valores obtidos em runtime (por exemplo, de funções intrínsecas) na definição da máquina de estado.  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DefinitionSubstitutions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionsubstitutions)` propriedade de um `AWS::StepFunctions::StateMachine` recurso. Se alguma função intrínseca for especificada em uma definição de máquina de estado embutida, AWS SAM adiciona entradas a essa propriedade para injetá-las na definição da máquina de estado.

 `DefinitionUri`   <a name="sam-statemachine-definitionuri"></a>
[O URI do Amazon Simple Storage Service (Amazon S3) ou o caminho de arquivo local da definição de máquina de estado escrito na Amazon States Language.](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html)  
Se você fornecer um caminho de arquivo local, o modelo deverá passar pelo fluxo de trabalho que inclui o comando `sam deploy` ou `sam package` para transformar corretamente a definição. Para tanto, você deve usar a versão 0.52.0 ou posterior da CLI AWS SAM .  
Você deve fornecer um `Definition` ou um `DefinitionUri`.  
*Tipo*: String \$1 [S3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitions3location)  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[DefinitionS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitions3location)` propriedade de um `AWS::StepFunctions::StateMachine` recurso.

 `DeploymentPreference`   <a name="sam-statemachine-deploymentpreference"></a>
As configurações que habilitam e configuram implantações graduais de máquinas de estado. *Para saber mais sobre as implantações graduais do Step Functions, consulte [Gerenciar implantações contínuas com versões e aliases](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-cd-aliasing-versioning.html) no AWS Step Functions Guia do desenvolvedor.*  
Especifique `AutoPublishAlias` antes de configurar essa propriedade. Suas configurações `DeploymentPreference` serão aplicadas ao alias especificado com `AutoPublishAlias`.  
Quando você especifica`DeploymentPreference`, AWS SAM gera o valor da `StateMachineVersionArn` subpropriedade automaticamente.  
*Digite*: [DeploymentPreference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachinealias-deploymentpreference.html)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: AWS SAM gera e anexa o valor da `StateMachineVersionArn` propriedade `DeploymentPreference` e passa `DeploymentPreference` para a `[DeploymentPreference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachinealias.html#cfn-stepfunctions-statemachinealias-deploymentpreference)` propriedade de um `AWS::StepFunctions::StateMachineAlias` recurso. 

 `Events`   <a name="sam-statemachine-events"></a>
Especifica os eventos que acionam essa máquina de estado. Os eventos consistem em um tipo e um conjunto de propriedades que dependem do tipo.  
*Digite*: [EventSource](sam-property-statemachine-statemachineeventsource.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Logging`   <a name="sam-statemachine-logging"></a>
Define quais eventos de histórico de execução são registrados e onde eles são registrados.  
*Digite*: [LoggingConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-loggingconfiguration)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[LoggingConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-loggingconfiguration)` propriedade de um `AWS::StepFunctions::StateMachine` recurso.

 `Name`   <a name="sam-statemachine-name"></a>
O nome da máquina de estado.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StateMachineName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-statemachinename)` propriedade de um `AWS::StepFunctions::StateMachine` recurso.

 `PermissionsBoundary`   <a name="sam-statemachine-permissionsboundary"></a>
O ARN de um limite de permissões a ser usado para a função de execução dessa máquina de estado. Essa propriedade só funciona se a função for gerada para você.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[PermissionsBoundary](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary)` propriedade de um `AWS::IAM::Role` recurso.

 `Policies`   <a name="sam-statemachine-policies"></a>
Políticas de permissão para essa máquina de estado. As políticas serão anexadas à função de execução padrão AWS Identity and Access Management (IAM) da máquina de estado.  
Essa propriedade aceita um único valor ou uma lista de valores. Os valores permitidos incluem:  
+ [Modelos de políticas AWS SAM](serverless-policy-templates.md).
+ O ARN de uma [política AWS gerenciada ou ](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) [política gerenciada pelo cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies).
+ O nome de uma política AWS gerenciada da [lista](https://github.com/aws/serverless-application-model/blob/develop/samtranslator/internal/data/aws_managed_policies.json) a seguir.
+ Uma [política do IAM em linha](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) formatada em YAML como um mapa.
Se você especificar a propriedade `Role`, essa propriedade será ignorada.
*Tipo*: String \$1 List \$1 Map  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

`PropagateTags`  <a name="sam-statemachine-propagatetags"></a>
Indique se deseja ou não passar as tags da propriedade `Tags` para os recursos [AWS::Serverless::StateMachine](sam-specification-generated-resources-statemachine.md) gerados. Especifique `True` para propagar as tags nos recursos gerados.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `False`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Role`   <a name="sam-statemachine-role"></a>
O ARN de um perfil do IAM a ser usado como a função de execução dessa máquina de estado.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-rolearn)` propriedade de um `AWS::StepFunctions::StateMachine` recurso.

 `RolePath`   <a name="sam-statemachine-rolepath"></a>
O caminho para a função de execução do IAM da máquina de estado.  
Use essa propriedade quando a função for gerada para você. Não use quando a função for especificada com a propriedade `Role`.  
*Tipo:* string  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Path](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path)` propriedade de um `AWS::IAM::Role` recurso.

 `Tags`   <a name="sam-statemachine-tags"></a>
Um string-to-string mapa que especifica as tags adicionadas à máquina de estado e a função de execução correspondente. Para obter informações sobre chaves e valores válidos para tags, consulte a propriedade [Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags) de um recurso [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html).  
*Tipo*: mapa  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags)` propriedade de um `AWS::StepFunctions::StateMachine` recurso. AWS SAM adiciona automaticamente uma `stateMachine:createdBy:SAM` tag a esse recurso e à função padrão que é gerada para ele.

 `Tracing`   <a name="sam-statemachine-tracing"></a>
Seleciona se AWS X-Ray está ou não habilitado para a máquina de estado. Para obter mais informações sobre o uso do X-Ray com Step Functions, consulte [AWS X-Ray e Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-xray-tracing.html) no *Guia do desenvolvedor do AWS Step Functions *.  
*Digite*: [TracingConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tracingconfiguration)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[TracingConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tracingconfiguration)` propriedade de um `AWS::StepFunctions::StateMachine` recurso.

 `Type`   <a name="sam-statemachine-type"></a>
O tipo da máquina de estado.  
*Valores válidos*: `STANDARD` ou `EXPRESS`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `STANDARD`  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StateMachineType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-statemachinetype)` propriedade de um `AWS::StepFunctions::StateMachine` recurso.

## Valores de retorno
<a name="sam-resource-statemachine-return-values"></a>

### Ref.
<a name="sam-resource-statemachine-return-values-ref"></a>

Quando você fornece o ID lógico desse recurso para a função intrínseca Ref, Ref retorna o nome de recurso da Amazon (ARN) do recurso `AWS::StepFunctions::StateMachine` subjacente.

Para obter mais informações sobre como usar a função `Ref`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) no *Guia do usuário do AWS CloudFormation *. 

### Fã:: GetAtt
<a name="sam-resource-statemachine-return-values-fn--getatt"></a>

`Fn::GetAtt` retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra. 

Para obter mais informações sobre o uso do `Fn::GetAtt`, consulte [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) no *Guia do usuário do AWS CloudFormation *. 

`Name`  <a name="Name-fn::getatt"></a>
Retorna o nome da máquina de estado, como `HelloWorld-StateMachine`.

## Exemplos
<a name="sam-resource-statemachine--examples"></a>

### Arquivo de definição da máquina de estado
<a name="sam-resource-statemachine--examples--state-machine-definition-file"></a>

Veja a seguir um exemplo de uma definição de máquina de estado em linha que permite que uma função do lambda invoque a máquina de estado. Observe que esse exemplo espera que a propriedade `Role` configure a política adequada para permitir a invocação. O arquivo `my_state_machine.asl.json` deve ser escrito no [Amazon States Language](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html).

Neste exemplo, as `DefinitionSubstitution` entradas permitem que a máquina de estado inclua recursos declarados no arquivo AWS SAM de modelo.

#### YAML
<a name="sam-resource-statemachine--examples--state-machine-definition-file--yaml"></a>

```
MySampleStateMachine:
  Type: AWS::Serverless::StateMachine
  Properties:
    DefinitionUri: statemachine/my_state_machine.asl.json
    Role: arn:aws:iam::123456123456:role/service-role/my-sample-role
    Tracing:
      Enabled: true
    DefinitionSubstitutions:
      MyFunctionArn: !GetAtt MyFunction.Arn
      MyDDBTable: !Ref TransactionTable
```

### Definição de máquina de estado em linha
<a name="sam-resource-statemachine--examples--inline-state-machine-definition"></a>

Veja a seguir um exemplo de definição de máquina de estado em linha.

Neste exemplo, o arquivo de AWS SAM modelo é escrito em YAML, então a definição da máquina de estado também está em YAML. Para declarar uma definição de máquina de estado embutida em JSON, escreva seu arquivo de AWS SAM modelo em JSON.

#### YAML
<a name="sam-resource-statemachine--examples--inline-state-machine-definition--yaml"></a>

```
MySampleStateMachine:
  Type: AWS::Serverless::StateMachine
  Properties:
    Definition:
      StartAt: MyLambdaState
      States:
        MyLambdaState:
          Type: Task
          Resource: arn:aws:lambda:us-east-1:123456123456:function:my-sample-lambda-app
          End: true
    Role: arn:aws:iam::123456123456:role/service-role/my-sample-role
    Tracing:
      Enabled: true
```

# EventSource
<a name="sam-property-statemachine-statemachineeventsource"></a>

O objeto que descreve a origem dos eventos que acionam a máquina de estado. Cada evento consiste em um tipo e um conjunto de propriedades que dependem desse tipo. Para obter informações sobre as propriedades da origem de cada evento, consulte o subtópico correspondente a esse tipo.

## Sintaxe
<a name="sam-property-statemachine-statemachineeventsource-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachineeventsource-syntax.yaml"></a>

```
  [Properties](#sam-statemachine-statemachineeventsource-properties): Schedule | ScheduleV2 | CloudWatchEvent | EventBridgeRule | Api
  [Type](#sam-statemachine-statemachineeventsource-type): String
```

## Propriedades
<a name="sam-property-statemachine-statemachineeventsource-properties"></a>

 `Properties`   <a name="sam-statemachine-statemachineeventsource-properties"></a>
Um objeto que descreve as propriedades desse mapeamento de eventos. O conjunto de propriedades deve estar em conformidade com o `Type` definido.  
*Tipo*[: [Cronograma](sam-property-statemachine-statemachineschedule.md) \$1 [ScheduleV2](sam-property-statemachine-statemachineschedulev2.md) \$1 \$1 [CloudWatchEvent](sam-property-statemachine-statemachinecloudwatchevent.md)\$1 Api [EventBridgeRule](sam-property-statemachine-statemachineeventbridgerule.md)](sam-property-statemachine-statemachineapi.md)  
*Obrigatório*: sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Type`   <a name="sam-statemachine-statemachineeventsource-type"></a>
O tipo de evento.  
*Valores válidos*: `Api`, `Schedule`, `ScheduleV2`, `CloudWatchEvent`, `EventBridgeRule`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-statemachine-statemachineeventsource--examples"></a>

### solicitações de
<a name="sam-property-statemachine-statemachineeventsource--examples--api"></a>

A seguir está um exemplo de um evento do tipo `API`.

#### YAML
<a name="sam-property-statemachine-statemachineeventsource--examples--api--yaml"></a>

```
ApiEvent:
  Type: Api
  Properties:
    Method: get
    Path: /group/{user}
    RestApiId: 
      Ref: MyApi
```

# Api
<a name="sam-property-statemachine-statemachineapi"></a>

O objeto que descreve um tipo de origem do evento `Api`. Se um recurso [AWS::Serverless::Api](sam-resource-api.md) for definido, os valores do caminho e do método devem corresponder a uma operação na definição de OpenAPI da API. 

## Sintaxe
<a name="sam-property-statemachine-statemachineapi-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachineapi-syntax.yaml"></a>

```
  [Auth](#sam-statemachine-statemachineapi-auth): ApiStateMachineAuth
  [Method](#sam-statemachine-statemachineapi-method): String
  [Path](#sam-statemachine-statemachineapi-path): String
  [RestApiId](#sam-statemachine-statemachineapi-restapiid): String
  UnescapeMappingTemplate: Boolean
```

## Propriedades
<a name="sam-property-statemachine-statemachineapi-properties"></a>

 `Auth`   <a name="sam-statemachine-statemachineapi-auth"></a>
A configuração de autorização para essa API, caminho e método.  
Use essa propriedade para substituir a configuração `DefaultAuthorizer` da API para um caminho individual, quando nenhum `DefaultAuthorizer` for especificado, ou para substituir a configuração padrão `ApiKeyRequired`.  
*Digite*: [ApiStateMachineAuth](sam-property-statemachine-apistatemachineauth.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Method`   <a name="sam-statemachine-statemachineapi-method"></a>
O método HTTP para o qual essa função é invocada.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Path`   <a name="sam-statemachine-statemachineapi-path"></a>
O caminho do URI para o qual esta função é invocada. O valor deve começar com `/`.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `RestApiId`   <a name="sam-statemachine-statemachineapi-restapiid"></a>
O identificador de um recurso `RestApi`, que deve conter uma operação com o caminho e o método fornecidos. Normalmente, isso é definido para fazer referência a um recurso [AWS::Serverless::Api](sam-resource-api.md) definido nesse modelo.  
Se você não definir essa propriedade, AWS SAM cria um [AWS::Serverless::Api](sam-resource-api.md) recurso padrão usando um `OpenApi` documento gerado. Esse recurso contém uma união de todos os caminhos e métodos definidos por eventos `Api` no mesmo modelo que não especificam um arquivo `RestApiId`.  
Esta propriedade não pode fazer referência a um recurso [AWS::Serverless::Api](sam-resource-api.md) definido em outro modelo.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `UnescapeMappingTemplate`   <a name="sam-statemachine-statemachineapi-unescapemappingtemplate"></a>
Elimina aspas simples, substituindo `\'` por `'`, na entrada que é passada para a máquina de estado. Use quando sua entrada contiver aspas simples.  
Se definido como `False` e sua entrada contiver aspas simples, ocorrerá um erro.
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: False  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-statemachine-statemachineapi--examples"></a>

### ApiEvent
<a name="sam-property-statemachine-statemachineapi--examples--apievent"></a>

A seguir está um exemplo de um evento do tipo `Api`.

#### YAML
<a name="sam-property-statemachine-statemachineapi--examples--apievent--yaml"></a>

```
Events:
  ApiEvent:
    Type: Api
    Properties:
      Path: /path
      Method: get
```

# ApiStateMachineAuth
<a name="sam-property-statemachine-apistatemachineauth"></a>

Configura a autorização no nível do evento, para uma API, um caminho e um método específicos.

## Sintaxe
<a name="sam-property-statemachine-apistatemachineauth-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-apistatemachineauth-syntax.yaml"></a>

```
  [ApiKeyRequired](#sam-statemachine-apistatemachineauth-apikeyrequired): Boolean
  [AuthorizationScopes](#sam-statemachine-apistatemachineauth-authorizationscopes): List
  [Authorizer](#sam-statemachine-apistatemachineauth-authorizer): String
  [ResourcePolicy](#sam-statemachine-apistatemachineauth-resourcepolicy): ResourcePolicyStatement
```

## Propriedades
<a name="sam-property-statemachine-apistatemachineauth-properties"></a>

 `ApiKeyRequired`   <a name="sam-statemachine-apistatemachineauth-apikeyrequired"></a>
Requer uma chave de API para essa API, caminho e método.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AuthorizationScopes`   <a name="sam-statemachine-apistatemachineauth-authorizationscopes"></a>
Os escopos de autorização a serem aplicados a essa API, caminho e método.  
Os escopos que você especificar substituirão quaisquer escopos aplicados pela propriedade `DefaultAuthorizer`, caso você a tenha especificado.  
*Tipo*: Lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Authorizer`   <a name="sam-statemachine-apistatemachineauth-authorizer"></a>
O `Authorizer` para uma máquina de estado específica.  
Se você especificou um autorizador global para a API e deseja tornar essa máquina de estado pública, substitua o autorizador global configurando `Authorizer` como `NONE`.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ResourcePolicy`   <a name="sam-statemachine-apistatemachineauth-resourcepolicy"></a>
Configure a política de recursos para esse caminho em uma API.  
*Digite*: [ResourcePolicyStatement](sam-property-statemachine-resourcepolicystatement.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-statemachine-apistatemachineauth--examples"></a>

### StateMachine-Autenticação
<a name="sam-property-statemachine-apistatemachineauth--examples--statemachine-auth"></a>

O exemplo a seguir especifica a autorização no nível da máquina de estado.

#### YAML
<a name="sam-property-statemachine-apistatemachineauth--examples--statemachine-auth--yaml"></a>

```
Auth:
  ApiKeyRequired: true
  Authorizer: NONE
```

# ResourcePolicyStatement
<a name="sam-property-statemachine-resourcepolicystatement"></a>

Configura uma política de recursos para todos os métodos e caminhos de uma API. Para obter mais informações sobre políticas de recursos, consulte Como [controlar o acesso a uma API com as políticas de recursos do API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies.html) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-statemachine-resourcepolicystatement-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-resourcepolicystatement-syntax.yaml"></a>

```
  [AwsAccountBlacklist](#sam-statemachine-resourcepolicystatement-awsaccountblacklist): List
  [AwsAccountWhitelist](#sam-statemachine-resourcepolicystatement-awsaccountwhitelist): List
  [CustomStatements](#sam-statemachine-resourcepolicystatement-customstatements): List
  [IntrinsicVpcBlacklist](#sam-statemachine-resourcepolicystatement-intrinsicvpcblacklist): List
  [IntrinsicVpcWhitelist](#sam-statemachine-resourcepolicystatement-intrinsicvpcwhitelist): List
  [IntrinsicVpceBlacklist](#sam-statemachine-resourcepolicystatement-intrinsicvpceblacklist): List
  [IntrinsicVpceWhitelist](#sam-statemachine-resourcepolicystatement-intrinsicvpcewhitelist): List
  [IpRangeBlacklist](#sam-statemachine-resourcepolicystatement-iprangeblacklist): List
  [IpRangeWhitelist](#sam-statemachine-resourcepolicystatement-iprangewhitelist): List
  [SourceVpcBlacklist](#sam-statemachine-resourcepolicystatement-sourcevpcblacklist): List
  [SourceVpcWhitelist](#sam-statemachine-resourcepolicystatement-sourcevpcwhitelist): List
```

## Propriedades
<a name="sam-property-statemachine-resourcepolicystatement-properties"></a>

 `AwsAccountBlacklist`   <a name="sam-statemachine-resourcepolicystatement-awsaccountblacklist"></a>
As AWS contas a serem bloqueadas.  
*Tipo*: lista de strings  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AwsAccountWhitelist`   <a name="sam-statemachine-resourcepolicystatement-awsaccountwhitelist"></a>
As AWS contas a serem permitidas. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista de strings  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `CustomStatements`   <a name="sam-statemachine-resourcepolicystatement-customstatements"></a>
Uma lista de declarações de política de recursos personalizadas a serem aplicadas a essa API. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpcBlacklist`   <a name="sam-statemachine-resourcepolicystatement-intrinsicvpcblacklist"></a>
A lista de nuvens privadas virtuais (VPCs) a serem bloqueadas, em que cada VPC é especificada como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a função `Ref` [intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpcWhitelist`   <a name="sam-statemachine-resourcepolicystatement-intrinsicvpcwhitelist"></a>
A lista de VPCs permissões, em que cada VPC é especificada como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a função `Ref` [intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpceBlacklist`   <a name="sam-statemachine-resourcepolicystatement-intrinsicvpceblacklist"></a>
A lista de endpoints da VPC a serem bloqueados, em que cada endpoint da VPC é especificado como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a `Ref` [função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpceWhitelist`   <a name="sam-statemachine-resourcepolicystatement-intrinsicvpcewhitelist"></a>
A lista de endpoints da VPC a serem permitidos, em que cada endpoint da VPC é especificado como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a `Ref` [função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IpRangeBlacklist`   <a name="sam-statemachine-resourcepolicystatement-iprangeblacklist"></a>
Os endereços IP ou intervalos de endereços a serem bloqueados. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IpRangeWhitelist`   <a name="sam-statemachine-resourcepolicystatement-iprangewhitelist"></a>
Os endereços IP ou intervalos de endereços a serem permitidos.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceVpcBlacklist`   <a name="sam-statemachine-resourcepolicystatement-sourcevpcblacklist"></a>
A VPC de origem ou os endpoints da VPC a serem bloqueados. Os nomes da VPC de origem devem começar com `"vpc-"` e os nomes dos endpoints da VPC de origem devem começar com `"vpce-"`. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceVpcWhitelist`   <a name="sam-statemachine-resourcepolicystatement-sourcevpcwhitelist"></a>
A VPC de origem ou os endpoints da VPC a serem permitidos. Os nomes da VPC de origem devem começar com `"vpc-"` e os nomes dos endpoints da VPC de origem devem começar com `"vpce-"`.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-statemachine-resourcepolicystatement--examples"></a>

### Exemplo de política de recursos
<a name="sam-property-statemachine-resourcepolicystatement--examples--resource-policy-example"></a>

O exemplo a seguir bloqueia dois endereços IP e uma VPC de origem e permite uma AWS conta.

#### YAML
<a name="sam-property-statemachine-resourcepolicystatement--examples--resource-policy-example--yaml"></a>

```
Auth:
  ResourcePolicy:
    CustomStatements: [{
                         "Effect": "Allow",
                         "Principal": "*",
                         "Action": "execute-api:Invoke",
                         "Resource": "execute-api:/Prod/GET/pets",
                         "Condition": {
                           "IpAddress": {
                             "aws:SourceIp": "1.2.3.4"
                           }
                         }
                       }]
    IpRangeBlacklist:
      - "10.20.30.40"
      - "1.2.3.4"
    SourceVpcBlacklist:
      - "vpce-1a2b3c4d"
    AwsAccountWhitelist:
      - "111122223333"
    IntrinsicVpcBlacklist:
      - "{{resolve:ssm:SomeVPCReference:1}}" 
      - !Ref MyVPC
    IntrinsicVpceWhitelist:
      - "{{resolve:ssm:SomeVPCEReference:1}}" 
      - !Ref MyVPCE
```

# CloudWatchEvent
<a name="sam-property-statemachine-statemachinecloudwatchevent"></a>

O objeto que descreve um tipo de fonte de evento `CloudWatchEvent`.

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)recurso quando esse tipo de evento é definido.

**Nota importante**: [EventBridgeRule](sam-property-statemachine-statemachineeventbridgerule.md) é o tipo de fonte de eventos preferido a ser usado, em vez de`CloudWatchEvent`. `EventBridgeRule`e `CloudWatchEvent` use o mesmo serviço, API e CloudFormation recursos subjacentes. No entanto, AWS SAM adicionará suporte para novos recursos somente para`EventBridgeRule`.

## Sintaxe
<a name="sam-property-statemachine-statemachinecloudwatchevent-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachinecloudwatchevent-syntax.yaml"></a>

```
  [EventBusName](#sam-statemachine-statemachinecloudwatchevent-eventbusname): String
  [Input](#sam-statemachine-statemachinecloudwatchevent-input): String
  [InputPath](#sam-statemachine-statemachinecloudwatchevent-inputpath): String
  [Pattern](#sam-statemachine-statemachinecloudwatchevent-pattern): [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)
```

## Propriedades
<a name="sam-property-statemachine-statemachinecloudwatchevent-properties"></a>

 `EventBusName`   <a name="sam-statemachine-statemachinecloudwatchevent-eventbusname"></a>
O barramento de eventos que deve ser associado a essa regra. Se você omitir essa propriedade, AWS SAM usará o barramento de eventos padrão.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: barramento de eventos padrão  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventBusName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname)` propriedade de um `AWS::Events::Rule` recurso.

 `Input`   <a name="sam-statemachine-statemachinecloudwatchevent-input"></a>
Texto JSON válido passado para o destino. Se você usar essa propriedade, nada do próprio texto do evento é passado para o destino.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Input](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input)` propriedade de um `AWS::Events::Rule Target` recurso.

 `InputPath`   <a name="sam-statemachine-statemachinecloudwatchevent-inputpath"></a>
Quando você não deseja passar todo o evento correspondente ao destino, a propriedade `InputPath` descreve qual parte do evento passar.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[InputPath](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath)` propriedade de um `AWS::Events::Rule Target` recurso.

 `Pattern`   <a name="sam-statemachine-statemachinecloudwatchevent-pattern"></a>
Descreve quais eventos são roteados para o destino especificado. Para obter mais informações, consulte [Eventos e padrões de eventos EventBridge no](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) *Guia do EventBridge usuário da Amazon*.  
*Digite*: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)` propriedade de um `AWS::Events::Rule` recurso.

## Exemplos
<a name="sam-property-statemachine-statemachinecloudwatchevent--examples"></a>

### CloudWatchEvent
<a name="sam-property-statemachine-statemachinecloudwatchevent--examples--cloudwatchevent"></a>

O exemplo a seguir mostra o tipo de origem de um evento `CloudWatchEvent`.

#### YAML
<a name="sam-property-statemachine-statemachinecloudwatchevent--examples--cloudwatchevent--yaml"></a>

```
CWEvent:
  Type: CloudWatchEvent
  Properties:
    Input: '{"Key": "Value"}'
    Pattern:
      detail:
        state:
          - running
```

# EventBridgeRule
<a name="sam-property-statemachine-statemachineeventbridgerule"></a>

O objeto que descreve um tipo de fonte de `EventBridgeRule` evento, que define sua máquina de estado como destino para uma EventBridge regra da Amazon. Para obter mais informações, consulte [O que é a Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) no *Guia do EventBridge usuário da Amazon*.

AWS SAM gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)recurso quando esse tipo de evento é definido.

## Sintaxe
<a name="sam-property-statemachine-statemachineeventbridgerule-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachineeventbridgerule-syntax.yaml"></a>

```
  DeadLetterConfig: DeadLetterConfig
  EventBusName: String
  Input: String
  InputPath: String
  InputTransformer: [InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html)
  Pattern: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)
  RetryPolicy: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)
  RuleName: String
  State: String
  Target: Target
```

## Propriedades
<a name="sam-property-statemachine-statemachineeventbridgerule-properties"></a>

 `DeadLetterConfig`   <a name="sam-statemachine-statemachineeventbridgerule-deadletterconfig"></a>
Configure a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma função Lambda que não existe ou quando não há permissões suficientes para invocar EventBridge a função Lambda. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *  
*Digite*: [DeadLetterConfig](sam-property-statemachine-statemachinedeadletterconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig)` propriedade do tipo de `AWS::Events::Rule` `Target` dados. A AWS SAM versão dessa propriedade inclui subpropriedades adicionais, caso você queira criar AWS SAM a fila de mensagens mortas para você.

 `EventBusName`   <a name="sam-statemachine-statemachineeventbridgerule-eventbusname"></a>
O barramento de eventos que deve ser associado a essa regra. Se você omitir essa propriedade, AWS SAM usará o barramento de eventos padrão.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: barramento de eventos padrão  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventBusName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventbusname)` propriedade de um `AWS::Events::Rule` recurso.

 `Input`   <a name="sam-statemachine-statemachineeventbridgerule-input"></a>
Texto JSON válido passado para o destino. Se você usar essa propriedade, nada do próprio texto do evento é passado para o destino.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Input](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input)` propriedade de um `AWS::Events::Rule Target` recurso.

 `InputPath`   <a name="sam-statemachine-statemachineeventbridgerule-inputpath"></a>
Quando você não deseja passar todo o evento correspondente ao destino, a propriedade `InputPath` descreve qual parte do evento passar.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[InputPath](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath)` propriedade de um `AWS::Events::Rule Target` recurso.

`InputTransformer`  <a name="sam-statemachine-statemachineeventbridgerule-inputtransformer"></a>
Configurações para permitir que você forneça entrada personalizada para um destino com base em determinados dados de evento. Você pode extrair um ou mais pares de valor-chave do evento e usar esses dados para enviar a entrada personalizada para o destino. Para obter mais informações, consulte [Transformação EventBridge de entrada](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html) da *Amazon no Guia EventBridge do usuário da Amazon*.  
*Digite*: [InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputtransformer)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[InputTransformer](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-inputtransformer.html) ` propriedade de um tipo de `AWS::Events::Rule` `Target` dados.

 `Pattern`   <a name="sam-statemachine-statemachineeventbridgerule-pattern"></a>
Descreve quais eventos são roteados para o destino especificado. Para obter mais informações, consulte [Eventos e padrões de eventos EventBridge no](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html) *Guia do EventBridge usuário da Amazon*.  
*Digite*: [EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EventPattern](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern)` propriedade de um `AWS::Events::Rule` recurso.

 `RetryPolicy`   <a name="sam-statemachine-statemachineeventbridgerule-retrypolicy"></a>
Um objeto `RetryPolicy` que inclui informações sobre as configurações de política de repetição. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *  
*Digite*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)` propriedade do tipo de `AWS::Events::Rule` `Target` dados.

 `RuleName`   <a name="sam-statemachine-statemachineeventbridgerule-rulename"></a>
O nome da regra.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name)` propriedade de um `AWS::Events::Rule` recurso.

`State`  <a name="sam-statemachine-statemachineeventbridgerule-state"></a>
O estado da regra.  
*Valores válidos*: `[ DISABLED | ENABLED ]`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state)` propriedade de um `AWS::Events::Rule` recurso.

 `Target`   <a name="sam-statemachine-statemachineeventbridgerule-target"></a>
O AWS recurso que é EventBridge invocado quando uma regra é acionada. Você pode usar essa propriedade para especificar a ID lógica do destino. Se essa propriedade não for especificada, a ID lógica do destino será AWS SAM gerada.  
*Tipo*: [Target](sam-property-statemachine-statemachinetarget.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Targets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets)` propriedade de um `AWS::Events::Rule` recurso. A versão AWS SAM dessa propriedade só permite que você especifique a ID lógica de um único destino.

## Exemplos
<a name="sam-property-statemachine-statemachineeventbridgerule--examples"></a>

### EventBridgeRule
<a name="sam-property-statemachine-statemachineeventbridgerule--examples--eventbridgerule"></a>

O exemplo a seguir mostra o tipo de origem de um evento `EventBridgeRule`.

#### YAML
<a name="sam-property-statemachine-statemachineeventbridgerule--examples--eventbridgerule--yaml"></a>

```
EBRule:
  Type: EventBridgeRule
  Properties:
    Input: '{"Key": "Value"}'
    Pattern:
      detail:
        state:
          - terminated
```

# DeadLetterConfig
<a name="sam-property-statemachine-statemachinedeadletterconfig"></a>

O objeto usado para especificar a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma máquina de estado que não existe ou quando há permissões insuficientes para invocar a máquina de estado. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *

## Sintaxe
<a name="sam-property-statemachine-statemachinedeadletterconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachinedeadletterconfig-syntax.yaml"></a>

```
  [Arn](#sam-statemachine-statemachinedeadletterconfig-arn): String
  [QueueLogicalId](#sam-statemachine-statemachinedeadletterconfig-queuelogicalid): String
  [Type](#sam-statemachine-statemachinedeadletterconfig-type): String
```

## Propriedades
<a name="sam-property-statemachine-statemachinedeadletterconfig-properties"></a>

 `Arn`   <a name="sam-statemachine-statemachinedeadletterconfig-arn"></a>
O nome de recurso da Amazon (ARN) da fila Amazon SQS especificado como o destino para a fila de mensagens não entregues.  
Especifique a propriedade `Type` ou a propriedade `Arn`, mas não ambas.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Arn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-deadletterconfig.html#cfn-events-rule-deadletterconfig-arn)` propriedade do tipo de `AWS::Events::Rule` `DeadLetterConfig` dados.

 `QueueLogicalId`   <a name="sam-statemachine-statemachinedeadletterconfig-queuelogicalid"></a>
O nome personalizado da fila de letras mortas que AWS SAM cria se `Type` for especificado.  
Se a propriedade `Type` não estiver definida, essa propriedade será ignorada.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Type`   <a name="sam-statemachine-statemachinedeadletterconfig-type"></a>
O tipo da fila. Quando essa propriedade é definida, cria AWS SAM automaticamente uma fila de mensagens mortas e anexa a [política baseada em recursos](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html#dlq-perms) necessária para conceder permissão ao recurso de regra para enviar eventos para a fila.  
Especifique a propriedade `Type` ou a propriedade `Arn`, mas não ambas.
*Valores válidos*: `SQS`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-statemachine-statemachinedeadletterconfig--examples"></a>

### DeadLetterConfig
<a name="sam-property-statemachine-statemachinedeadletterconfig--examples--deadletterconfig"></a>

DeadLetterConfig

#### YAML
<a name="sam-property-statemachine-statemachinedeadletterconfig--examples--deadletterconfig--yaml"></a>

```
DeadLetterConfig:
  Type: SQS
  QueueLogicalId: MyDLQ
```

# Target
<a name="sam-property-statemachine-statemachinetarget"></a>

Configura o AWS recurso que é EventBridge invocado quando uma regra é acionada.

## Sintaxe
<a name="sam-property-statemachine-statemachinetarget-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachinetarget-syntax.yaml"></a>

```
  [Id](#sam-statemachine-statemachinetarget-id): String
```

## Propriedades
<a name="sam-property-statemachine-statemachinetarget-properties"></a>

 `Id`   <a name="sam-statemachine-statemachinetarget-id"></a>
O ID lógico do destino.  
O valor do `Id` pode incluir caracteres alfanuméricos, pontos (`.`), hifens (`-`) e sublinhados (`_`).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Id](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id)` propriedade do tipo de `AWS::Events::Rule` `Target` dados.

## Exemplos
<a name="sam-property-statemachine-statemachinetarget--examples"></a>

### Target
<a name="sam-property-statemachine-statemachinetarget--examples--target"></a>

#### YAML
<a name="sam-property-statemachine-statemachinetarget--examples--target--yaml"></a>

```
EBRule:
  Type: EventBridgeRule
  Properties:
    Target:
      Id: MyTarget
```

# Schedule
<a name="sam-property-statemachine-statemachineschedule"></a>

O objeto que descreve um tipo de fonte de `Schedule` evento, que define sua máquina de estado como o destino de uma EventBridge regra que é acionada em um cronograma. Para obter mais informações, consulte [O que é a Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) no *Guia do EventBridge usuário da Amazon*.

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)recurso quando esse tipo de evento é definido.

## Sintaxe
<a name="sam-property-statemachine-statemachineschedule-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachineschedule-syntax.yaml"></a>

```
  [DeadLetterConfig](#sam-statemachine-statemachineschedule-deadletterconfig): DeadLetterConfig
  [Description](#sam-statemachine-statemachineschedule-description): String
  [Enabled](#sam-statemachine-statemachineschedule-enabled): Boolean
  [Input](#sam-statemachine-statemachineschedule-input): String
  [Name](#sam-statemachine-statemachineschedule-name): String
  [RetryPolicy](#sam-statemachine-statemachineschedule-retrypolicy): [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)
  [RoleArn](#sam-statemachine-statemachineschedulev-rolearn): String
  [Schedule](#sam-statemachine-statemachineschedule-schedule): String
  [State](#sam-statemachine-statemachineschedule-state): String
  Target: Target
```

## Propriedades
<a name="sam-property-statemachine-statemachineschedule-properties"></a>

 `DeadLetterConfig`   <a name="sam-statemachine-statemachineschedule-deadletterconfig"></a>
Configure a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma função Lambda que não existe ou quando não há permissões suficientes para invocar EventBridge a função Lambda. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *  
*Digite*: [DeadLetterConfig](sam-property-statemachine-statemachinescheduledeadletterconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-deadletterconfig)` propriedade do tipo de `AWS::Events::Rule` `Target` dados. A AWS SAM versão dessa propriedade inclui subpropriedades adicionais, caso você queira criar AWS SAM a fila de mensagens mortas para você.

 `Description`   <a name="sam-statemachine-statemachineschedule-description"></a>
Uma descrição da regra.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-description)` propriedade de um `AWS::Events::Rule` recurso.

 `Enabled`   <a name="sam-statemachine-statemachineschedule-enabled"></a>
Indica se a regra está habilitada.  
Para desativar a regra, defina essa propriedade como `false`.  
Especifique a propriedade `Enabled` ou `State`, mas não ambas.
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state)` propriedade de um `AWS::Events::Rule` recurso. Se essa propriedade for definida como `true` então AWS SAM passa`ENABLED`, caso contrário, ela passa`DISABLED`.

 `Input`   <a name="sam-statemachine-statemachineschedule-input"></a>
Texto JSON válido passado para o destino. Se você usar essa propriedade, nada do próprio texto do evento é passado para o destino.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Input](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input)` propriedade de um `AWS::Events::Rule Target` recurso.

 `Name`   <a name="sam-statemachine-statemachineschedule-name"></a>
O nome da regra. Se você não especificar um nome, CloudFormation gera uma ID física exclusiva e usa essa ID para o nome da regra.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name)` propriedade de um `AWS::Events::Rule` recurso.

 `RetryPolicy`   <a name="sam-statemachine-statemachineschedule-retrypolicy"></a>
Um objeto `RetryPolicy` que inclui informações sobre as configurações de política de repetição. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *  
*Digite*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-retrypolicy)` propriedade do tipo de `AWS::Events::Rule` `Target` dados.

 `RoleArn`   <a name="sam-statemachine-statemachineschedulev-rolearn"></a>
O ARN da função do IAM que o EventBridge Scheduler usará para o destino quando o agendamento for invocado.  
*Digite*: [RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn)  
*Obrigatório*: Não. Se não for fornecido, uma nova função será criada e usada.  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn)` propriedade do tipo de `AWS::Scheduler::Schedule` `Target` dados.

 `Schedule`   <a name="sam-statemachine-statemachineschedule-schedule"></a>
A expressão de programação que determina quando e com que frequência a regra é executada. Para obter mais informações, consulte [Programar expressões para regras](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ScheduleExpression](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-scheduleexpression)` propriedade de um `AWS::Events::Rule` recurso.

 `State`   <a name="sam-statemachine-statemachineschedule-state"></a>
O estado da regra.  
*Valores aceitos:* `DISABLED | ENABLED`  
Especifique a propriedade `Enabled` ou `State`, mas não ambas.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state)` propriedade de um `AWS::Events::Rule` recurso.

 `Target`   <a name="sam-statemachine-statemachineschedule-target"></a>
O AWS recurso que é EventBridge invocado quando uma regra é acionada. Você pode usar essa propriedade para especificar a ID lógica do destino. Se essa propriedade não for especificada, a ID lógica do destino será AWS SAM gerada.  
*Tipo*: [Target](sam-property-statemachine-statemachinetarget.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[Targets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets)` propriedade de um `AWS::Events::Rule` recurso. A AWS SAM versão dessa propriedade só permite que você especifique a ID lógica de um único destino.

## Exemplos
<a name="sam-property-statemachine-statemachineschedule--examples"></a>

### CloudWatch Agende um evento
<a name="sam-property-statemachine-statemachineschedule--examples--cloudwatch-schedule-event"></a>

CloudWatch Exemplo de agendamento de evento

#### YAML
<a name="sam-property-statemachine-statemachineschedule--examples--cloudwatch-schedule-event--yaml"></a>

```
CWSchedule:
  Type: Schedule
  Properties:
    Schedule: 'rate(1 minute)'
    Name: TestSchedule
    Description: test schedule
    Enabled: false
```

# DeadLetterConfig
<a name="sam-property-statemachine-statemachinescheduledeadletterconfig"></a>

O objeto usado para especificar a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma máquina de estado que não existe ou quando há permissões insuficientes para invocar a máquina de estado. *Para obter mais informações, consulte [Política de repetição de eventos e uso de filas de mensagens sem saída no Guia do usuário](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html) da Amazon. EventBridge *

## Sintaxe
<a name="sam-property-statemachine-statemachinescheduledeadletterconfig-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachinescheduledeadletterconfig-syntax.yaml"></a>

```
  [Arn](#sam-statemachine-statemachinescheduledeadletterconfig-arn): String
  [QueueLogicalId](#sam-statemachine-statemachinescheduledeadletterconfig-queuelogicalid): String
  [Type](#sam-statemachine-statemachinescheduledeadletterconfig-type): String
```

## Propriedades
<a name="sam-property-statemachine-statemachinescheduledeadletterconfig-properties"></a>

 `Arn`   <a name="sam-statemachine-statemachinescheduledeadletterconfig-arn"></a>
O nome de recurso da Amazon (ARN) da fila Amazon SQS especificado como o destino para a fila de mensagens não entregues.  
Especifique a propriedade `Type` ou a propriedade `Arn`, mas não ambas.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Arn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-deadletterconfig.html#cfn-events-rule-deadletterconfig-arn)` propriedade do tipo de `AWS::Events::Rule` `DeadLetterConfig` dados.

 `QueueLogicalId`   <a name="sam-statemachine-statemachinescheduledeadletterconfig-queuelogicalid"></a>
O nome personalizado da fila de letras mortas que AWS SAM cria se `Type` for especificado.  
Se a propriedade `Type` não estiver definida, essa propriedade será ignorada.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Type`   <a name="sam-statemachine-statemachinescheduledeadletterconfig-type"></a>
O tipo da fila. Quando essa propriedade é definida, cria AWS SAM automaticamente uma fila de mensagens mortas e anexa a [política baseada em recursos](https://docs.aws.amazon.com/eventbridge/latest/userguide/rule-dlq.html#dlq-perms) necessária para conceder permissão ao recurso de regra para enviar eventos para a fila.  
Especifique a propriedade `Type` ou a propriedade `Arn`, mas não ambas.
*Valores válidos*: `SQS`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-statemachine-statemachinescheduledeadletterconfig--examples"></a>

### DeadLetterConfig
<a name="sam-property-statemachine-statemachinescheduledeadletterconfig--examples--deadletterconfig"></a>

DeadLetterConfig

#### YAML
<a name="sam-property-statemachine-statemachinescheduledeadletterconfig--examples--deadletterconfig--yaml"></a>

```
DeadLetterConfig:
  Type: SQS
  QueueLogicalId: MyDLQ
```

# Target
<a name="sam-property-statemachine-statemachinescheduletarget"></a>

Configura o AWS recurso que é EventBridge invocado quando uma regra é acionada.

## Sintaxe
<a name="sam-property-statemachine-statemachinescheduletarget-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachinescheduletarget-syntax.yaml"></a>

```
  [Id](#sam-statemachine-statemachinescheduletarget-id): String
```

## Propriedades
<a name="sam-property-statemachine-statemachinescheduletarget-properties"></a>

 `Id`   <a name="sam-statemachine-statemachinescheduletarget-id"></a>
O ID lógico do destino.  
O valor do `Id` pode incluir caracteres alfanuméricos, pontos (`.`), hifens (`-`) e sublinhados (`_`).  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Id](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id)` propriedade do tipo de `AWS::Events::Rule` `Target` dados.

## Exemplos
<a name="sam-property-statemachine-statemachinescheduletarget--examples"></a>

### Target
<a name="sam-property-statemachine-statemachinescheduletarget--examples--target"></a>

#### YAML
<a name="sam-property-statemachine-statemachinescheduletarget--examples--target--yaml"></a>

```
EBRule:
  Type: Schedule
  Properties:
    Target:
      Id: MyTarget
```

# ScheduleV2
<a name="sam-property-statemachine-statemachineschedulev2"></a>

O objeto que descreve um tipo de fonte de `ScheduleV2` evento, que define sua máquina de estado como o destino de um evento do Amazon EventBridge Scheduler que é acionado em um agendamento. Para obter mais informações, consulte [O que é o Amazon EventBridge Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html)? no *Guia do usuário do EventBridge Scheduler*.

AWS Serverless Application Model (AWS SAM) gera um [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html)recurso quando esse tipo de evento é definido.

## Sintaxe
<a name="sam-property-statemachine-statemachineschedulev2-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-statemachine-statemachineschedulev2-syntax.yaml"></a>

```
DeadLetterConfig: DeadLetterConfig
[Description](#sam-statemachine-statemachineschedulev2-description): String
[EndDate](#sam-statemachine-statemachineschedulev2-enddate): String
[FlexibleTimeWindow](#sam-statemachine-statemachineschedulev2-flexibletimewindow): FlexibleTimeWindow
[GroupName](#sam-statemachine-statemachineschedulev2-groupname): String
[Input](#sam-statemachine-statemachineschedulev2-input): String
[KmsKeyArn](#sam-statemachine-statemachineschedulev2-kmskeyarn): String
[Name](#sam-statemachine-statemachineschedulev2-name): String
OmitName: Boolean
[PermissionsBoundary](#sam-statemachine-statemachineschedulev2-permissionsboundary): String
[RetryPolicy](#sam-statemachine-statemachineschedulev2-retrypolicy): RetryPolicy
[RoleArn](#sam-statemachine-statemachineschedulev2-rolearn): String
[ScheduleExpression](#sam-statemachine-statemachineschedulev2-scheduleexpression): String
[ScheduleExpressionTimezone](#sam-statemachine-statemachineschedulev2-scheduleexpressiontimezone): String
[StartDate](#sam-statemachine-statemachineschedulev2-startdate): String
[State](#sam-statemachine-statemachineschedulev2-state): String
```

## Propriedades
<a name="sam-property-statemachine-statemachineschedulev2-properties"></a>

 `DeadLetterConfig`   <a name="sam-statemachine-statemachineschedulev2-deadletterconfig"></a>
Configure a fila do Amazon Simple Queue Service (Amazon SQS) para a EventBridge qual envia eventos após uma falha na invocação de destino. A invocação pode falhar, por exemplo, ao enviar um evento para uma função Lambda que não existe ou quando não há permissões suficientes para invocar EventBridge a função Lambda. *Para obter mais informações, consulte [Configurando uma fila de mensagens mortas para o EventBridge Scheduler no Guia do usuário do Scheduler](https://docs.aws.amazon.com/scheduler/latest/UserGuide/configuring-schedule-dlq.html). EventBridge *  
*Digite*: [DeadLetterConfig](sam-property-statemachine-statemachinescheduledeadletterconfig.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é semelhante à `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-deadletterconfig)` propriedade do tipo de `AWS::Scheduler::Schedule` `Target` dados. A AWS SAM versão dessa propriedade inclui subpropriedades adicionais, caso você queira criar AWS SAM a fila de mensagens mortas para você.

 `Description`   <a name="sam-statemachine-statemachineschedulev2-description"></a>
Uma descrição da agenda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-description)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `EndDate`   <a name="sam-statemachine-statemachineschedulev2-enddate"></a>
A data, em UTC, até a qual a agenda pode invocar seu destino. Dependendo da expressão de recorrência da agenda, as invocações podem ser interrompidas até a **EndDate** que você especifica.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[EndDate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-enddate)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `FlexibleTimeWindow`   <a name="sam-statemachine-statemachineschedulev2-flexibletimewindow"></a>
Permite a configuração de uma janela na qual uma agenda pode ser invocada.  
*Digite*: [FlexibleTimeWindow](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-flexibletimewindow)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[FlexibleTimeWindow](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler.html#cfn-scheduler-schedule-flexibletimewindow)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `GroupName`   <a name="sam-statemachine-statemachineschedulev2-groupname"></a>
O nome do grupo de agendas para associar a essa agenda. Se não for definido, o grupo padrão será usado.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[GroupName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-groupname)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `Input`   <a name="sam-statemachine-statemachineschedulev2-input"></a>
Texto JSON válido passado para o destino. Se você usar essa propriedade, nada do próprio texto do evento é passado para o destino.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Input](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-input)` propriedade de um `AWS::Scheduler::Schedule Target` recurso.

 `KmsKeyArn`   <a name="sam-statemachine-statemachineschedulev2-kmskeyarn"></a>
O ARN de uma chave KMS será usada para criptografar dados do cliente.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-kmskeyarn)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `Name`   <a name="sam-statemachine-statemachineschedulev2-name"></a>
O nome da programação. Se você não especificar um nome, AWS SAM gera um nome no formato `StateMachine-Logical-IDEvent-Source-Name` e usa essa ID para o nome da agenda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-name)` propriedade de um `AWS::Scheduler::Schedule` recurso.

`OmitName`  <a name="sam-statemachine-statemachineschedulev2-omitname"></a>
Por padrão, AWS SAM gera e usa um nome de agendamento no formato de*<State-machine-logical-ID><event-source-name>*. Defina essa propriedade `true` para CloudFormation gerar uma ID física exclusiva e, em vez disso, use-a como nome da programação.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `false`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `PermissionsBoundary`   <a name="sam-statemachine-statemachineschedulev2-permissionsboundary"></a>
O ARN da política usada para definir o limite de permissões para a função.  
Se `PermissionsBoundary` estiver definido, AWS SAM aplicará os mesmos limites à função IAM de destino da agenda do agendador.
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[PermissionsBoundary](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary)` propriedade de um `AWS::IAM::Role` recurso.

 `RetryPolicy`   <a name="sam-statemachine-statemachineschedulev2-retrypolicy"></a>
Um objeto `RetryPolicy` que inclui informações sobre as configurações de política de repetição.  
*Digite*: [RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-retrypolicy)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RetryPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-retrypolicy)` propriedade do tipo de `AWS::Scheduler::Schedule` `Target` dados.

 `RoleArn`   <a name="sam-statemachine-statemachineschedulev2-rolearn"></a>
O ARN da função do IAM que o EventBridge Scheduler usará para o destino quando o agendamento for invocado.  
*Digite*: [RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[RoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-scheduler-schedule-target.html#cfn-scheduler-schedule-target-rolearn)` propriedade do tipo de `AWS::Scheduler::Schedule` `Target` dados.

 `ScheduleExpression`   <a name="sam-statemachine-statemachineschedulev2-scheduleexpression"></a>
A expressão de agendamento que determina quando e com que frequência o agendamento é executado.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ScheduleExpression](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-scheduleexpression)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `ScheduleExpressionTimezone`   <a name="sam-statemachine-statemachineschedulev2-scheduleexpressiontimezone"></a>
O fuso horário no qual a expressão de agendamento é avaliada.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[ScheduleExpressionTimezone](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-scheduleexpressiontimezone)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `StartDate`   <a name="sam-statemachine-statemachineschedulev2-startdate"></a>
A data, em UTC, a partir da qual a agenda pode começar a invocar um destino. Dependendo da expressão de recorrência da agenda, as invocações podem ocorrer a partir da **StartDate** que você especifica.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[StartDate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-startdate)` propriedade de um `AWS::Scheduler::Schedule` recurso.

 `State`   <a name="sam-statemachine-statemachineschedulev2-state"></a>
O estado da programação.  
*Valores aceitos:* `DISABLED | ENABLED`  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[State](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html#cfn-scheduler-schedule-state)` propriedade de um `AWS::Scheduler::Schedule` recurso.

## Exemplos
<a name="sam-property-statemachine-statemachineschedulev2--examples"></a>

### Exemplo básico de definição de um recurso ScheduleV2
<a name="sam-property-statemachine-statemachineschedulev2--examples--example1"></a>

```
StateMachine:
  Type: AWS::Serverless::StateMachine
  Properties:
    Name: MyStateMachine
    Events:
      ScheduleEvent:
        Type: ScheduleV2
        Properties:
          ScheduleExpression: "rate(1 minute)"
      ComplexScheduleEvent:
        Type: ScheduleV2
        Properties:
          ScheduleExpression: rate(1 minute)
          FlexibleTimeWindow:
            Mode: FLEXIBLE
            MaximumWindowInMinutes: 5
          StartDate: '2022-12-28T12:00:00.000Z'
          EndDate: '2023-01-28T12:00:00.000Z'
          ScheduleExpressionTimezone: UTC
          RetryPolicy:
            MaximumRetryAttempts: 5
            MaximumEventAgeInSeconds: 300
          DeadLetterConfig:
            Type: SQS
    DefinitionUri:
      Bucket: sam-sam-s3-demo-bucket
      Key: my-state-machine.asl.json
      Version: 3
    Policies:
      - LambdaInvokePolicy:
          FunctionName: !Ref MyFunction
```

# CloudFormation Recursos gerados para AWS SAM
<a name="sam-specification-generated-resources"></a>

Esta seção fornece detalhes sobre os CloudFormation recursos que são criados ao AWS SAM processar seu AWS modelo. O conjunto de CloudFormation recursos AWS SAM gerados difere de acordo com os cenários que você especificar. Um *cenário* é a combinação de recursos AWS SAM e propriedades especificados em seu arquivo de modelo. Você pode referenciar os recursos CloudFormation gerados em outro lugar no seu arquivo de modelo, da mesma forma que você faz referência aos recursos que você declara explicitamente em seu arquivo de modelo.

Por exemplo, se você especificar um recurso `AWS::Serverless::Function` em seu arquivo de modelo AWS SAM , AWS SAM sempre gera um recurso base `AWS::Lambda::Function`. Se você também especificar a `AutoPublishAlias` propriedade opcional, AWS SAM também gera `AWS::Lambda::Alias` `AWS::Lambda::Version` recursos.

Esta seção lista os cenários e os CloudFormation recursos que eles geram e mostra como referenciar os CloudFormation recursos gerados em seu arquivo AWS SAM de modelo.

## Referenciando recursos gerados CloudFormation
<a name="sam-specification-generated-resources-referencing"></a>

Você tem duas opções para referenciar CloudFormation recursos gerados em seu arquivo AWS SAM de modelo, por `LogicalId` ou por propriedade referenciável.

### Referenciando CloudFormation recursos gerados por LogicalId
<a name="sam-specification-generated-resources-referencing-logicalid"></a>

Os CloudFormation recursos que AWS SAM geram cada um têm um`[LogicalId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-logicalid)`, que é um identificador alfanumérico (A-Z, a-z, 0-9) exclusivo em um arquivo de modelo. AWS SAM usa os `LogicalIds` AWS SAM recursos em seu arquivo de modelo para construir `LogicalIds` os CloudFormation recursos que ele gera. Você pode usar o `LogicalId` de um CloudFormation recurso gerado para acessar as propriedades desse recurso em seu arquivo de modelo, assim como faria com um CloudFormation recurso que você declarou explicitamente. Para obter mais informações sobre `LogicalIds` em CloudFormation e AWS SAM modelos, consulte [Recursos](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html) no *Guia do AWS CloudFormation usuário*.

**nota**  
Alguns recursos gerados incluem um valor `LogicalIds` de hash exclusivo para evitar conflitos de namespace. Esses recursos são derivados quando a pilha é criada `LogicalIds`. Você pode recuperá-los somente após a criação da pilha usando o Console de gerenciamento da AWS, AWS CLI, ou um dos. AWS SDKs Não recomendamos referenciar esses recursos `LogicalId` porque os valores de hash podem mudar.

### Referenciando CloudFormation recursos gerados por propriedade referenciável
<a name="sam-specification-generated-resources-referencing-referenceable-property"></a>

Para alguns recursos gerados, AWS SAM fornece uma propriedade referenciável do AWS SAM recurso. Você pode usar essa propriedade para referenciar um CloudFormation recurso gerado e suas propriedades em seu arquivo AWS SAM de modelo.

**nota**  
Nem todos os CloudFormation recursos gerados têm propriedades referenciáveis. Para esses recursos, você deve usar `LogicalId` o.

## Cenários CloudFormation de recursos gerados
<a name="sam-specification-generated-resources-scenarios"></a>

A tabela a seguir resume os AWS SAM recursos e propriedades que compõem os cenários que geram CloudFormation recursos. Os tópicos na coluna **Cenários** fornecem detalhes sobre os CloudFormation recursos adicionais que são AWS SAM gerados para esse cenário.


| AWS SAM recurso |  CloudFormation Recurso básico | Cenários | 
| --- | --- | --- | 
| AWS::Serverless::Api  | [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::Application  | [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::CapacityProvider  | [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-capacityprovider.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::Function | [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::HttpApi | [AWS::ApiGatewayV2::Api](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::LayerVersion  | [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::SimpleTable  | [AWS::DynamoDB::Table](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 
| AWS::Serverless::StateMachine  | [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/serverless-application-model/latest/developerguide/sam-specification-generated-resources.html)  | 

**Topics**
+ [Referenciando recursos gerados CloudFormation](#sam-specification-generated-resources-referencing)
+ [Cenários CloudFormation de recursos gerados](#sam-specification-generated-resources-scenarios)
+ [CloudFormation recursos gerados quando AWS::Serverless::Api é especificado](sam-specification-generated-resources-api.md)
+ [CloudFormation recursos gerados quando AWS::Serverless::Application é especificado](sam-specification-generated-resources-application.md)
+ [CloudFormation recursos gerados quando AWS::Serverless::CapacityProvider é especificado](sam-specification-generated-resources-capacityprovider.md)
+ [CloudFormation recursos gerados quando você especifica AWS::Serverless::Connector](sam-specification-generated-resources-connector.md)
+ [CloudFormation recursos gerados quando AWS::Serverless::Function é especificado](sam-specification-generated-resources-function.md)
+ [CloudFormation recursos gerados quando AWS::Serverless::GraphQLApi é especificado](sam-specification-generated-resources-graphqlapi.md)
+ [CloudFormation recursos gerados quando AWS::Serverless::HttpApi é especificado](sam-specification-generated-resources-httpapi.md)
+ [CloudFormation recursos gerados quando AWS::Serverless::LayerVersion é especificado](sam-specification-generated-resources-layerversion.md)
+ [CloudFormation recursos gerados quando AWS::Serverless::SimpleTable é especificado](sam-specification-generated-resources-simpletable.md)
+ [CloudFormation recursos gerados quando AWS::Serverless::StateMachine é especificado](sam-specification-generated-resources-statemachine.md)

# CloudFormation recursos gerados quando AWS::Serverless::Api é especificado
<a name="sam-specification-generated-resources-api"></a>

Quando um `AWS::Serverless::Api` é especificado, AWS Serverless Application Model (AWS SAM) sempre gera um CloudFormation recurso `AWS::ApiGateway::RestApi` básico. Além disso, ele sempre gera um `AWS::ApiGateway::Stage` e um recurso `AWS::ApiGateway::Deployment`.

**`AWS::ApiGateway::RestApi`**  
*`LogicalId`: *`<api‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::ApiGateway::Stage`**  
*`LogicalId`: *`<api‑LogicalId><stage‑name>Stage`  
`<stage‑name>` é a string para a qual a propriedade `StageName` está definida. Por exemplo, se você definir `StageName` como `Gamma`, será `LogicalId``MyRestApiGammaStage`.  
*Propriedade referenciável:* `<api‑LogicalId>.Stage`

**`AWS::ApiGateway::Deployment`**  
*`LogicalId`: *`<api‑LogicalId>Deployment<sha>`  
O `<sha>` é um valor de hash exclusivo que é gerado quando a pilha é criada. Por exemplo, `MyRestApiDeployment926eeb5ff1`.  
*Propriedade referenciável:* `<api‑LogicalId>.Deployment`

Além desses CloudFormation recursos, quando `AWS::Serverless::Api` especificado, AWS SAM gera CloudFormation recursos adicionais para os seguintes cenários.

**Topics**
+ [DomainName propriedade é especificada](#sam-specification-generated-resources-api-domain-name)
+ [UsagePlan propriedade é especificada](#sam-specification-generated-resources-api-usage-plan)

## DomainName propriedade é especificada
<a name="sam-specification-generated-resources-api-domain-name"></a>

Quando a `DomainName` propriedade da `Domain` propriedade de an `AWS::Serverless::Api` é especificada, AWS SAM gera o `AWS::ApiGateway::DomainName` CloudFormation recurso.

**`AWS::ApiGateway::DomainName`**  
*`LogicalId`: *`ApiGatewayDomainName<sha>`  
O `<sha>` é um valor de hash exclusivo que é gerado quando a pilha é criada. Por exemplo: `ApiGatewayDomainName926eeb5ff1`.  
*Propriedade referenciável:* `<api‑LogicalId>.DomainName`

## UsagePlan propriedade é especificada
<a name="sam-specification-generated-resources-api-usage-plan"></a>

Quando a `UsagePlan` propriedade da `Auth` propriedade de um `AWS::Serverless::Api` é especificada, AWS SAM gera os seguintes CloudFormation recursos: `AWS::ApiGateway::UsagePlan``AWS::ApiGateway::UsagePlanKey`, `AWS::ApiGateway::ApiKey` e.

**`AWS::ApiGateway::UsagePlan`**  
*`LogicalId`: *`<api‑LogicalId>UsagePlan`  
*Propriedade referenciável:* `<api‑LogicalId>.UsagePlan`

**`AWS::ApiGateway::UsagePlanKey`**  
*`LogicalId`: *`<api‑LogicalId>UsagePlanKey`  
*Propriedade referenciável:* `<api‑LogicalId>.UsagePlanKey`

**`AWS::ApiGateway::ApiKey`**  
*`LogicalId`: *`<api‑LogicalId>ApiKey`  
*Propriedade referenciável:* `<api‑LogicalId>.ApiKey`

# CloudFormation recursos gerados quando AWS::Serverless::Application é especificado
<a name="sam-specification-generated-resources-application"></a>

Quando um `AWS::Serverless::Application` é especificado, AWS Serverless Application Model (AWS SAM) gera um CloudFormation recurso `AWS::CloudFormation::Stack` básico.

**`AWS::CloudFormation::Stack`**  
*`LogicalId`: *`<application‑LogicalId>`   
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

# CloudFormation recursos gerados quando AWS::Serverless::CapacityProvider é especificado
<a name="sam-specification-generated-resources-capacityprovider"></a>

Quando um `AWS::Serverless::CapacityProvider` é especificado, AWS Serverless Application Model (AWS SAM) gera um recurso `AWS::Lambda::CapacityProvider` com base CloudFormation .

**`AWS::Lambda::CapacityProvider`**  
*`LogicalId`: *`<capacityprovider‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

Além desse CloudFormation recurso, quando `AWS::Serverless::CapacityProvider` especificado, AWS SAM também gera CloudFormation recursos para os seguintes cenários:

**Topics**
+ [OperatorRole propriedade não é especificada](#sam-specification-generated-resources-capacityprovider-iam-role)

## OperatorRole propriedade não é especificada
<a name="sam-specification-generated-resources-capacityprovider-iam-role"></a>

Quando a `OperatorRole` propriedade de um *não `AWS::Serverless::CapacityProvider`* é especificada, AWS SAM gera um `AWS::IAM::Role` CloudFormation recurso com a política `AWSLambdaManagedEC2ResourceOperator` gerenciada anexada.

**`AWS::IAM::Role`**  
*`LogicalId`: *`<capacityprovider‑LogicalId>OperatorRole`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

# CloudFormation recursos gerados quando você especifica AWS::Serverless::Connector
<a name="sam-specification-generated-resources-connector"></a>

**nota**  
Quando você define conectores por meio da propriedade `Connectors` incorporada, ela é primeiro transformada em um recurso `AWS::Serverless::Connector` antes de gerar esses recursos.

Quando você especifica um `AWS::Serverless::Connector` recurso em um AWS SAM modelo, AWS SAM gera os seguintes AWS CloudFormation recursos conforme necessário.

**`AWS::IAM::ManagedPolicy`**  
 *`LogicalId`:*`<connector‑LogicalId>Policy`   
 *Propriedade referenciável:* N/A (Para referenciar esse CloudFormation recurso, você deve usar o.) `LogicalId` 

**`AWS::SNS::TopicPolicy`**  
 *`LogicalId`:*`<connector‑LogicalId>TopicPolicy`   
 *Propriedade referenciável:* N/A (Para referenciar esse CloudFormation recurso, você deve usar o.) `LogicalId` 

**`AWS::SQS::QueuePolicy`**  
 *`LogicalId`:*`<connector‑LogicalId>QueuePolicy`   
 *Propriedade referenciável:* N/A (Para referenciar esse CloudFormation recurso, você deve usar o.) `LogicalId` 

**`AWS::Lambda::Permission`**  
 *`LogicalId`:*`<connector‑LogicalId><permission>LambdaPermission`   
 `<permission>`é uma permissão especificada pela propriedade `Permissions`. Por exemplo, .`Write`   
*Propriedade referenciável:* N/A (Para referenciar esse CloudFormation recurso, você deve usar o.) `LogicalId` 

# CloudFormation recursos gerados quando AWS::Serverless::Function é especificado
<a name="sam-specification-generated-resources-function"></a>

Quando um `AWS::Serverless::Function` é especificado, AWS Serverless Application Model (AWS SAM) sempre cria um CloudFormation recurso `AWS::Lambda::Function` básico.

**`AWS::Lambda::Function`**  
*`LogicalId`: *`<function‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

Além desse CloudFormation recurso, quando `AWS::Serverless::Function` especificado, AWS SAM também gera CloudFormation recursos para os seguintes cenários.

**Topics**
+ [Propriedades da função principal](#sam-specification-generated-resources-function-core-properties)
+ [Origens de eventos](#sam-specification-generated-resources-function-event-sources)
+ [Configuração do evento](#sam-specification-generated-resources-function-event-configuration)

## Propriedades da função principal
<a name="sam-specification-generated-resources-function-core-properties"></a>

Os cenários a seguir geram CloudFormation recursos com base nas propriedades da função principal:

### A propriedade da função não foi especificada
<a name="sam-specification-generated-resources-function-not-role"></a>

Quando a `Role` propriedade de um *não `AWS::Serverless::Function`* é especificada, AWS SAM gera um `AWS::IAM::Role` CloudFormation recurso.

**`AWS::IAM::Role`**  
*`LogicalId`: *`<function‑LogicalId>Role`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

### AutoPublishAlias propriedade é especificada
<a name="sam-specification-generated-resources-function-autopublishalias"></a>

Quando a `AutoPublishAlias` propriedade de um `AWS::Serverless::Function` é especificada, AWS SAM gera os seguintes CloudFormation recursos: `AWS::Lambda::Alias` `AWS::Lambda::Version` e.

**`AWS::Lambda::Alias`**  
*`LogicalId`: *`<function‑LogicalId>Alias<alias‑name>`  
`<alias‑name>` é a string que está definida como `AutoPublishAlias`. Por exemplo, se você `AutoPublishAlias` definir como`live`, `LogicalId` é: *MyFunction* Alias*live*.  
*Propriedade referenciável:* `<function‑LogicalId>.Alias`

**`AWS::Lambda::Version`**  
*`LogicalId`: *`<function‑LogicalId>Version<sha>`  
O `<sha>` é um valor de hash exclusivo que é gerado quando a pilha é criada. Por exemplo, *MyFunction* Versão*926eeb5ff1*.  
*Propriedade referenciável:* `<function‑LogicalId>.Version`

Para obter informações adicionais sobre a `AutoPublishAlias` propriedade, consulte a [seção Propriedades do AWS::Serverless::Function](sam-resource-function.md#sam-resource-function-properties).

### DeploymentPreference propriedade é especificada
<a name="sam-specification-generated-resources-function-deploymentpreference"></a>

Quando a `DeploymentPreference` propriedade de um `AWS::Serverless::Function` é especificada, AWS SAM gera os seguintes CloudFormation recursos: `AWS::CodeDeploy::Application` `AWS::CodeDeploy::DeploymentGroup` e. Além disso, se a `Role` propriedade do `DeploymentPreference` objeto *não* for especificada, AWS SAM também gera um `AWS::IAM::Role` CloudFormation recurso.

**`AWS::CodeDeploy::Application`**  
*`LogicalId`: *`ServerlessDeploymentApplication`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::CodeDeploy::DeploymentGroup`**  
*`LogicalId`: *`<function‑LogicalId>DeploymentGroup`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::IAM::Role`**  
*`LogicalId`: *`CodeDeployServiceRole`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

### FunctionUrlConfig propriedade é especificada
<a name="sam-specification-generated-resources-function-functionurlconfig"></a>

Quando a `FunctionUrlConfig` propriedade é especificada, AWS SAM gera CloudFormation recursos diferentes com base no`AuthType`.

Quando `AuthType: NONE` é especificado, AWS SAM gera os seguintes CloudFormation recursos:

**`AWS::Lambda::Permission` (Invocar acesso)**  
*`LogicalId`: *`<function‑LogicalId>URLInvokeAllowPublicAccess`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::Lambda::Permission` (Acesso público)**  
*`LogicalId`: *`<function‑LogicalId>UrlPublicPermissions`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::Lambda::Url`**  
*`LogicalId`: *`<function‑LogicalId>Url`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

Quando `AuthType: AWS_IAM` é especificado, AWS SAM gera somente:

**`AWS::Lambda::Url`**  
*`LogicalId`: *`<function‑LogicalId>Url`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

Para obter informações adicionais sobre a `FunctionUrlConfig` propriedade, consulte [FunctionUrlConfig](sam-property-function-functionurlconfig.md).

## Origens de eventos
<a name="sam-specification-generated-resources-function-event-sources"></a>

Os cenários a seguir geram CloudFormation recursos com base em fontes de eventos:

### Uma fonte de eventos da Api é especificada
<a name="sam-specification-generated-resources-function-api"></a>

Quando a `Event` propriedade de um `AWS::Serverless::Function` é definida como`Api`, mas a `RestApiId` propriedade *não* é especificada, AWS SAM gera o `AWS::ApiGateway::RestApi` CloudFormation recurso.

**`AWS::ApiGateway::RestApi`**  
*`LogicalId`: *`ServerlessRestApi`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

### Uma fonte de HttpApi eventos é especificada
<a name="sam-specification-generated-resources-function-httpapi"></a>

Quando a `Event` propriedade de um `AWS::Serverless::Function` é definida como`HttpApi`, mas a `ApiId` propriedade *não* é especificada, AWS SAM gera o `AWS::ApiGatewayV2::Api` CloudFormation recurso.

**`AWS::ApiGatewayV2::Api`**  
*`LogicalId`: *`ServerlessHttpApi`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

### Uma fonte de eventos de streaming é especificada
<a name="sam-specification-generated-resources-function-streaming"></a>

Quando a `Event` propriedade de an `AWS::Serverless::Function` é definida como um dos tipos de streaming, AWS SAM gera o `AWS::Lambda::EventSourceMapping` CloudFormation recurso. Isso se aplica aos seguintes tipos: `DynamoDB`, `Kinesis`, `MQ`, `MSK` e `SQS`.

**`AWS::Lambda::EventSourceMapping`**  
*`LogicalId`: *`<function‑LogicalId><event‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

### Uma fonte de eventos de ponte de eventos (ou barramento de eventos) é especificada
<a name="sam-specification-generated-resources-function-eventbridge"></a>

Quando a `Event` propriedade de an `AWS::Serverless::Function` é definida como um dos tipos de ponte de eventos (ou barramento de eventos), AWS SAM gera o `AWS::Events::Rule` CloudFormation recurso. Isso se aplica aos seguintes tipos: `EventBridgeRule`, `Schedule` e `CloudWatchEvents`.

**`AWS::Events::Rule`**  
*`LogicalId`: *`<function‑LogicalId><event‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

### Uma fonte de IotRule eventos é especificada
<a name="sam-specification-generated-resources-function-iotrule"></a>

Quando a `Event` propriedade de an `AWS::Serverless::Function` é definida como IoTRule, AWS SAM gera o `AWS::IoT::TopicRule` CloudFormation recurso.

**`AWS::IoT::TopicRule`**  
*`LogicalId`: *`<function‑LogicalId><event‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

## Configuração do evento
<a name="sam-specification-generated-resources-function-event-configuration"></a>

Os cenários a seguir geram CloudFormation recursos com base na configuração do evento:

### OnSuccess (ou OnFailure) a propriedade é especificada para eventos do Amazon SNS
<a name="sam-specification-generated-resources-function-sns-onsuccess"></a>

Quando a propriedade `OnSuccess` (ou`OnFailure`) da `DestinationConfig` propriedade da `EventInvokeConfig` propriedade de an `AWS::Serverless::Function` é especificada e o tipo de destino é, `SNS` mas o ARN de destino *não* está especificado, AWS SAM gera os seguintes CloudFormation recursos: e. `AWS::Lambda::EventInvokeConfig` `AWS::SNS::Topic`

**`AWS::Lambda::EventInvokeConfig`**  
*`LogicalId`: *`<function‑LogicalId>EventInvokeConfig`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::SNS::Topic`**  
*`LogicalId`: *`<function‑LogicalId>OnSuccessTopic` (ou `<function‑LogicalId>OnFailureTopic`)  
*Propriedade referenciável:* `<function‑LogicalId>.DestinationTopic`  
Se ambos `OnSuccess` e `OnFailure` forem especificados para um evento do Amazon SNS, para distinguir entre os recursos gerados, você deverá usar o `LogicalId`.

### OnSuccess (ou OnFailure) a propriedade é especificada para eventos do Amazon SQS
<a name="sam-specification-generated-resources-function-sqs-onsuccess"></a>

Quando a propriedade `OnSuccess` (ou`OnFailure`) da `DestinationConfig` propriedade da `EventInvokeConfig` propriedade de an `AWS::Serverless::Function` é especificada e o tipo de destino é, `SQS` mas o ARN de destino *não* está especificado, AWS SAM gera os seguintes CloudFormation recursos: e. `AWS::Lambda::EventInvokeConfig` `AWS::SQS::Queue`

**`AWS::Lambda::EventInvokeConfig`**  
*`LogicalId`: *`<function‑LogicalId>EventInvokeConfig`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::SQS::Queue`**  
*`LogicalId`: *`<function‑LogicalId>OnSuccessQueue` (ou `<function‑LogicalId>OnFailureQueue`)  
*Propriedade referenciável:* `<function‑LogicalId>.DestinationQueue`  
Se ambos `OnSuccess` e `OnFailure` forem especificados para um evento do Amazon SQS, para distinguir entre os recursos gerados, você deverá usar o `LogicalId`.

# CloudFormation recursos gerados quando AWS::Serverless::GraphQLApi é especificado
<a name="sam-specification-generated-resources-graphqlapi"></a>

Quando você especifica um `AWS::Serverless::GraphQLApi` recurso em um modelo AWS Serverless Application Model (AWS SAM), AWS SAM sempre cria os seguintes AWS CloudFormation recursos básicos.

**`AWS::AppSync::DataSource`**  
*`LogicalId`: *`<graphqlapi-LogicalId><datasource-RelativeId><datasource-Type>DataSource`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::AppSync::FunctionConfiguration`**  
*`LogicalId`: *`<graphqlapi-LogicalId><function-RelativeId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::AppSync::GraphQLApi`**  
*`LogicalId`: *`<graphqlapi-LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::AppSync::GraphQLSchema`**  
*`LogicalId`: *`<graphqlapi-LogicalId>Schema`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

**`AWS::AppSync::Resolver`**  
*`LogicalId`: *`<graphqlapi-LogicalId><OperationType><resolver-RelativeId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

Além desses CloudFormation recursos, quando `AWS::Serverless::GraphQLApi` especificado, também AWS SAM pode gerar os seguintes CloudFormation recursos.

`AWS::AppSync::ApiCache`  
*`LogicalId`: *`<graphqlapi-LogicalId>ApiCache`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

`AWS::AppSync::ApiKey`  
*`LogicalId`: *`<graphqlapi-LogicalId><apikey-RelativeId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

`AWS::AppSync::DomainName`  
*`LogicalId`: *`<graphqlapi-LogicalId>DomainName`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

`AWS::AppSync::DomainNameApiAssociation`  
*`LogicalId`: *`<graphqlapi-LogicalId>DomainNameApiAssociation`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

AWS SAM também pode usar o `AWS::Serverless::Connector` recurso para provisionar permissões. Para obter mais informações, consulte [CloudFormation recursos gerados quando você especifica AWS::Serverless::Connector](sam-specification-generated-resources-connector.md).

# CloudFormation recursos gerados quando AWS::Serverless::HttpApi é especificado
<a name="sam-specification-generated-resources-httpapi"></a>

Quando um `AWS::Serverless::HttpApi` é especificado, AWS Serverless Application Model (AWS SAM) gera um CloudFormation recurso `AWS::ApiGatewayV2::Api` básico.

**`AWS::ApiGatewayV2::Api`**  
*`LogicalId`: *`<httpapi‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

Além desse CloudFormation recurso, quando `AWS::Serverless::HttpApi` especificado, AWS SAM também gera CloudFormation recursos para os seguintes cenários:

**Topics**
+ [StageName propriedade é especificada](#sam-specification-generated-resources-httpapi-stage-name)
+ [StageName propriedade *não* é especificada](#sam-specification-generated-resources-httpapi-not-stage-name)
+ [DomainName propriedade é especificada](#sam-specification-generated-resources-httpapi-domain-name)

## StageName propriedade é especificada
<a name="sam-specification-generated-resources-httpapi-stage-name"></a>

Quando a `StageName` propriedade de um `AWS::Serverless::HttpApi` é especificada, AWS SAM gera o `AWS::ApiGatewayV2::Stage` CloudFormation recurso.

**`AWS::ApiGatewayV2::Stage`**  
*`LogicalId`: *`<httpapi‑LogicalId><stage‑name>Stage`  
`<stage‑name>` é a string para a qual a propriedade `StageName` está definida. Por exemplo, se você `StageName` definir como`Gamma`, `LogicalId` é: *MyHttpApiGamma* Estágio.  
*Propriedade referenciável:* `<httpapi‑LogicalId>.Stage`

## StageName propriedade *não* é especificada
<a name="sam-specification-generated-resources-httpapi-not-stage-name"></a>

Quando a `StageName` propriedade de um *não `AWS::Serverless::HttpApi`* é especificada, AWS SAM gera o `AWS::ApiGatewayV2::Stage` CloudFormation recurso.

**`AWS::ApiGatewayV2::Stage`**  
*`LogicalId`: *`<httpapi‑LogicalId>ApiGatewayDefaultStage`  
*Propriedade referenciável:* `<httpapi‑LogicalId>.Stage`

## DomainName propriedade é especificada
<a name="sam-specification-generated-resources-httpapi-domain-name"></a>

Quando a `DomainName` propriedade da `Domain` propriedade de an `AWS::Serverless::HttpApi` é especificada, AWS SAM gera o `AWS::ApiGatewayV2::DomainName` CloudFormation recurso.

**`AWS::ApiGatewayV2::DomainName`**  
*`LogicalId`: *`ApiGatewayDomainNameV2<sha>`  
O `<sha>` é um valor de hash exclusivo que é gerado quando a pilha é criada. Por exemplo, `ApiGatewayDomainNameV2`*926eeb5ff1*.  
*Propriedade referenciável:* `<httpapi‑LogicalId>.DomainName`

# CloudFormation recursos gerados quando AWS::Serverless::LayerVersion é especificado
<a name="sam-specification-generated-resources-layerversion"></a>

Quando um `AWS::Serverless::LayerVersion` é especificado, AWS Serverless Application Model (AWS SAM) gera um CloudFormation recurso `AWS::Lambda::LayerVersion` básico.

**`AWS::Lambda::LayerVersion`**  
*`LogicalId`: *`<layerversion‑LogicalId>`   
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

# CloudFormation recursos gerados quando AWS::Serverless::SimpleTable é especificado
<a name="sam-specification-generated-resources-simpletable"></a>

Quando um `AWS::Serverless::SimpleTable` é especificado, AWS Serverless Application Model (AWS SAM) gera um CloudFormation recurso `AWS::DynamoDB::Table` básico.

**`AWS::DynamoDB::Table`**  
*`LogicalId`: *`<simpletable‑LogicalId>`   
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

# CloudFormation recursos gerados quando AWS::Serverless::StateMachine é especificado
<a name="sam-specification-generated-resources-statemachine"></a>

Quando um `AWS::Serverless::StateMachine` é especificado, AWS Serverless Application Model (AWS SAM) gera um recurso `AWS::StepFunctions::StateMachine` com base CloudFormation .

**`AWS::StepFunctions::StateMachine`**  
*`LogicalId`: *`<statemachine‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

Além desse CloudFormation recurso, quando `AWS::Serverless::StateMachine` especificado, AWS SAM também gera CloudFormation recursos para os seguintes cenários:

**Topics**
+ [A propriedade da função não foi especificada](#sam-specification-generated-resources-statemachine-not-role)
+ [Uma origem de eventos de API é especificada](#sam-specification-generated-resources-statemachine-api)
+ [Uma fonte de eventos de ponte de eventos (ou barramento de eventos) é especificada](#sam-specification-generated-resources-statemachine-eventbridge)

## A propriedade da função não foi especificada
<a name="sam-specification-generated-resources-statemachine-not-role"></a>

Quando a `Role` propriedade de um *não `AWS::Serverless::StateMachine`* é especificada, AWS SAM gera um `AWS::IAM::Role` CloudFormation recurso.

**`AWS::IAM::Role`**  
*`LogicalId`: *`<statemachine‑LogicalId>Role`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

## Uma origem de eventos de API é especificada
<a name="sam-specification-generated-resources-statemachine-api"></a>

Quando a `Event` propriedade de um `AWS::Serverless::StateMachine` é definida como`Api`, mas a `RestApiId` propriedade *não* é especificada, AWS SAM gera o `AWS::ApiGateway::RestApi` CloudFormation recurso.

**`AWS::ApiGateway::RestApi`**  
*`LogicalId`: *`ServerlessRestApi`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

## Uma fonte de eventos de ponte de eventos (ou barramento de eventos) é especificada
<a name="sam-specification-generated-resources-statemachine-eventbridge"></a>

Quando a `Event` propriedade de an `AWS::Serverless::StateMachine` é definida como um dos tipos de ponte de eventos (ou barramento de eventos), AWS SAM gera o `AWS::Events::Rule` CloudFormation recurso. Isso se aplica aos seguintes tipos: `EventBridgeRule`, `Schedule` e `CloudWatchEvents`.

**`AWS::Events::Rule`**  
*`LogicalId`: *`<statemachine‑LogicalId><event‑LogicalId>`  
*Propriedade referenciável:* N/A (você deve usar o `LogicalId` para referenciar este recurso) CloudFormation 

# Atributos de recursos suportados por AWS SAM
<a name="sam-specification-resource-attributes"></a>

Atributos de recursos são atributos que você pode adicionar AWS SAM e CloudFormation recursos para controlar comportamentos e relacionamentos adicionais. Para obter mais informações sobre atributos de recursos, consulte [Referência de atributos](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-product-attribute-reference.html) de recursos no *Guia AWS CloudFormation do usuário*.

AWS SAM suportam um subconjunto de atributos de recursos que são definidos por CloudFormation. Dos atributos de recursos suportados, alguns são copiados somente para o CloudFormation recurso gerado base do AWS SAM recurso correspondente e alguns são copiados para todos os CloudFormation recursos gerados resultantes do recurso correspondente AWS SAM . Para obter mais informações sobre CloudFormation os recursos gerados a partir AWS SAM dos recursos correspondentes, consulte[CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).

A tabela a seguir resume o suporte a atributos de recursos por AWS SAM, de acordo com a [Exceções](#sam-specification-resource-attributes-exceptions) lista abaixo.


| Atributos de recursos | Recurso(s) gerado(s) pelo destino | 
| --- | --- | 
|  ** [DependsOn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) ** **[Metadados](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html)** 1, 2  |  Somente recurso CloudFormation gerado por base. Para obter informações sobre o mapeamento entre AWS SAM recursos e CloudFormation recursos básicos, consulte[Cenários CloudFormation de recursos gerados](sam-specification-generated-resources.md#sam-specification-generated-resources-scenarios).  | 
| ** [Condition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/conditions-section-structure.html) ** ** [DeletionPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html) ** ** [UpdateReplacePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html) **  |  Todos os CloudFormation recursos gerados a partir do AWS SAM recurso correspondente. Para obter informações sobre cenários para CloudFormation recursos gerados, consulte[Cenários CloudFormation de recursos gerados](sam-specification-generated-resources.md#sam-specification-generated-resources-scenarios).  | 

**Observações:**

1. Para obter mais informações sobre como usar o atributo de recurso `Metadata` com o tipo de recurso `AWS::Serverless::Function`, consulte [Criação de funções Lambda com tempos de execução personalizados no AWS SAM](building-custom-runtimes.md).

1. Para obter mais informações sobre como usar o atributo de recurso `Metadata` com o tipo de recurso `AWS::Serverless::LayerVersion`, consulte [Construindo camadas Lambda em AWS SAM](building-layers.md).

## Exceções
<a name="sam-specification-resource-attributes-exceptions"></a>

Há várias exceções às regras de atributos de recursos descritas anteriormente:
+ Para`AWS::Lambda::LayerVersion`, o campo personalizado AWS SAM-only `RetentionPolicy` define `DeletionPolicy` os CloudFormation recursos gerados. Isso tem uma precedência maior do que `DeletionPolicy` ele mesmo. Se nenhum estiver definido, então, por padrão, será `DeletionPolicy` definido como `Retain`.
+ Para `AWS::Lambda::Version`, se `DeletionPolicy` não especificado, o padrão será `Retain`.
+ Para o cenário em que `DeploymentPreferences` é especificado para uma função sem servidor, os atributos do recurso não são copiados para os seguintes recursos gerados: CloudFormation 
  + `AWS::CodeDeploy::Application`
  + `AWS::CodeDeploy::DeploymentGroup`
  + O `AWS::IAM::Role` chamado `CodeDeployServiceRole` que é criado para esse cenário
+ Se seu AWS SAM modelo contiver várias funções com fontes de eventos de API criadas implicitamente, as funções compartilharão o `AWS::ApiGateway::RestApi` recurso gerado. Nesse cenário, se as funções tiverem atributos de recursos diferentes, então, para o `AWS::ApiGateway::RestApi` recurso gerado, AWS SAM copie os atributos do recurso de acordo com as seguintes listas priorizadas:
  + `UpdateReplacePolicy`:

    1. `Retain`

    1. `Snapshot`

    1. `Delete`
  + `DeletionPolicy`:

    1. `Retain`

    1. `Delete`

# Extensões do API Gateway para AWS SAM
<a name="sam-specification-api-gateway-extensions"></a>

As extensões do API Gateway, projetadas especificamente para AWS, fornecem personalizações e funcionalidades adicionais para design e gerenciamento. APIs As extensões do API Gateway são extensões da especificação OpenAPI que oferecem suporte à autorização AWS específica e às integrações de API específicas do API Gateway. Para obter mais informações sobre extensões do API Gateway, consulte [Extensões do API Gateway para o OpenAPI](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html).

AWS SAM suporta um subconjunto de extensões do API Gateway. Para ver quais extensões do API Gateway são compatíveis AWS SAM, consulte a tabela a seguir.


|  |  | 
| --- |--- |
|  Extensão do API Gateway  |  Apoiado por AWS SAM  | 
| [x-amazon-apigateway-any-objeto de método](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-any-method.html) | Sim | 
| [x-amazon-apigateway-apiPropriedade -key-source](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-api-key-source.html) | Não | 
| [x-amazon-apigateway-auth Objeto](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-auth.html) | Sim | 
| [x-amazon-apigateway-authorizer Objeto](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html) | Sim | 
| [x-amazon-apigateway-authtype Propriedade](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authtype.html) | Sim | 
| [x-amazon-apigateway-binaryPropriedade -media-types](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-binary-media-types.html) | Sim | 
| [x-amazon-apigateway-documentation Objeto](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-documentation.html) | Não | 
| [x-amazon-apigateway-endpoint-Objeto de configuração](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html) | Não | 
| [x-amazon-apigateway-gatewayObjeto -responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.html) | Sim | 
| [x-amazon-apigateway-gateway-Responses.GatewayResponse Objeto](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.gatewayResponse.html) | Sim | 
| [x-amazon-apigateway-gatewayObjeto -responses.responseParameters](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.responseParameters.html) | Sim | 
| [x-amazon-apigateway-gateway-Objeto ResponseTemplates ResponseTemplates](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.responseTemplates.html) | Sim | 
| [x-amazon-apigateway-integration Objeto](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-integration.html) | Sim | 
| [x-amazon-apigateway-integrationObjeto .requestTemplates](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-integration-requestTemplates.html) | Sim | 
| [x-amazon-apigateway-integrationObjeto .requestParameters](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-integration-requestParameters.html) | Não | 
| [x-amazon-apigateway-integrationObjeto .responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-integration-responses.html) | Sim | 
| [x-amazon-apigateway-integrationObjeto .response](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-integration-response.html) | Sim | 
| [x-amazon-apigateway-integrationObjeto.responseTemplates](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-integration-responseTemplates.html) | Sim | 
| [x-amazon-apigateway-integrationObjeto .responseParameters](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-integration-responseParameters.html) | Sim | 
| [x-amazon-apigateway-requestPropriedade -validator](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-request-validator.html) | Não | 
| [x-amazon-apigateway-requestObjeto -validators](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-request-validators.html) | Não | 
| [x-amazon-apigateway-request-Objeto Validators.requestValidator](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-request-validators.requestValidator.html) | Não | 

# Funções intrínsecas para AWS SAM
<a name="sam-specification-intrinsic-functions"></a>

As funções intrínsecas são funções integradas que permitem atribuir valores a propriedades que só estão disponíveis em tempo de execução. AWS SAM tem suporte limitado para certas propriedades de funções intrínsecas, portanto, é incapaz de resolver algumas funções intrínsecas. Consequentemente, recomendamos adicionar a transformação `AWS::LanguageExtensions` para resolver isso. `AWS::LanguageExtensions`É uma macro hospedada por CloudFormation que permite usar funções intrínsecas e outras funcionalidades que, por padrão, não estão incluídas no. CloudFormation

```
Transform:
  - AWS::LanguageExtensions
  - AWS::Serverless-2016-10-31
```

**nota**  
Se você usar funções intrínsecas na CodeUri propriedade, não AWS SAM será capaz de analisar corretamente os valores. Em vez disso, considere usar a transformação `AWS::LanguageExtensions`.  
Para obter mais informações, consulte a [seção Propriedades do AWS::Serverless::Function](sam-resource-function.md#sam-resource-function-properties).

Para obter mais informações sobre funções intrínsecas, consulte o [Referência à função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference.html) no *Guia do usuário do AWS CloudFormation *.