

# Adicionar camadas às funções
<a name="adding-layers"></a>

Uma camada do Lambda é um arquivo .zip que pode conter código ou dados adicionais. As camadas geralmente contêm dependências de biblioteca, um [runtime personalizado](runtimes-custom.md) ou arquivos de configuração. 

Esta seção explica como adicionar uma camada a uma função do Lambda. Para obter mais informações conceituais sobre camadas e por que você pode considerar usá-las, consulte [Gerenciar dependências do Lambda com camadas](chapter-layers.md).

Antes de configurar uma função do Lambda para usar uma camada, é necessário:
+ [Empacotar o conteúdo da sua camada](packaging-layers.md)
+ [Criar uma camada no Lambda](creating-deleting-layers.md)
+ Certifique-se de ter permissões para chamar a API [GetLayerVersion](https://docs.aws.amazon.com/lambda/latest/api/API_GetLayerVersion.html) na versão da camada. Para funções em sua Conta da AWS, você deve adicionar essa permissão em sua [política de usuário](access-control-identity-based.md). Para usar uma camada em outra conta, o proprietário dessa conta deve conceder permissão à sua conta em uma [política baseada em recursos](access-control-resource-based.md). Para obter exemplos, consulte [Conceder a outras contas acesso às camadas](permissions-layer-cross-account.md).

É possível adicionar até cinco camadas a uma função do Lambda. O tamanho total descompactado da função e de todas as camadas não pode exceder a cota de tamanho do pacote de implantação descompactado de 250 MB. Para obter mais informações, consulte [Cotas Lambda](gettingstarted-limits.md).

Suas funções podem continuar usando qualquer versão de camada que você já tenha adicionado, mesmo após a exclusão dessa versão ou após a revogação de sua permissão para acessar a camada. No entanto, você não pode criar uma nova função que use uma versão de camada excluída.

**Para adicionar uma camada a uma função**

1. Abra a [página Funções](https://console.aws.amazon.com/lambda/home#/functions) do console do Lambda.

1. Escolha a função.

1. Role a tela para baixo até a seção **Camadas** e depois escolha **Adicionar uma camada**.

1. Em **Escolher uma camada**, escolha uma origem da camada:

   1. **Camadas da AWS**: escolha na lista de [extensões gerenciadas pela AWS](extensions-api-partners.md#aws-managed-extensions).

   1. **Camadas personalizadas**: escolha uma camada criada na sua seu Conta da AWS.

   1. **Especificar um ARN**: para usar uma camada [de outra Conta da AWS](permissions-layer-cross-account.md), como uma [extensão de terceiros](extensions-api-partners.md), insira o nome do recurso da Amazon (ARN).

1. Escolha **Adicionar**.

A ordem na qual você adiciona as camadas é a ordem na qual o Lambda mescla posteriormente o conteúdo da camada no ambiente de execução. É possível alterar a ordem de mesclagem das camadas usando o console.

**Para atualizar a ordem de mesclagem das camadas para sua função (console)**

1. Abra a [página Funções](https://console.aws.amazon.com/lambda/home#/functions) do console do Lambda.

1. Escolha a função a ser configurada.

1. Em **Layers** (Camadas), escolha **Edit** (Editar)

1. Escolha uma das camadas.

1. Escolha **Merge earlier** (Mesclar antes) ou **Merge later** (Mesclar depois) para ajustar a ordem das camadas.

1. Escolha **Salvar**.

As camadas contêm versionamento. O conteúdo de cada versão da camada é imutável. O proprietário de uma camada pode liberar novas versões dela para fornecer conteúdo atualizado. É possível usar o console para atualizar a versão da camada anexada às suas funções.

**Para atualizar versões da camada para sua função (console)**

1. Abra a [página Camadas](https://console.aws.amazon.com/lambda/home#/layers) do console do Lambda.

1. Escolha a camada para a qual você deseja atualizar a versão.

1. Escolha a guia **Funções usando esta versão**.

1. Escolha as funções que você deseja modificar e, em seguida, escolha **Editar**.

1. Em **Versão da camada**, escolha a versão da camada a ser alterada.

1. Escolha **Atualizar funções**.

Você não pode atualizar as versões da camada de funções nas contas da AWS.

## Encontrar informações da camada
<a name="finding-layer-information"></a>

Para encontrar camadas em sua conta que sejam compatíveis com o runtime de sua função, use a API [ListLayers](https://docs.aws.amazon.com/lambda/latest/api/API_ListLayers.html). Por exemplo, é possível usar o seguinte comando (CLI) [list-layers](https://docs.aws.amazon.com/cli/latest/reference/lambda/list-layers.html) AWS Command Line Interface:

```
aws lambda list-layers --compatible-runtime python3.14
```

Você deve ver uma saída semelhante a:

```
{
    "Layers": [
        {
            "LayerName": "my-layer",
            "LayerArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer",
            "LatestMatchingVersion": {
                "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2",
                "Version": 2,
                "Description": "My layer",
                "CreatedDate": "2025-04-15T00:37:46.592+0000",
                "CompatibleRuntimes": [
                    "python3.14"
                ]
            }
        }
    ]
}
```

Para listar todas as camadas da sua conta, omitia a opção `--compatible-runtime`. Os detalhes da resposta mostram a versão mais recente de cada camada.

Também é possível obter a versão mais recente de uma camada usando a API [ListLayerVersions](https://docs.aws.amazon.com/lambda/latest/api/API_ListLayerVersions.html). Por exemplo, é possível usar o seguinte comando `list-layer-versions` da CLI:

```
aws lambda list-layer-versions --layer-name my-layer
```

Você deve ver uma saída semelhante a:

```
{
    "LayerVersions": [
        {
            "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2",
            "Version": 2,
            "Description": "My layer",
            "CreatedDate": "2023-11-15T00:37:46.592+0000",
            "CompatibleRuntimes": [
                "java11"
            ]
        },
        {
            "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1",
            "Version": 1,
            "Description": "My layer",
            "CreatedDate": "2023-11-15T00:27:46.592+0000",
            "CompatibleRuntimes": [
                "java11"
            ]
        }
    ]
}
```