

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# AWS SAM referencia
<a name="serverless-sam-reference"></a>

 Esta sección contiene material AWS SAM de referencia. Incluye material de referencia de la CLI de AWS SAM, como información de referencia sobre los comandos de la CLI de AWS SAM e información adicional sobre la CLI de AWS SAM, como información sobre la configuración, el control de versiones y la solución de problemas. Además, esta sección incluye información de referencia sobre la AWS SAM especificación y la AWS SAM plantilla, como información de referencia sobre los conectores, los repositorios de imágenes y las implementaciones. 

## AWS SAM la especificación y la plantilla AWS SAM
<a name="serverless-sam-spec"></a>

La AWS SAM especificación es una especificación de código abierto bajo la licencia Apache 2.0. La versión actual de la AWS SAM especificación está disponible en. [AWS SAM plantilla](sam-specification.md) AWS SAM La especificación incluye una sintaxis abreviada simplificada que se utiliza para definir las funciones, los eventos APIs, las configuraciones y los permisos de la aplicación sin servidor. 

La interacción con las AWS SAM especificaciones se realiza a través del directorio de proyectos de la AWS SAM aplicación, que son las carpetas y los archivos que se crean al ejecutar el **sam init** comando. Este directorio incluye la AWS SAM plantilla, un archivo importante que define AWS los recursos. La AWS SAM plantilla es una extensión de una AWS CloudFormation plantilla. Para obtener una referencia completa sobre las plantillas de CloudFormation , consulta la [Referencia de plantillas de ](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-reference.html) en la *Guía del usuario de AWS CloudFormation *.

## Referencia de los comandos AWS SAM CLI
<a name="serverless-sam-cli"></a>

La interfaz de línea de AWS Serverless Application Model comandos (AWS SAMCLI) es una herramienta de línea de comandos que puede utilizar con AWS SAM plantillas e integraciones de terceros compatibles para crear y ejecutar aplicaciones sin servidor.

Puedes utilizar los comandos de la CLI de AWS SAM para desarrollar, probar e implementar sus aplicaciones sin servidor en Nube de AWS. A continuación, se presentan algunos ejemplos de comandos de la CLI de AWS SAM:
+ `sam init`: si es la primera vez que utilizas la CLI de AWS SAM, puedes ejecutar el comando `sam init` sin ningún parámetro para crear una aplicación Hello World. El comando genera una AWS SAM plantilla preconfigurada y un ejemplo de código de aplicación en el idioma que elija.
+ `sam local invoke` y `sam local start-api`: utiliza estos comandos para probar el código de la aplicación de forma local antes de implementarlo en Nube de AWS.
+ `sam logs`: utiliza este comando para recuperar los registros que genera la función de Lambda. Esto puedes ayudarlo a probar y depurar la aplicación después de haberla implementado en Nube de AWS.
+ `sam package`: utiliza este comando para agrupar el código y las dependencias de la aplicación en un paquete de *implementación*. Necesita el paquete de implementación para cargar la aplicación en Nube de AWS.
+ `sam deploy`: utiliza este comando para implementar tu aplicación sin servidor en Nube de AWS. Crea los AWS recursos y establece los permisos y otras configuraciones que se definen en la AWS SAM plantilla.

Para obtener instrucciones sobre cómo instalar el AWS SAMCLI, consulte[Instala la AWS SAM CLI](install-sam-cli.md).

## Plantillas de política de AWS SAM
<a name="serverless-policy-temps"></a>

Con AWS SAM, puede elegir entre una lista de plantillas de políticas para limitar los permisos de su AWS Lambda función a los recursos que utiliza su aplicación. Para obtener una lista de las plantillas de políticas disponibles, consulte [Tabla de plantillas de políticas](serverless-policy-templates.md#serverless-policy-template-table). Para obtener información general sobre las plantillas de políticas AWS SAM, consulte[Plantillas de política de AWS SAM](serverless-policy-templates.md).

## Temas
<a name="reference-sam-topics"></a>
+ [AWS SAM plantilla](sam-specification.md)
+ [Referencia de los comandos AWS SAM CLI](serverless-sam-cli-command-reference.md)
+ [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md)
+  [AWS SAM referencia de conector](reference-sam-connector.md) 
+ [Plantillas de política de AWS SAM](serverless-policy-templates.md)
+ [Repositorios de imágenes para AWS SAM](serverless-image-repositories.md)
+ [Telemetría en la AWS SAMCLI](serverless-sam-telemetry.md)
+ [Configura y administra el acceso a los recursos en tu AWS SAM plantilla](sam-permissions.md)

# Referencia de los comandos AWS SAM CLI
<a name="serverless-sam-cli-command-reference"></a>

En esta sección se incluye información de referencia sobre los comandos de la CLI de AWS SAM. Se incluyen detalles sobre el uso, una lista completa de las diferentes opciones disponibles para cada comando e información adicional. Cuando proceda, la información adicional incluye detalles como los argumentos, las variables de entorno y los eventos. Para obtener más información, consulte cada comando. Para obtener instrucciones sobre cómo instalar el AWS SAMCLI, consulte[Instala la AWS SAM CLI](install-sam-cli.md).

**Topics**
+ [sam build](sam-cli-command-reference-sam-build.md)
+ [sam delete](sam-cli-command-reference-sam-delete.md)
+ [sam deploy](sam-cli-command-reference-sam-deploy.md)
+ [sam init](sam-cli-command-reference-sam-init.md)
+ [sam list](sam-cli-command-reference-sam-list.md)
+ [sam local callback](sam-cli-command-reference-sam-local-callback.md)
+ [sam local execution](sam-cli-command-reference-sam-local-execution.md)
+ [sam local generate-event](sam-cli-command-reference-sam-local-generate-event.md)
+ [sam local invoke](sam-cli-command-reference-sam-local-invoke.md)
+ [sam local start-api](sam-cli-command-reference-sam-local-start-api.md)
+ [sam local start-lambda](sam-cli-command-reference-sam-local-start-lambda.md)
+ [sam logs](sam-cli-command-reference-sam-logs.md)
+ [sam package](sam-cli-command-reference-sam-package.md)
+ [sam pipeline bootstrap](sam-cli-command-reference-sam-pipeline-bootstrap.md)
+ [sam pipeline init](sam-cli-command-reference-sam-pipeline-init.md)
+ [sam publish](sam-cli-command-reference-sam-publish.md)
+ [sam remote callback](sam-cli-command-reference-sam-remote-callback.md)
+ [sam remote execution](sam-cli-command-reference-sam-remote-execution.md)
+ [sam remote invoke](sam-cli-command-reference-remote-invoke.md)
+ [sam remote test-event](sam-cli-command-reference-remote-test-event.md)
+ [sam sync](sam-cli-command-reference-sam-sync.md)
+ [sam traces](sam-cli-command-reference-sam-traces.md)
+ [sam validate](sam-cli-command-reference-sam-validate.md)

# sam build
<a name="sam-cli-command-reference-sam-build"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam build`.
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam build` comando, consulte[Introducción a la construcción con AWS SAM](using-sam-cli-build.md).

El comando `sam build` prepara una aplicación para los pasos posteriores del flujo de trabajo del desarrollador, como las pruebas locales o la implementación en Nube de AWS.

## De uso
<a name="ref-sam-cli-build-usage"></a>

```
$ sam build <arguments> <options>
```

## Argumentos
<a name="ref-sam-cli-build-args"></a>

**Resource ID (ID de recurso)**  <a name="ref-sam-cli-build-args-resource-id"></a>
Opcional. Indica AWS SAM que se cree un único recurso declarado en una [AWS SAM plantilla](what-is-sam-overview.md#what-is-sam-template). Los artefactos de compilación del recurso especificado serán los únicos disponibles para los siguientes comandos del flujo de trabajo, es decir, `sam package` y `sam deploy`.

## Opciones
<a name="ref-sam-cli-build-options"></a>

`--base-dir, -s DIRECTORY`  <a name="ref-sam-cli-build-options-base-dir"></a>
Resuelve las rutas relativas al código fuente de la función o capa con respecto a este directorio. Utiliza esta opción si desea cambiar la forma en que se resuelven las rutas relativas a las carpetas de código fuente. De forma predeterminada, las rutas relativas se resuelven con respecto a la ubicación de la plantilla de AWS SAM .  
Además de los recursos de la aplicación o pila raíz que está creando, esta opción también se aplica a las aplicaciones o pilas anidadas.  
Esta opción se aplica a los siguientes tipos y propiedades de recursos:  
+ Tipo de recurso: `AWS::Serverless::Function` Propiedad: `CodeUri`
+ Tipo de recurso: `AWS::Serverless::Function` Atributo de recurso: `Metadata` Entrada: `DockerContext`
+ Tipo de recurso: `AWS::Serverless::LayerVersion` Propiedad: `ContentUri`
+ Tipo de recurso: `AWS::Lambda::Function` Propiedad: `Code`
+ Tipo de recurso: `AWS::Lambda::LayerVersion` Propiedad: `Content`

`--beta-features | --no-beta-features`  <a name="ref-sam-cli-build-options-beta-features"></a>
Permitir o denegar las características beta.

`--build-dir, -b DIRECTORY`  <a name="ref-sam-cli-build-options-build-dir"></a>
La ruta a un directorio en el que se almacenan los artefactos creados. Este directorio y todo su contenido se eliminan con esta opción.

`--build-image TEXT`  <a name="ref-sam-cli-build-options-build-image"></a>
URI de la imagen del contenedor que quiere extraer para la compilación. De forma predeterminada, AWS SAM extrae la imagen del contenedor de Amazon ECR Public. Utiliza esta opción para extraer la imagen desde otra ubicación.  
Puedes especificar esta opción varias veces. Cada instancia de esta opción puede tomar una cadena o un par clave-valor. Si especificas una cadena, será el URI de la imagen del contenedor que se usará para todos los recursos de la aplicación. Por ejemplo, `sam build --use-container --build-image amazon/aws-sam-cli-build-image-python3.8`. Si especificas un par clave-valor, la clave es el nombre del recurso y el valor es el URI de la imagen del contenedor que se va a usar para ese recurso. Por ejemplo, `sam build --use-container --build-image Function1=amazon/aws-sam-cli-build-image-python3.8`. Con los pares clave-valor, puede especificar distintas imágenes del contenedor para distintos recursos.  
Esta opción solo se aplica si se especifica la opción `--use-container`; de lo contrario, se producirá un error.

`--build-in-source | --no-build-in-source`  <a name="ref-sam-cli-build-options-build-in-source"></a>
Proporciona `--build-in-source` para compilar el proyecto directamente en la carpeta de origen.  
La opción `--build-in-source` admite los siguientes tiempos de ejecución y métodos de compilación:  
+ **Tiempos de ejecución**: cualquier tiempo de ejecución Node.js compatible con la opción `sam init --runtime`.
+ **Métodos de compilación**: `Makefile`, `esbuild`.
La opción `--build-in-source` no es compatible con las siguientes opciones:  
+ `--hook-name`
+ `--use-container `
*Valor predeterminado*: `--no-build-in-source`

`--cached | --no-cached`  <a name="ref-sam-cli-build-options-cached"></a>
Habilitar o desactivar las compilaciones en caché. Usa esta opción para reutilizar los artefactos de compilación que no hayan cambiado con respecto a compilaciones anteriores. AWS SAM evalúa si ha cambiado algún archivo del directorio del proyecto. De forma predeterminada, las compilaciones no se almacenan en caché. Si se invoca la opción `--no-cached`, anula la configuración `cached = true` de samcofig.toml.  
AWS SAM no evalúa si ha cambiado los módulos de terceros de los que depende su proyecto si no ha proporcionado una versión específica. Por ejemplo, si tu función de Python incluye un `requirements.txt` archivo con la entrada `requests=1.x` y la última versión del módulo de solicitud cambia de `1.1` a`1.2`, AWS SAM no extraerá la última versión hasta que ejecutes una compilación no almacenada en caché.

`--cache-dir`  <a name="ref-sam-cli-build-options-cached-dir"></a>
El directorio en el que se almacenan los artefactos de la caché cuando se especifica `--cached`. El directorio predeterminado de la caché es `.aws-sam/cache`.

`--config-env TEXT`  <a name="ref-sam-cli-build-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="ref-sam-cli-build-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--container-env-var, -e TEXT`  <a name="ref-sam-cli-build-options-container-env-var"></a>
Las variables de entorno que transferir al contenedor de compilaciones. Puedes especificar esta opción varias veces. Cada instancia de esta opción utiliza un par clave-valor, donde la clave es la variable de recurso y entorno, y el valor es el valor de la variable de entorno. Por ejemplo: `--container-env-var Function1.GITHUB_TOKEN=TOKEN1 --container-env-var Function2.GITHUB_TOKEN=TOKEN2`.  
Esta opción solo se aplica si se especifica la opción `--use-container`; de lo contrario, se producirá un error.

`--container-env-var-file, -ef PATH`  <a name="ref-sam-cli-build-options-container-env-var-file"></a>
La ruta y el nombre de un archivo JSON que contiene valores para las variables de entorno del contenedor. Para obtener más información sobre archivos de variable de entorno del contenedor, consulta [Archivo de variables del entorno del contenedor.](serverless-sam-cli-using-build.md#serverless-sam-cli-using-container-environment-file).  
Esta opción solo se aplica si se especifica la opción `--use-container`; de lo contrario, se producirá un error.

`--debug`  <a name="ref-sam-cli-build-options-debug"></a>
Activa el registro de depuración para imprimir los mensajes de depuración que genera la CLI de AWS SAM y para mostrar las marcas temporales.

`--docker-network TEXT`  <a name="ref-sam-cli-build-options-docker-network"></a>
Especifica el nombre o el ID de una red de Docker existente a la que deben conectarse los contenedores de Docker , junto con la red en modo puente predeterminada. Si no se especifica, los contenedores de Lambda se conectan únicamente a la red Docker en modo puente predeterminada.

`--exclude, -x`  <a name="ref-sam-cli-build-options-exclude"></a>
El nombre de los recursos que se van a excluir de `sam build`. Por ejemplo, si tu plantilla contiene `Function1`, `Function2` y `Function3` y usted ejecuta `sam build --exclude Function2`, solo se compilarán `Function1` y `Function3`.

`--help`  <a name="ref-sam-cli-build-options-help"></a>
Muestra este mensaje y sale.

`--hook-name TEXT`  <a name="ref-sam-cli-build-options-hook-name"></a>
El nombre del enlace que se utiliza para ampliar la funcionalidad de la CLI de AWS SAM.  
Valores aceptados: `terraform`.

`--manifest , -m PATH`  <a name="ref-sam-cli-build-options-manifest"></a>
La ruta a un archivo de manifiesto de dependencias personalizado (por ejemplo, package.json) para usarlo en lugar del predeterminado.

`--mount-symlinks`  <a name="ref-sam-cli-build-options-mount-symlinks"></a>
Garantiza que la CLI de AWS SAM siempre monte los enlaces simbólicos que están presentes en los archivos para compilarlos o invocarlos. Esto solo se aplica a los enlaces simbólicos del directorio de nivel superior (es decir, los que se encuentran directamente en la raíz de la función). Por defecto, los enlaces simbólicos no se montan, excepto los necesarios para utilizar `build-in-source` para `node_modules` en NodeJS.

`--no-use-container`  <a name="ref-sam-cli-build-options-no-use-container"></a>
Una opción que permite usar el kit de herramientas de IDE para establecer el comportamiento predeterminado. También puede utilizar `sam build --no-use-container` para ejecutar una compilación en su máquina local en lugar de en un contenedor de Docker.

`--parallel`  <a name="ref-sam-cli-build-options-parallel"></a>
Habilitar compilaciones paralelas. Utilice esta opción para crear las funciones y capas de la AWS SAM plantilla en paralelo. De forma predeterminada, las funciones y las capas se crean en secuencia.

`--parameter-overrides`  <a name="ref-sam-cli-build-options-parameter-overrides"></a>
(Opcional) Una cadena que contiene anulaciones de CloudFormation parámetros codificadas como pares clave-valor. Usa el mismo formato que (). AWS Command Line Interface AWS CLI Por ejemplo: '`ParameterKey`=`KeyPairName`, `ParameterValue`=`MyKey` `ParameterKey`=`InstanceType`, `ParameterValue`=`t1.micro`'. Esta opción no es compatible con `--hook-name`.

`--profile TEXT`  <a name="ref-sam-cli-build-options-profile"></a>
El perfil específico del archivo de credenciales que recibe AWS las credenciales.

`--region TEXT`  <a name="ref-sam-cli-build-options-region"></a>
El en el Región de AWS que se va a implementar. Por ejemplo, us-east-1.

`--save-params`  <a name="ref-sam-cli-build-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--skip-prepare-infra`  <a name="ref-sam-cli-build-options-skip-prepare-infra"></a>
Omite la fase de preparación si no se ha realizado ningún cambio en la infraestructura. Ejecuta con la opción `--hook-name`.

`--skip-pull-image`  <a name="ref-sam-cli-build-options-skip-pull-image"></a>
Especifica si el comando debe omitir la extracción de la última imagen de Docker para el tiempo de ejecución de Lambda.

`--template-file, --template, -t PATH`  <a name="ref-sam-cli-build-options-template-file"></a>
La ruta y el nombre del archivo de AWS SAM plantilla`[default: template.[yaml|yml]]`. Esta opción no es compatible con `--hook-name`.

`--terraform-project-root-path`  <a name="ref-sam-cli-build-options-terraform-project-root-path"></a>
La ruta relativa o absoluta al directorio de nivel superior que contiene los archivos de configuración de Terraform o el código fuente de la función. Si estos archivos se encuentran fuera del directorio que contiene el módulo raíz de Terraform, utilice esta opción para especificar su ruta absoluta o relativa. Esta opción requiere que `--hook-name` se establezca en `terraform`.

`--use-container`, `-u`  <a name="ref-sam-cli-build-options-use-container"></a>
Si las funciones dependen de paquetes que tienen dependencias compiladas de forma nativa, utilice esta opción para crear la función dentro de un contenedor de Docker tipo Lambda.

## Ejemplo
<a name="sam-cli-command-reference-sam-build-examples"></a>

Para ver un ejemplo y un tutorial detallados sobre el uso del subcomando `sam build`, consulte [Introducción a la construcción con AWS SAM](using-sam-cli-build.md).

# sam delete
<a name="sam-cli-command-reference-sam-delete"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam delete`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam delete` comando elimina una AWS SAM aplicación eliminando la CloudFormation pila, los artefactos que se empaquetaron e implementaron en Amazon S3 y Amazon ECR y el archivo de AWS SAM plantilla.

Este comando también comprueba si se ha implementado una pila complementaria de Amazon ECR y, de ser así, solicita al usuario que elimine esa pila y los repositorios de Amazon ECR. Si se especifica `--no-prompts`, las pilas complementarias y los repositorios de Amazon ECR se eliminan de forma predeterminada.

## De uso
<a name="sam-cli-command-reference-sam-delete-usage"></a>

```
$ sam delete <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-delete-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-delete-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor predeterminado es `default`. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-delete-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es `samconfig.toml` en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-delete-options-debug"></a>
Activa el registro de depuración para imprimir el mensaje de depuración que AWS SAMCLI genera y para mostrar las marcas temporales.

`--help`  <a name="sam-cli-command-reference-sam-delete-options-help"></a>
Muestra este mensaje y sale.

`--no-prompts`  <a name="sam-cli-command-reference-sam-delete-options-no-prompts"></a>
Especifique esta opción para que AWS SAM funcione en modo no interactivo. El nombre de la pila debe proporcionarse junto con la opción `--stack-name` o en el archivo de configuración `toml`.

`--profile TEXT`  <a name="sam-cli-command-reference-sam-delete-options-profile"></a>
El perfil específico del archivo de credenciales que recibe AWS las credenciales.

`--region TEXT`  <a name="sam-cli-command-reference-sam-delete-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, us-east-1.

`--s3-bucket`  <a name="sam-cli-command-reference-sam-delete-options-s3-bucket"></a>
La ruta del bucket de Amazon S3 que desea eliminar.

`--s3-prefix`  <a name="sam-cli-command-reference-sam-delete-options-s3-prefix"></a>
El prefijo del bucket de Amazon S3 que desea eliminar.

`--save-params`  <a name="sam-cli-command-reference-sam-delete-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--stack-name TEXT`  <a name="sam-cli-command-reference-sam-delete-options-stack-name"></a>
El nombre de la CloudFormation pila que desea eliminar.

## Ejemplos
<a name="sam-cli-command-reference-sam-delete-examples"></a>

El siguiente comando elimina la pila `MY-STACK`. 

```
$ sam delete --stack-name MY-STACK
```

El siguiente comando elimina la pila `MY-STACK` y el bucket de S3 `sam-s3-demo-bucket`:

```
$ sam delete \
    --stack-name MyStack \
    --s3-bucket MySAMBucket
```

# sam deploy
<a name="sam-cli-command-reference-sam-deploy"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam deploy`.
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam deploy` comando, consulte[Introducción a la implementación con AWS SAM](using-sam-cli-deploy.md).

El `sam deploy` comando despliega una aplicación para el usuario Nube de AWS . AWS CloudFormation

## De uso
<a name="ref-sam-cli-deploy-usage"></a>

```
$ <environment variables> sam deploy <options>
```

## Variables de entorno
<a name="ref-sam-cli-deploy-env"></a>

`SAM_CLI_POLL_DELAY`  <a name="ref-sam-cli-deploy-env-sam-cli-poll-delay"></a>
Establezca la variable de `SAM_CLI_POLL_DELAY` entorno con un valor de segundos en su shell para configurar la frecuencia con la que la CLI de AWS SAM comprueba el estado de la CloudFormation pila, lo cual es útil cuando se ve la aceleración desde. CloudFormation Esta variable de entorno se utiliza para sondear las llamadas a la API `describe_stack`, que se realizan durante la ejecución de `sam deploy`.   
A continuación se muestra un ejemplo de la variable.  

```
$ SAM_CLI_POLL_DELAY=5 sam deploy
```

## Opciones
<a name="ref-sam-cli-deploy-options"></a>

`--capabilities LIST`  <a name="ref-sam-cli-deploy-options-capabilities"></a>
Una lista de capacidades que debe especificar para CloudFormation permitir la creación de determinadas pilas. Algunas plantillas de pila pueden incluir recursos que afectan a sus permisos, por ejemplo Cuenta de AWS, mediante la creación de nuevos usuarios AWS Identity and Access Management (de IAM). Para estas pilas, debe reconocer explícitamente sus capacidades especificando esta opción. Los únicos valores válidos son `CAPABILITY_IAM` y `CAPABILITY_NAMED_IAM`. Si tiene recursos de IAM, puede especificar cualquiera de las dos capacidades. Si tiene recursos de IAM con nombres personalizados, debe especificar `CAPABILITY_NAMED_IAM`. Si no especifica esta opción, la operación devuelve un error `InsufficientCapabilities`.  
Cuando implementa una aplicación que contiene aplicaciones anidadas, debe usar `CAPABILITY_AUTO_EXPAND` para reconocer que la aplicación contiene aplicaciones anidadas. Para obtener más información, consulte [Implementar aplicaciones anidadas](serverless-sam-template-nested-applications.md#serverless-sam-templates-nested-applications-deploying).

`--config-env TEXT`  <a name="ref-sam-cli-deploy-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor predeterminado es `default`. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="ref-sam-cli-deploy-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es `samconfig.toml` en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--confirm-changeset | --no-confirm-changeset`  <a name="ref-sam-cli-deploy-options-confirm-changeset"></a>
Solicita confirmar si la CLI de AWS SAM implementa el conjunto de cambios calculado.

`--debug`  <a name="ref-sam-cli-deploy-options-debug"></a>
Active el registro de depuración para imprimir el mensaje de depuración que la CLI de AWS SAM genera y para mostrar las marcas temporales.

`--disable-rollback | --no-disable-rollback`  <a name="ref-sam-cli-deploy-options-disable-rollback"></a>
Especifique si desea revertir la CloudFormation pila en caso de que se produzca un error durante una implementación. De forma predeterminada, si se produce un error durante una implementación, la CloudFormation pila vuelve al último estado estable. Si especificas `--disable-rollback` y se produce un error durante una implementación, los recursos que se crearon o actualizaron antes de que se produjera el error no se revertirán.

`--fail-on-empty-changeset | --no-fail-on-empty-changeset`  <a name="ref-sam-cli-deploy-options-fail-on-empty-changeset"></a>
Especifica si desea devolver un código de salida distinto de cero si no hay cambios que realizar en la pila. El comportamiento predeterminado es devolver un código de salida distinto de cero.

`--force-upload`  <a name="ref-sam-cli-deploy-options-force-upload"></a>
Especifica esta opción para cargar artefactos incluso si coinciden con los artefactos existentes en el bucket de Amazon S3. Los artefactos coincidentes se sobrescriben.

`--guided, -g`  <a name="ref-sam-cli-deploy-options-guided"></a>
Especifica esta opción para que la CLI de AWS SAM utilice indicaciones que le guíen durante la implementación.

`--help`  <a name="ref-sam-cli-deploy-options-help"></a>
Muestre este mensaje y salga de él.

`--image-repositories TEXT`  <a name="ref-sam-cli-deploy-options-image-repositories"></a>
Un mapeo de funciones a su URI del repositorio de Amazon ECR. Haga referencia a las funciones por su ID lógico. A continuación, se muestra un ejemplo:  

```
$ sam deploy --image-repositories Function1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repo
```
Puede especificar esta opción varias veces con un solo comando.

`--image-repository TEXT`  <a name="ref-sam-cli-deploy-options-image-repository"></a>
El nombre del repositorio de Amazon ECR en el que este comando carga la imagen de la función. Esta opción es necesaria para las funciones declaradas con el tipo de paquete `Image`.

`--kms-key-id TEXT`  <a name="ref-sam-cli-deploy-options-kms-key-id"></a>
El ID de una clave AWS Key Management Service (AWS KMS) que se utiliza para cifrar los artefactos que se encuentran en reposo en el bucket de Amazon S3. Si no especifica esta opción, utilizará claves de cifrado administradas por Amazon S3. AWS SAM 

`--metadata`  <a name="ref-sam-cli-deploy-options-metadata"></a>
Un mapa de metadatos para adjuntar a todos los artefactos a los que se hace referencia en la plantilla.

`--no-execute-changeset`  <a name="ref-sam-cli-deploy-options-no-execute-changeset"></a>
Indica si se debe aplicar el conjunto de cambios. Especifica esta opción si desea ver los cambios de la pila antes de aplicar el conjunto de cambios. Este comando crea un conjunto de cambios CloudFormation y, a continuación, se cierra sin aplicar el conjunto de cambios. Para aplicar el conjunto de cambios, ejecuta el mismo comando sin esta opción.

`--no-progressbar`  <a name="ref-sam-cli-deploy-options-no-progressbar"></a>
No muestre una barra de progreso al cargar artefactos en Amazon S3.

`--notification-arns LIST`  <a name="ref-sam-cli-deploy-options-notification-arns"></a>
Una lista de los ARNs temas del Amazon Simple Notification Service (Amazon SNS) asociados a la CloudFormation pila.

`--on-failure [ROLLBACK | DELETE | DO_NOTHING]`  <a name="ref-sam-cli-deploy-options-on-failure"></a>
Especifica la acción que se debe realizar cuando no se pueda crear una pila.  
Están disponibles las siguientes opciones:  
+ `ROLLBACK`: hace retroceder la pila a un estado válido conocido anteriormente.
+ `DELETE`: hace retroceder la pila a un estado válido conocido anteriormente, si es que existe alguno. De lo contrario, elimina la pila.
+ `DO_NOTHING`: no revierte ni elimina la pila. El efecto es el mismo que el de `--disable-rollback`.
El comportamiento predeterminado es `ROLLBACK`.  
Especifica la opción `--disable-rollback` o la `--on-failure`, pero no ambas.

`--parameter-overrides LIST`  <a name="ref-sam-cli-deploy-options-parameter-overrides"></a>
Cadena que contiene anulaciones de CloudFormation parámetros codificadas como pares clave-valor. Cada anulación usa el formato `ParameterKey=name,ParameterValue=value`. Las anulaciones múltiples están separadas por espacios. A continuación, se incluyen dos ejemplos:  

```
$ sam deploy --parameter-overrides ParameterKey=value1,ParameterValue=value2
```

```
$ sam deploy --parameter-overrides ParameterKey=value1,ParameterValue=value2 ParameterKey=hello,ParameterValue=world ParameterKey=apple,ParameterValue=banana
```

`--profile TEXT`  <a name="ref-sam-cli-deploy-options-profile"></a>
El perfil específico del archivo de credenciales que recibe las credenciales. AWS 

`--region TEXT`  <a name="ref-sam-cli-deploy-options-region"></a>
El en el Región de AWS que se va a implementar. Por ejemplo, us-east-1.

`--resolve-image-repos`  <a name="ref-sam-cli-deploy-options-resolve-image-repos"></a>
Crea automáticamente repositorios de Amazon ECR para usarlos en el empaquetado y la implementación de implementaciones no guiadas. Esta opción solo se aplica a funciones y capas con la especificación `PackageType: Image`. Si especificas la opción `--guided`, entonces la CLI de AWS SAM ignora `--resolve-image-repos`.  
Si crea AWS SAM automáticamente cualquier repositorio de Amazon ECR para funciones o capas con esta opción y, posteriormente, elimina esas funciones o capas de la AWS SAM plantilla, los repositorios de Amazon ECR correspondientes se eliminarán automáticamente.

`--resolve-s3`  <a name="ref-sam-cli-deploy-options-resolve-s3"></a>
Crea automáticamente un bucket de Amazon S3 para utilizarlo en el empaquetado y la implementación de implementaciones no guiadas. Si especificas la opción `--guided`, entonces la CLI AWS SAM ignora `--resolve-s3`. Si especificas las opciones `--s3-bucket` y `--resolve-s3`, entonces se produce un error.

`--role-arn TEXT`  <a name="ref-sam-cli-deploy-options-role-arn"></a>
El nombre de recurso de Amazon (ARN) de una función de IAM que se CloudFormation asume al aplicar el conjunto de cambios.

`--s3-bucket TEXT`  <a name="ref-sam-cli-deploy-options-s3-bucket"></a>
El nombre del bucket de Amazon S3 en el que este comando carga la CloudFormation plantilla. Si la plantilla tiene más de 51 200 bytes, es necesaria la opción `--s3-bucket` o la opción `--resolve-s3`. Si especificas ambas opciones `--s3-bucket` y `--resolve-s3`, se producirá un error.

`--s3-prefix TEXT`  <a name="ref-sam-cli-deploy-options-s3-prefix"></a>
El prefijo que se ha añadido a los nombres de los artefactos que se cargan en el bucket de Amazon S3. El nombre del prefijo es un nombre de ruta (nombre de la carpeta) del bucket de Amazon S3.

`--save-params`  <a name="ref-sam-cli-deploy-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo de AWS SAM configuración.

`--signing-profiles LIST`  <a name="ref-sam-cli-deploy-options-signing-profiles"></a>
La lista de perfiles de firma con los que firmar los paquetes de implementación. Esta opción utiliza una lista de pares clave-valor, donde la clave es el nombre de la función o capa que se va a firmar y el valor es el perfil de firma, con un propietario del perfil opcional delimitado con `:`. Por ejemplo, `FunctionNameToSign=SigningProfileName1 LayerNameToSign=SigningProfileName2:SigningProfileOwner`.

`--stack-name TEXT`  <a name="ref-sam-cli-deploy-options-stack-name"></a>
(Obligatorio) El nombre de la CloudFormation pila en la que se va a realizar la implementación. Si especificas una pila existente, el comando la actualiza. Si especificas una nueva pila, el comando la crea.

`--tags LIST`  <a name="ref-sam-cli-deploy-options-tags"></a>
Una lista de etiquetas para asociarlas a la pila que se crea o actualiza. CloudFormation también propaga estas etiquetas a los recursos de la pila que las admiten.

`--template-file, --template, -t PATH`  <a name="ref-sam-cli-deploy-options-template-file"></a>
La ruta y el nombre del archivo donde se encuentra la AWS SAM plantilla.  
Si especifica esta opción, solo se AWS SAM despliega la plantilla y los recursos locales a los que apunta.

`--use-json`  <a name="ref-sam-cli-deploy-options-use-json"></a>
Genera JSON para la CloudFormation plantilla. El resultado predeterminado es YAML.

## Ejemplo
<a name="sam-cli-command-reference-sam-deploy-examples"></a>

Para ver un ejemplo y un tutorial detallados sobre el uso del subcomando `sam deploy`, consulte [Introducción a la implementación con AWS SAM](using-sam-cli-deploy.md).

# sam init
<a name="sam-cli-command-reference-sam-init"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam init`.
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam init` comando, consulte[Crea tu aplicación en AWS SAM](using-sam-cli-init.md).

El comando `sam init` proporciona opciones para inicializar una nueva aplicación sin servidor.

## De uso
<a name="sam-cli-command-reference-sam-init-usage"></a>

```
$ sam init <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-init-options"></a>

`--app-template TEXT`  <a name="sam-cli-command-reference-sam-init-options-app-template"></a>
El identificador de la plantilla de la aplicación gestionada que recomendamos utilizar. Si no está seguro, llame a `sam init` sin opciones para disfrutar de un flujo de trabajo interactivo.  
Este parámetro es obligatorio si se especifica `--no-interactive`, y `--location` si no se proporciona.  
Esta característica solo está disponible en la versión 0.30.0 o posterior de la CLIde AWS SAM. Si se especifica este parámetro con una versión anterior, se produce un error.

`--application-insights | --no-application-insights`  <a name="sam-cli-command-reference-sam-init-options-application-insights"></a>
 Active la supervisión de Amazon CloudWatch Application Insights para su aplicación. Para obtener más información, consulte [Uso de CloudWatch Application Insights para monitorear sus aplicaciones AWS SAM sin servidor](monitor-app-insights.md).   
 La opción predeterminada es `--no-application-insights`. 

`--architecture, -a [ x86_64 | arm64 ]`  <a name="sam-cli-command-reference-sam-init-options-architecture"></a>
La arquitectura del conjunto de instrucciones para las funciones de Lambda de la aplicación. Especifica una de las siguientes opciones: `x86_64` o `arm64`

`--base-image [ amazon/dotnet8-base | amazon/dotnet6-base | amazon/java25-base | amazon/java21-base | amazon/java17-base | amazon/java11-base | amazon/nodejs24.x-base | amazon/nodejs22.x-base | amazon/nodejs20.x-base | amazon/nodejs18.x-base | amazon/nodejs16.x-base | amazon/python3.14-base | amazon/python3.13-base | amazon/python3.12-base | amazon/python3.11-base | amazon/python3.10-base | amazon/python3.9-base | amazon/python3.8-base | amazon/ruby3.4-base | amazon/ruby3.3-base | amazon/ruby3.2-base ]`  <a name="sam-cli-command-reference-sam-init-options-base-image"></a>
La imagen base de su aplicación. Esta opción solo se aplica cuando el tipo de paquete es `Image`.  
Este parámetro es obligatorio si `--no-interactive` se especifica, `--package-type` se especifica como `Image` y `--location` no se especifica.

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-init-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-init-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor predeterminado es «samconfig.toml» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-init-options-debug"></a>
Activa el registro de depuración para imprimir los mensajes de depuración que genera la AWS SAM de CLI y para mostrar las marcas temporales.

`--dependency-manager, -d [ gradle | mod | maven | bundler | npm | cli-package | pip ]`  <a name="sam-cli-command-reference-sam-init-options-dependency-manager"></a>
El administrador de dependencias de su tiempo de ejecución de Lambda.

`--extra-content`  <a name="sam-cli-command-reference-sam-init-options-extra-content"></a>
Anule cualquier parámetro personalizado de la configuración `cookiecutter.json` de la plantilla, por ejemplo, `{"customParam1": "customValue1", "customParam2":"customValue2"}`.

`--help, -h`  <a name="sam-cli-command-reference-sam-init-options-help"></a>
Muestra este mensaje y sale.

`--location, -l TEXT`  <a name="sam-cli-command-reference-sam-init-options-location"></a>
La ubicación de la plantilla o aplicación (Git, Mercurial, HTTP/HTTPS, archivo.zip, ruta).  
Este parámetro es obligatorio si se especifica `--no-interactive`, `--runtime` o `--name`, y `--app-template` si no se proporciona.  
Para los repositorios Git, debe usar la ubicación de la raíz del repositorio.  
Para las rutas locales, la plantilla debe estar en formato de archivo.zip o [Cookiecutter](https://cookiecutter.readthedocs.io/en/latest/README.html).

`--name, -n TEXT`  <a name="sam-cli-command-reference-sam-init-options-name"></a>
El nombre del proyecto que se generará como un directorio.  
Este parámetro es obligatorio si se especifica `--no-interactive`, y `--location` si no se proporciona.

`--no-input`  <a name="sam-cli-command-reference-sam-init-options-no-input"></a>
Desactiva las solicitudes de Cookiecutter y acepta los valores vcfdefault que se definen en la configuración de plantilla.

`--no-interactive`  <a name="sam-cli-command-reference-sam-init-options-no-interactive"></a>
Deshabilita la solicitud interactiva para los parámetros de inicio y falla si falta algún valor obligatorio.

`--output-dir, -o PATH`  <a name="sam-cli-command-reference-sam-init-options-output-dir"></a>
La ubicación en la que se muestra la aplicación inicializada.

`--package-type [ Zip | Image ]`  <a name="sam-cli-command-reference-sam-init-options-package-type"></a>
El tipo de paquete de la aplicación de ejemplo. `Zip` crea un archivo .zip y `Image` crea una imagen del contenedor.

`--runtime, -r [ dotnet8 | dotnet6 | java25 | java21 | java17 | java11 | nodejs24.x | nodejs22.x | nodejs20.x | nodejs18.x | nodejs16.x | python3.14 | python3.13 | python3.12 | python3.11 | python3.10 | python3.9 | python3.8 | ruby3.4 | ruby3.3 | ruby3.2 ]`  <a name="sam-cli-command-reference-sam-init-options-runtime"></a>
El tiempo de ejecución Lambda de su aplicación. Esta opción solo se aplica cuando el tipo de paquete es `Zip`.  
Este parámetro es obligatorio si `--no-interactive` se especifica, `--package-type` se especifica como `Zip` y `--location` no se especifica.

`--save-params`  <a name="sam-cli-command-reference-sam-init-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--tracing | --no-tracing`  <a name="sam-cli-command-reference-sam-init-options-tracing"></a>
Active el AWS X-Ray rastreo para sus funciones Lambda.

## Ejemplo
<a name="sam-cli-command-reference-sam-init-examples"></a>

Para ver un ejemplo y un tutorial detallados sobre el uso del subcomando `sam init`, consulte [Crea tu aplicación en AWS SAM](using-sam-cli-init.md).

# sam list
<a name="sam-cli-command-reference-sam-list"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam list`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El comando `sam list` genera información importante sobre los recursos de la aplicación sin servidor y el estado de la aplicación sin servidor. Usa **sam list** antes y después de la implementación para ayudar durante el desarrollo local y en la nube.

## De uso
<a name="sam-cli-command-reference-sam-list-usage"></a>

```
$ sam list <options> <subcommand>
```

## Opciones
<a name="sam-cli-command-reference-sam-list-options"></a>

`--help, -h`  <a name="sam-cli-command-reference-sam-list-options-help"></a>
Muestre este mensaje y salga de él.

## Subcomandos
<a name="sam-cli-command-reference-sam-list-subcommands"></a>

`endpoints`  <a name="sam-cli-command-reference-sam-list-subcommands-endpoints"></a>
Muestra una lista de puntos finales locales y en la nube de su CloudFormation pila. Para obtener más información, consulte [sam list endpoints](sam-cli-command-reference-sam-list-endpoints.md).

`resources`  <a name="sam-cli-command-reference-sam-list-subcommands-resources"></a>
Muestra los recursos de tu plantilla AWS Serverless Application Model (AWS SAM) que se crean en el AWS CloudFormation momento de la implementación. Para obtener más información, consulte [sam list resources](sam-cli-command-reference-sam-list-resources.md).

`stack-outputs`  <a name="sam-cli-command-reference-sam-list-subcommands-stack-outputs"></a>
Muestra los resultados de la CloudFormation pila a partir de una CloudFormation plantilla AWS SAM o. Para obtener más información, consulte [sam list stack-outputs](sam-cli-command-reference-sam-list-stack-outputs.md).

# sam list endpoints
<a name="sam-cli-command-reference-sam-list-endpoints"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam list endpoints` subcomando Command Line Interface (AWS SAMCLI).

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam list endpoints` subcomando muestra una lista de puntos finales locales y en la nube de su CloudFormation pila. Puede interactuar con estos recursos mediante los comandos **sam local** y **sam sync**.

AWS Lambda y los tipos de recursos de Amazon API Gateway son compatibles con este comando.

**nota**  
Los dominios personalizados se admiten cuando se configuran para sus recursos de Amazon API Gateway. Este comando generará el dominio personalizado en lugar del punto de conexión predeterminado.

## De uso
<a name="sam-cli-command-reference-sam-list-endpoints-usage"></a>

```
$ sam list endpoints <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-list-endpoints-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-list-endpoints-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar.  
*Valor predeterminado:* `default`  
Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file TEXT`  <a name="sam-cli-command-reference-sam-list-endpoints-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar.  
*Valor predeterminado*: `samconfig.toml` en el directorio de trabajo actual.  
Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-list-endpoints-options-debug"></a>
Active el registro de depuración para imprimir los mensajes de depuración generados por el AWS SAMCLI con marcas temporales.

`--help, -h`  <a name="sam-cli-command-reference-sam-list-endpoints-options-help"></a>
Muestre este mensaje y salga de él.

`--output [json|table]`  <a name="sam-cli-command-reference-sam-list-endpoints-options-output"></a>
Especifica el formato de salida de los resultados.  
*Valor predeterminado:* `table`

`--profile TEXT`  <a name="sam-cli-command-reference-sam-list-endpoints-options-profile"></a>
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--region TEXT`  <a name="sam-cli-command-reference-sam-list-endpoints-options-region"></a>
Defina la AWS región del servicio. Por ejemplo, `us-east-1`.

`--save-params`  <a name="sam-cli-command-reference-sam-list-endpoints-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--stack-name TEXT`  <a name="sam-cli-command-reference-sam-list-endpoints-options-stack-name"></a>
Nombre de la CloudFormation pila implementada. El nombre de la pila se encuentra en el archivo de la aplicación o en el archivo de configuración `samconfig.toml` designado.  
Si no se especifica esta opción, se mostrarán los recursos locales definidos en la plantilla.

`--template-file, --template, -t PATH`  <a name="sam-cli-command-reference-sam-list-endpoints-options-template"></a>
AWS SAM archivo de plantilla.  
*Valor predeterminado:* `template.[yaml|yml|json]`

## Ejemplos
<a name="sam-cli-command-reference-sam-list-endpoints-examples"></a>

Muestre una salida, en formato json, de los puntos finales de recursos implementados de su CloudFormation pila con el nombre`test-stack`.

```
$ sam list endpoints --stack-name test-stack --output json
			
[
  {
    "LogicalResourceId": "HelloWorldFunction",
    "PhysicalResourceId": "sam-app-test-list-HelloWorldFunction-H85Y7yIV7ZLq",
    "CloudEndpoint": "https://zt55oi7kbljxjmcoahsj3cknwu0rposq.lambda-url.us-east-1.on.aws/",
    "Methods": "-"
  },
  {
    "LogicalResourceId": "ServerlessRestApi",
    "PhysicalResourceId": "uj80uoe2o2",
    "CloudEndpoint": [
      "https://uj80uoe2o2.execute-api.us-east-1.amazonaws.com/Prod",
      "https://uj80uoe2o2.execute-api.us-east-1.amazonaws.com/Stage"
    ],
    "Methods": [
      "/hello['get']"
    ]
  }
]
```

# sam list resources
<a name="sam-cli-command-reference-sam-list-resources"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam list resources` subcomando Command Line Interface (AWS SAMCLI).

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam list resources` subcomando muestra los recursos de la plantilla AWS Serverless Application Model (AWS SAM) que se crean AWS CloudFormation mediante la AWS SAM transformación en el momento del despliegue.

**sam list resources**Utilícelo con una AWS SAM plantilla antes del despliegue para ver los recursos que se crearán. Proporcione un nombre de CloudFormation pila para ver una lista consolidada que incluya los recursos desplegados.

**nota**  
Para generar una lista de recursos a partir de la AWS SAM plantilla, se realiza una transformación local de la plantilla. En esta lista se incluyen los recursos que se implementarán con determinadas condiciones, por ejemplo, en una región específica.

## De uso
<a name="sam-cli-command-reference-sam-list-resources-usage"></a>

```
$ sam list resources <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-list-resources-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-list-resources-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar.  
*Valor predeterminado:* `default`  
Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file TEXT`  <a name="sam-cli-command-reference-sam-list-resources-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar.  
*Valor predeterminado*: `samconfig.toml` en el directorio de trabajo actual.  
Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-list-resources-options-debug"></a>
Active el registro de depuración para imprimir los mensajes de depuración generados por el AWS SAMCLI con marcas temporales.

`--help, -h`  <a name="sam-cli-command-reference-sam-list-resources-options-help"></a>
Muestre este mensaje y salga de él.

`--output [json|table]`  <a name="sam-cli-command-reference-sam-list-resources-options-output"></a>
Especifica el formato de salida de los resultados.  
*Valor predeterminado:* `table`

`--profile TEXT`  <a name="sam-cli-command-reference-sam-list-resources-options-profile"></a>
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--region TEXT`  <a name="sam-cli-command-reference-sam-list-resources-options-region"></a>
Defina la AWS región del servicio. Por ejemplo, `us-east-1`.

`--save-params`  <a name="sam-cli-command-reference-sam-list-resources-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--stack-name TEXT`  <a name="sam-cli-command-reference-sam-list-resources-options-stack-name"></a>
Nombre de la CloudFormation pila implementada. El nombre de la pila se encuentra en el archivo de la aplicación o en el archivo de configuración `samconfig.toml` designado.  
Cuando se proporcione, la lógica IDs de recursos de la plantilla se asignará a su entrada física IDs correspondiente. CloudFormation Para obtener más información sobre la física IDs, consulte [los campos de recursos](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-resource-fields) en la *Guía del AWS CloudFormation usuario*.  
Si no se especifica esta opción, se mostrarán los recursos locales definidos en la plantilla.

`--template-file, --template, -t PATH`  <a name="sam-cli-command-reference-sam-list-resources-options-"></a>
AWS SAM archivo de plantilla.  
*Valor predeterminado:* `template.[yaml|yml|json]`

## Ejemplos
<a name="sam-cli-command-reference-sam-list-resources-examples"></a>

Muestra una salida, en formato de tabla, de los recursos locales de tu AWS SAM plantilla y de los recursos desplegados de tu CloudFormation pila denominada`test-stack`. Se ejecuta en el mismo directorio que la plantilla local.

```
$ sam list resources --stack-name test-stack --output table
			
-------------------------------------------------------------------------------------------------------------------------
Logical ID                                                   Physical ID
-------------------------------------------------------------------------------------------------------------------------
HelloWorldFunction                                           sam-app-test-list-HelloWorldFunction-H85Y7yIV7ZLq
HelloWorldFunctionHelloWorldPermissionProd                   sam-app-test-list-
                                                             HelloWorldFunctionHelloWorldPermissionProd-1QH7CPOCBL2IK
HelloWorldFunctionRole                                       sam-app-test-list-HelloWorldFunctionRole-SRJDMJ6F7F41
ServerlessRestApi                                            uj80uoe2o2
ServerlessRestApiDeployment47fc2d5f9d                        pncw5f
ServerlessRestApiProdStage                                   Prod
ServerlessRestApiDeploymentf5716dc08b                        -
-------------------------------------------------------------------------------------------------------------------------
```

# sam list stack-outputs
<a name="sam-cli-command-reference-sam-list-stack-outputs"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam list stack-outputs` subcomando Command Line Interface (AWS SAMCLI).

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam list stack-outputs` subcomando muestra los resultados de la AWS CloudFormation pila a partir de un AWS Serverless Application Model (AWS SAM) o una CloudFormation plantilla. Para obtener más información sobre `Outputs`, consulta [Salidas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/outputs-section-structure.html) en la *Guía del usuario de AWS CloudFormation *.

## De uso
<a name="sam-cli-command-reference-sam-list-stack-outputs-usage"></a>

```
$ sam list stack-outputs <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-list-stack-outputs-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar.  
*Valor predeterminado:* `default`  
Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file TEXT`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar.  
*Valor predeterminado*: `samconfig.toml` en el directorio de trabajo actual.  
Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-debug"></a>
Active el registro de depuración para imprimir los mensajes de depuración generados por el AWS SAMCLI con marcas temporales.

`--help, -h`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-help"></a>
Muestre este mensaje y salga de él.

`--output [json|table]`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-output"></a>
Especifica el formato de salida de los resultados.  
*Valor predeterminado:* `table`

`--profile TEXT`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-profile"></a>
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--region TEXT`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-region"></a>
Defina la AWS región del servicio. Por ejemplo, `us-east-1`.

`--save-params`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--stack-name TEXT`  <a name="sam-cli-command-reference-sam-list-stack-outputs-options-"></a>
Nombre de la CloudFormation pila implementada. El nombre de la pila se encuentra en el archivo de la aplicación o en el archivo de configuración `samconfig.toml` designado.  
Esta opción es obligatoria.

## Ejemplos
<a name="sam-cli-command-reference-sam-list-stack-outputs-examples"></a>

Muestra los resultados, en formato de tabla, de los recursos nombrados en la CloudFormation pila`test-stack`.

```
$ sam list stack-outputs --stack-name test-stack --output table
			
------------------------------------------------------------------------------------------------------------------------
OutputKey                                OutputValue                              Description
------------------------------------------------------------------------------------------------------------------------
HelloWorldFunctionIamRole                arn:aws:iam::account-number:role/sam-      Implicit IAM Role created for Hello
                                         app-test-list-HelloWorldFunctionRole-    World function
                                         SRJDMJ6F7F41
HelloWorldApi                            https://uj80uoe2o2.execute-api.us-       API Gateway endpoint URL for Prod
                                         east-1.amazonaws.com/Prod/hello/         stage for Hello World function
HelloWorldFunction                       arn:aws:lambda:us-                       Hello World Lambda Function ARN
                                         east-1:account-number:function:sam-app-
                                         test-list-
                                         HelloWorldFunction-H85Y7yIV7ZLq
------------------------------------------------------------------------------------------------------------------------
```

# sam local callback
<a name="sam-cli-command-reference-sam-local-callback"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam local callback`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam local callback` comando permite enviar llamadas a la ejecución local de funciones duraderas durante el desarrollo y las pruebas.

## De uso
<a name="sam-cli-command-reference-sam-local-callback-usage"></a>

```
$ sam local callback <subcommand> <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-local-callback-options"></a>

`--help, -h`  <a name="sam-cli-command-reference-sam-local-callback-options-help"></a>
Muestre este mensaje y salga de él.

## Subcomandos
<a name="sam-cli-command-reference-sam-local-callback-subcommands"></a>

`succeed`  <a name="sam-cli-command-reference-sam-local-callback-subcommands-succeed"></a>
Envíe una llamada de éxito a la ejecución de una función duradera. Para obtener más información, consulte [sam local callback succeed](sam-cli-command-reference-sam-local-callback-succeed.md).

`fail`  <a name="sam-cli-command-reference-sam-local-callback-subcommands-fail"></a>
Envíe una llamada de error a la ejecución de una función duradera. Para obtener más información, consulte [sam local callback fail](sam-cli-command-reference-sam-local-callback-fail.md).

`heartbeat`  <a name="sam-cli-command-reference-sam-local-callback-subcommands-heartbeat"></a>
Envíe una llamada rápida a la ejecución de una función duradera. Para obtener más información, consulte [sam local callback heartbeat](sam-cli-command-reference-sam-local-callback-heartbeat.md).

# sam local callback succeed
<a name="sam-cli-command-reference-sam-local-callback-succeed"></a>

Envíe una llamada de éxito a la ejecución de una función duradera.

## De uso
<a name="ref-sam-cli-local-callback-succeed-usage"></a>

```
$ sam local callback succeed CALLBACK_ID [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-local-callback-succeed-arguments"></a>

`CALLBACK_ID`  
El identificador único de la devolución de llamada a la que se debe enviar una respuesta correcta.

## Opciones
<a name="ref-sam-cli-local-callback-succeed-options"></a>

`-r, --result TEXT`  
El resultado fue exitoso: carga útil como cadena.

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-local-callback-succeed-examples"></a>

Enviar una llamada de éxito sin resultado:

```
$ sam local callback succeed my-callback-id
```

Envía una llamada de confirmación con el resultado:

```
$ sam local callback succeed my-callback-id --result 'Task completed successfully'
```

Envía una llamada de éxito con una opción corta:

```
$ sam local callback succeed my-callback-id -r 'Success result'
```

# sam local callback fail
<a name="sam-cli-command-reference-sam-local-callback-fail"></a>

Envía una llamada de error a la ejecución de una función duradera.

## De uso
<a name="ref-sam-cli-local-callback-fail-usage"></a>

```
$ sam local callback fail CALLBACK_ID [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-local-callback-fail-arguments"></a>

`CALLBACK_ID`  
El identificador único de la devolución de llamada a la que se va a enviar una respuesta de error.

## Opciones
<a name="ref-sam-cli-local-callback-fail-options"></a>

`--error-data TEXT`  
Datos de error adicionales.

`--stack-trace TEXT`  
Apila las entradas de rastreo. Esta opción se puede especificar varias veces.

`--error-type TEXT`  
Tipo de error.

`--error-message TEXT`  
Mensaje de error detallado.

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-local-callback-fail-examples"></a>

Envía una llamada de error sin parámetros:

```
$ sam local callback fail my-callback-id
```

Envía una llamada de error con un mensaje de error:

```
$ sam local callback fail my-callback-id --error-message 'Task failed'
```

Envía una llamada de error con todos los parámetros:

```
$ sam local callback fail my-callback-id --error-message 'Task failed' --error-type 'ValidationError' --stack-trace 'at line 42' --error-data '{"code": 500}'
```

# sam local callback heartbeat
<a name="sam-cli-command-reference-sam-local-callback-heartbeat"></a>

Envíe una llamada de latido a la ejecución de una función duradera.

## De uso
<a name="ref-sam-cli-local-callback-heartbeat-usage"></a>

```
$ sam local callback heartbeat CALLBACK_ID [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-local-callback-heartbeat-arguments"></a>

`CALLBACK_ID`  
El identificador único de la devolución de llamada a la que se va a enviar un latido.

## Opciones
<a name="ref-sam-cli-local-callback-heartbeat-options"></a>

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-local-callback-heartbeat-examples"></a>

Enviar una llamada de latido:

```
$ sam local callback heartbeat my-callback-id
```

# sam local execution
<a name="sam-cli-command-reference-sam-local-execution"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam local execution`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam local execution` comando permite gestionar e inspeccionar las ejecuciones locales de funciones duraderas durante el desarrollo y las pruebas.

**nota**  
Es posible que estos comandos no requieran acceso a AWS las credenciales.

## De uso
<a name="sam-cli-command-reference-sam-local-execution-usage"></a>

```
$ sam local execution <subcommand> <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-local-execution-options"></a>

`--help, -h`  <a name="sam-cli-command-reference-sam-local-execution-options-help"></a>
Muestre este mensaje y salga de él.

## Subcomandos
<a name="sam-cli-command-reference-sam-local-execution-subcommands"></a>

`get`  <a name="sam-cli-command-reference-sam-local-execution-subcommands-get"></a>
Obtenga detalles de la ejecución de una función duradera. Para obtener más información, consulte [sam local execution get](sam-cli-command-reference-sam-local-execution-get.md).

`history`  <a name="sam-cli-command-reference-sam-local-execution-subcommands-history"></a>
Obtenga el historial de ejecución de una función duradera. Para obtener más información, consulte [sam local execution history](sam-cli-command-reference-sam-local-execution-history.md).

`stop`  <a name="sam-cli-command-reference-sam-local-execution-subcommands-stop"></a>
Detenga la ejecución duradera de una función. Para obtener más información, consulte [sam local execution stop](sam-cli-command-reference-sam-local-execution-stop.md).

# sam local execution get
<a name="sam-cli-command-reference-sam-local-execution-get"></a>

Recupera los detalles de la ejecución de una función duradera específica.

**nota**  
Es posible que este comando no requiera acceso a AWS las credenciales.

## De uso
<a name="ref-sam-cli-local-execution-get-usage"></a>

```
$ sam local execution get DURABLE_EXECUTION_ARN [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-local-execution-get-arguments"></a>

`DURABLE_EXECUTION_ARN`  
El nombre del recurso de Amazon (ARN) de la ejecución de la función duradera de la que se van a recuperar los detalles.

## Opciones
<a name="ref-sam-cli-local-execution-get-options"></a>

`--format [summary|json]`  
Formato de salida. Valor predeterminado: `summary`

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-local-execution-get-examples"></a>

Obtenga los detalles de la ejecución con el formato de resumen predeterminado:

```
$ sam local execution get arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id
```

Obtenga los detalles de la ejecución en formato JSON:

```
$ sam local execution get arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id --format json
```

# sam local execution history
<a name="sam-cli-command-reference-sam-local-execution-history"></a>

Obtenga el historial de ejecución de una función duradera.

## De uso
<a name="ref-sam-cli-local-execution-history-usage"></a>

```
$ sam local execution history EXECUTION_ID [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-local-execution-history-arguments"></a>

`EXECUTION_ID`  
El identificador único de la ejecución duradera de la función de la que se va a recuperar el historial.

## Opciones
<a name="ref-sam-cli-local-execution-history-options"></a>

`--format [table|json]`  
Formato de salida. Valor predeterminado: `table`

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-local-execution-history-examples"></a>

Obtenga el historial de ejecuciones en formato de tabla:

```
$ sam local execution history my-execution-id
```

Obtenga el historial de ejecuciones en formato JSON:

```
$ sam local execution history my-execution-id --format json
```

# sam local execution stop
<a name="sam-cli-command-reference-sam-local-execution-stop"></a>

Detenga la ejecución de una función duradera en ejecución.

**nota**  
Es posible que este comando no requiera acceso a AWS las credenciales.

## De uso
<a name="ref-sam-cli-local-execution-stop-usage"></a>

```
$ sam local execution stop DURABLE_EXECUTION_ARN [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-local-execution-stop-arguments"></a>

`DURABLE_EXECUTION_ARN`  
El nombre del recurso de Amazon (ARN) de la ejecución duradera de la función que se va a detener.

## Opciones
<a name="ref-sam-cli-local-execution-stop-options"></a>

`--error-message TEXT`  
Mensaje de error asociado a la ejecución detenida.

`--error-type TEXT`  
Tipo de error que se va a asociar a la ejecución detenida.

`--error-data TEXT`  
Datos de error que se van a asociar a la ejecución detenida.

`--stack-trace TEXT`  
Apila las entradas de rastreo. Esta opción se puede especificar varias veces.

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-local-execution-stop-examples"></a>

Detenga la ejecución sin detalles del error:

```
$ sam local execution stop arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id
```

Detenga la ejecución con un mensaje de error y escriba:

```
$ sam local execution stop arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id --error-message "Execution cancelled" --error-type "UserCancellation"
```

Detenga la ejecución con todos los detalles del error y el seguimiento de la pila:

```
$ sam local execution stop arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id --error-message "Task failed" --error-type "TaskFailure" --error-data '{"reason":"timeout"}' --stack-trace "at function1()" --stack-trace "at function2()"
```

# sam local generate-event
<a name="sam-cli-command-reference-sam-local-generate-event"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam local generate-event` subcomando de la interfaz de línea de comandos (AWS SAMCLI).
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam local generate-event` comando, consulte[Introducción a las pruebas con sam local generate-event](using-sam-cli-local-generate-event.md).

El subcomando `sam local generate-event` genera muestras de carga útil de eventos para los Servicios de AWS compatibles.

## De uso
<a name="ref-sam-cli-local-generate-event-usage"></a>

```
$ sam local generate-event <options> <service> <event> <event-options>
```

## Opciones
<a name="ref-sam-cli-local-generate-event-options"></a>

`--config-env TEXT`  <a name="ref-sam-cli-local-generate-event-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="ref-sam-cli-local-generate-event-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es `samconfig.toml` en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--help`  <a name="ref-sam-cli-local-generate-event-options-help"></a>
Muestra este mensaje y sale.

## Servicio
<a name="ref-sam-cli-local-generate-event-service"></a>

Para ver una lista de los servicios compatibles, ejecuta lo siguiente:

```
$ sam local generate-event
```

## Event
<a name="ref-sam-cli-local-generate-event-event"></a>

Para ver una lista de los eventos compatibles que se pueden generar para cada servicio, ejecuta lo siguiente:

```
$ sam local generate-event <service>
```

## Opciones de eventos
<a name="ref-sam-cli-local-generate-event-event-options"></a>

Para ver una lista de las opciones de eventos compatibles que puede modificar, ejecuta lo siguiente:

```
$ sam local generate-event <service> <event> --help
```

## Ejemplos
<a name="sam-cli-command-reference-sam-local-generate-event-examples"></a>

Para ver ejemplos sobre el uso del subcomando `sam local generate-event`, consulte [Generar eventos de ejemplo](using-sam-cli-local-generate-event.md#using-sam-cli-local-generate-event-generate).

# sam local invoke
<a name="sam-cli-command-reference-sam-local-invoke"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam local invoke` subcomando de la interfaz de línea de comandos (AWS SAMCLI).
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam local invoke` subcomando, consulte[Introducción a las pruebas con sam local invoke](using-sam-cli-local-invoke.md).

El `sam local invoke` subcomando inicia una invocación única de una función de forma local. AWS Lambda 

**nota**  
No se recomienda utilizar las capacidades de invocación local de la CLI de SAM en código que no sea de confianza. Para tener un aislamiento completo del entorno local, ejecute el código directamente en el servicio Lambda.

**nota**  
Para que las funciones sean duraderas, `sam local invoke` admite la ejecución automática con puntos de control y reproducción automáticos. El contenedor permanece en funcionamiento durante la ejecución duradera de la función para gestionar la persistencia y la reanudación del estado.

## De uso
<a name="ref-sam-cli-local-invoke-usage"></a>

```
$ sam local invoke <arguments> <options>
```

**nota**  
Si tiene más de una función definida en la AWS SAM plantilla, proporcione el identificador lógico de la función que desee invocar.

## Argumentos
<a name="ref-sam-cli-local-invoke-args"></a>

**Resource ID (ID de recurso)**  <a name="ref-sam-cli-local-invoke-args-resource-id"></a>
El ID de la función de Lambda que se invocará.  
Este argumento es opcional. Si la aplicación contiene una sola función Lambda, la AWS SAM CLI la invocará. Si la aplicación contiene varias funciones, proporciones el ID de la función que se va a invocar.  
*Valores válidos*: el identificador lógico o el ARN del recurso.

## Opciones
<a name="ref-sam-cli-local-invoke-options"></a>

`--add-host LIST`  <a name="ref-sam-cli-local-invoke-options-add-host"></a>
Pasa una asignación de nombre de host a dirección IP al archivo de host del contenedor de Docker. Este parámetro se puede pasar varias veces.  

**Example**  
Ejemplo: `--add-host example.com:127.0.0.1`

`--beta-features | --no-beta-features`  <a name="ref-sam-cli-local-invoke-options-beta-features"></a>
Permitir o denegar las características beta.

`--config-env TEXT`  <a name="ref-sam-cli-local-invoke-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="ref-sam-cli-local-invoke-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--container-env-vars`  <a name="ref-sam-cli-local-invoke-options-container-env-vars"></a>
(Opcional) Pase las variables de entorno al contenedor de imágenes de la función de Lambda al depurar localmente.

`--container-host TEXT`  <a name="ref-sam-cli-local-invoke-options-container-host"></a>
Host del contenedor Lambda emulado localmente. El valor predeterminado es `localhost`. Si quiere ejecutar la CLI de AWS SAM en un contenedor Docker en macOS, puede especificar `host.docker.internal`. Si desea ejecutar el contenedor en un host diferente al de AWS SAMCLI, puede especificar la dirección IP del host remoto.

`--container-host-interface TEXT`  <a name="ref-sam-cli-local-invoke-options-container-host-interface"></a>
La dirección IP de la interfaz de red del host a la que deben enlazarse los puertos del contenedor. El valor predeterminado es `127.0.0.1`. Utiliza `0.0.0.0` para enlazarse a todas las interfaces.

`--debug`  <a name="ref-sam-cli-local-invoke-options-debug"></a>
Activa el registro de depuración para imprimir los mensajes de depuración que genera la CLI de AWS SAM y para mostrar las marcas horarias.

`--debug-args TEXT`  <a name="ref-sam-cli-local-invoke-options-debug-args"></a>
Argumentos opcionales que se pasan al depurador.

`--debug-port, -d TEXT`  <a name="ref-sam-cli-local-invoke-options-debug-port"></a>
Cuando se especifica, inicia el contenedor de funciones de Lambda en modo de depuración y expone este puerto en el host local.

`--debugger-path TEXT`  <a name="ref-sam-cli-local-invoke-options-debugger-path"></a>
La ruta del host a un depurador montado en el contenedor de Lambda.

`--docker-network TEXT`  <a name="ref-sam-cli-local-invoke-options-docker-network"></a>
El nombre o el ID de una red de Docker existente a la que deben conectarse los contenedores de Lambda y Docker, junto con la red en modo puente predeterminada. Si esto no se especifica, los contenedores de Lambda se conectan únicamente a la red Docker en modo puente predeterminada.

`--docker-volume-basedir, -v TEXT`  <a name="ref-sam-cli-local-invoke-options-docker-volume-basedir"></a>
La ubicación del directorio base en el que se encuentra el AWS SAM archivo. Si Docker se ejecuta en una máquina remota, debe montar la ruta en la que se encuentra el AWS SAM archivo en la máquina Docker y modificar este valor para que coincida con la máquina remota.

`--durable-execution-name TEXT`  <a name="ref-sam-cli-local-invoke-options-durable-execution-name"></a>
Nombre de la ejecución duradera (solo para funciones duraderas)

`--env-vars, -n PATH`  <a name="ref-sam-cli-local-invoke-options-env-vars"></a>
El JSON o el `.env` archivo que contiene los valores de las variables de entorno de la función Lambda. El formato del archivo se detecta automáticamente. Para obtener más información sobre los archivos de variable de entorno, consulta [Archivo de variables de entorno](serverless-sam-cli-using-invoke.md#serverless-sam-cli-using-invoke-environment-file).

`--event, -e PATH`  <a name="ref-sam-cli-local-invoke-options-event"></a>
El archivo JSON que contiene los datos de eventos que se pasan a la función de Lambda cuando se invoca. Si no especifica esta opción, no se asume ningún evento. Para introducir JSON desde `stdin`, debe introducir el valor «-». Para obtener más información sobre los formatos de los mensajes de eventos de AWS los distintos servicios, consulte [Trabajar con otros servicios](https://docs.aws.amazon.com/lambda/latest/dg/lambda-services.html) en la *Guía para AWS Lambda desarrolladores*.

`--force-image-build`  <a name="ref-sam-cli-local-invoke-options-force-image-build"></a>
Especifica si la CLI de AWS SAM debe reconstruir la imagen utilizada para invocar funciones de Lambda con capas.

`--help`  <a name="ref-sam-cli-local-invoke-options-help"></a>
Muestra este mensaje y sale.

`--hook-name TEXT`  <a name="ref-sam-cli-local-invoke-options-hook-name"></a>
El nombre del enlace que se utiliza para ampliar la funcionalidad de la CLI de AWS SAM.  
Valores aceptados: `terraform`.

`--invoke-image TEXT`  <a name="ref-sam-cli-local-invoke-options-invoke-image"></a>
El URI de la imagen del contenedor que quieres usar para la invocación de la función local. De forma predeterminada, AWS SAM extrae la imagen del contenedor de Amazon ECR Public (que están listadas en [Repositorios de imágenes para AWS SAM](serverless-image-repositories.md)). Utiliza esta opción para extraer la imagen desde otra ubicación.  
Por ejemplo, `sam local invoke MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8`.

`--layer-cache-basedir DIRECTORY`  <a name="ref-sam-cli-local-invoke-options-layer-cache-basedir"></a>
Especifica la ubicación del directorio base en el que se descargan las capas que utiliza la plantilla.

`--log-file, -l TEXT`  <a name="ref-sam-cli-local-invoke-options-log-file"></a>
El archivo de registro al que se van a enviar los registros de tiempo de ejecución.

`--mount-symlinks`  <a name="ref-sam-cli-local-invoke-options-mount-symlinks"></a>
Garantiza que la CLI de AWS SAM siempre monte los enlaces simbólicos que están presentes en los archivos para compilarlos o invocarlos. Esto solo se aplica a los enlaces simbólicos del directorio de nivel superior (es decir, los que se encuentran directamente en la raíz de la función). Por defecto, los enlaces simbólicos no se montan, excepto los necesarios para utilizar `build-in-source` para `node_modules` en NodeJS.

`--no-event`  <a name="ref-sam-cli-local-invoke-options-no-event"></a>
Invoca la función con un evento vacío.

`--no-memory-limit`  <a name="ref-sam-cli-local-invoke-options-no-memory-limit"></a>
Elimina la limitación de memoria en el contenedor durante la invocación local, incluso cuando la memoria está configurada en la AWS SAM plantilla.

`--parameter-overrides`  <a name="ref-sam-cli-local-invoke-options-parameter-overrides"></a>
Cadena que contiene anulaciones de CloudFormation parámetros codificadas como pares clave-valor. Usa el mismo formato que (). AWS Command Line Interface AWS CLI El formato de la CLI de AWS SAM es de palabras clave y de valor explícitas, y cada modificación está separada por un espacio. A continuación, se incluyen dos ejemplos:  
+ `--parameter-overrides ParameterKey=hello,ParameterValue=world`
+ `--parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana`

`--profile TEXT`  <a name="ref-sam-cli-local-invoke-options-profile"></a>
El perfil específico del archivo de credenciales que recibe AWS las credenciales.

`--region TEXT`  <a name="ref-sam-cli-local-invoke-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, us-east-1.

`--runtime TEXT`  <a name="ref-sam-cli-local-invoke-options-runtime"></a>
Utiliza el tiempo de ejecución especificado para invocar una función de Lambda de forma local. Esto anula el tiempo de ejecución definido en el archivo `template.yml`. Esto también permite probar funciones de Lambda con diferentes tiempos de ejecución sin modificar la configuración original de la función.

`--save-params`  <a name="ref-sam-cli-local-invoke-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--shutdown`  <a name="ref-sam-cli-local-invoke-options-shutdown"></a>
Emula un evento de apagado una vez finalizada la invocación, para probar la forma en que la extensión gestiona el comportamiento del apagado.

`--skip-prepare-infra`  <a name="ref-sam-cli-local-invoke-options-skip-prepare-infra"></a>
Omite la fase de preparación si no se ha realizado ningún cambio en la infraestructura. Ejecuta con la opción `--hook-name`.

`--skip-pull-image`  <a name="ref-sam-cli-local-invoke-options-skip-pull-image"></a>
De forma predeterminada, la CLI de AWS SAM comprueba el tiempo de ejecución remoto más reciente de Lambda y actualiza la imagen local automáticamente para mantenerla sincronizada.  
Especifica esta opción para omitir la extracción de la imagen de Docker más reciente de su tiempo de ejecución de Lambda.

`--template, -t PATH`  <a name="ref-sam-cli-local-invoke-options-template"></a>
El archivo AWS SAM de plantilla.  
Esta opción no es compatible con `--hook-name`.  
Si especifica esta opción, AWS SAM carga únicamente la plantilla y los recursos locales a los que apunta.

`--tenant-id TEXT`  <a name="ref-sam-cli-local-invoke-options-tenancyconfig"></a>
El ID de inquilino de las funciones Lambda multiusuario. Se utiliza para garantizar el aislamiento informático entre distintos inquilinos. Se requiere cuando se invocan funciones configuradas con el modo de aislamiento de inquilinos.

`--terraform-plan-file`  <a name="ref-sam-cli-local-invoke-options-terraform-plan-file"></a>
La ruta relativa o absoluta al archivo del plan local Terraform cuando se utiliza la CLI de AWS SAM con Terraform Cloud. Esta opción requiere que `--hook-name` esté configurado en `terraform`.

## Ejemplos
<a name="sam-cli-command-reference-sam-local-invoke-examples"></a>

En el siguiente ejemplo, se utiliza un evento generado para realizar pruebas locales mediante un evento `s3.json` para invocar una función de Lambda de forma local.

```
$ sam local invoke --event events/s3.json S3JsonLoggerFunction
```

El siguiente ejemplo prueba la función ` HelloWorldFunction` con el tiempo de ejecución de Python 3.11

```
$ sam local invoke --runtime python3.11 HelloWorldFunction
```

El siguiente ejemplo prueba la función ` HelloWorldFunction` con un nombre de ejecución duradero

```
$ sam local invoke HelloWorldFunction --durable-execution-name my-execution
```

# sam local start-api
<a name="sam-cli-command-reference-sam-local-start-api"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam local start-api` subcomando de la interfaz de línea de comandos (AWS SAMCLI).
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam local start-api` subcomando, consulte[Introducción a las pruebas con sam local start-api](using-sam-cli-local-start-api.md).

El `sam local start-api` subcomando ejecuta AWS Lambda las funciones de forma local para probarlas a través de un servidor HTTP local.

## De uso
<a name="ref-sam-cli-local-start-api-usage"></a>

```
$ sam local start-api <options>
```

## Opciones
<a name="ref-sam-cli-local-start-api-options"></a>

`--add-host LIST`  <a name="ref-sam-cli-local-start-api-options-add-host"></a>
Pasa una asignación de nombre de host a dirección IP al archivo de host del contenedor de Docker. Este parámetro se puede pasar varias veces.  

**Example**  
Ejemplo: `--add-host example.com:127.0.0.1`

`--beta-features | --no-beta-features`  <a name="ref-sam-cli-local-start-api-options-beta-features"></a>
Permitir o denegar las características beta.

`--config-env TEXT`  <a name="ref-sam-cli-local-start-api-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="ref-sam-cli-local-start-api-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor predeterminado es «samconfig.toml» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--container-env-vars`  <a name="ref-sam-cli-local-start-api-options-container-env-vars"></a>
Opcional. Al realizar la depuración local, pasa las variables de entorno al contenedor de imágenes.

`--container-host TEXT`  <a name="ref-sam-cli-local-start-api-options-container-host"></a>
Host del contenedor Lambda emulado localmente. El valor predeterminado es `localhost`. Si quiere ejecutar la CLI de AWS SAM en un contenedor Docker en macOS, puede especificar `host.docker.internal`. Si desea ejecutar el contenedor en un host diferente al de AWS SAMCLI, puede especificar la dirección IP del host remoto.

`--container-host-interface TEXT`  <a name="ref-sam-cli-local-start-api-options-container-host-interface"></a>
La dirección IP de la interfaz de red del host a la que deben enlazarse los puertos del contenedor. El valor predeterminado es `127.0.0.1`. Utiliza `0.0.0.0` para enlazarse a todas las interfaces.

`--debug`  <a name="ref-sam-cli-local-start-api-options-debug"></a>
Activa el registro de depuración para imprimir el mensaje de depuración que genera la CLI de AWS SAM y muestra las marcas temporales.

`--debug-args TEXT`  <a name="ref-sam-cli-local-start-api-options-debug-args"></a>
Los argumentos adicionales que se pasarán al depurador.

`--debug-function`  <a name="ref-sam-cli-local-start-api-options-debug-function"></a>
Opcional. Especifica la función de Lambda a la que se aplicarán las opciones de depuración cuando `--warm-containers` se especifica. Este parámetro se aplica a `--debug-port`, `--debugger-path` y `--debug-args`.

`--debug-port, -d TEXT`  <a name="ref-sam-cli-local-start-api-options-debug-port"></a>
Cuando se especifica, inicia el contenedor de funciones de Lambda en modo de depuración y expone este puerto en el host local.

`--debugger-path TEXT`  <a name="ref-sam-cli-local-start-api-options-debugger-path"></a>
La ruta del host a un depurador que se montará en el contenedor de Lambda.

`--docker-network TEXT`  <a name="ref-sam-cli-local-start-api-options-docker-network"></a>
Especifica el nombre o el ID de una red de Docker existente a la que deben conectarse los contenedores de Lambda y Docker, junto con la red en modo puente predeterminada. Si esto no se especifica, los contenedores de Lambda solo se conectan a la red Docker en modo puente predeterminada.

` --docker-volume-basedir, -v TEXT`  <a name="ref-sam-cli-local-start-api-options-docker-volume-basedir"></a>
La ubicación del directorio base en el que se encuentra el AWS SAM archivo. Si Docker se ejecuta en una máquina remota, debe montar la ruta en la que se encuentra el AWS SAM archivo en la máquina Docker y modificar este valor para que coincida con la máquina remota.

`--env-vars, -n PATH`  <a name="ref-sam-cli-local-start-api-options-env-vars"></a>
El JSON o el `.env` archivo que contiene los valores de las variables de entorno de la función Lambda. El formato del archivo se detecta automáticamente.

`--force-image-build`  <a name="ref-sam-cli-local-start-api-options-force-image-build"></a>
Especifica si se AWS SAM CLI debe reconstruir la imagen utilizada para invocar funciones con capas.

`--help`  <a name="ref-sam-cli-local-start-api-options-help"></a>
Muestra este mensaje y sale.

`--hook-name TEXT`  <a name="ref-sam-cli-local-start-api-options-hook-name"></a>
El nombre del enlace que se utiliza para ampliar la funcionalidad de la CLI de AWS SAM.  
Valores aceptados: `terraform`.

`--host TEXT`  <a name="ref-sam-cli-local-start-api-options-host"></a>
El nombre de host local o la dirección IP a la que se va a vincular (predeterminado: «127.0.0.1»).

`--invoke-image TEXT`  <a name="ref-sam-cli-local-start-api-options-invoke-image"></a>
El URI de la imagen del contenedor que quiere usar para las funciones de Lambda. De forma predeterminada, AWS SAM extrae la imagen del contenedor de Amazon ECR Public. Utiliza esta opción para extraer la imagen desde otra ubicación.  
Puedes especificar esta opción varias veces. Cada instancia de esta opción puede tomar una cadena o un par clave-valor. Si especificas una cadena, será el URI de la imagen del contenedor que se usará en todas las funciones de la aplicación. Por ejemplo, `sam local start-api --invoke-image public.ecr.aws/sam/emu-python3.8`. Si especificas un par clave-valor, la clave es el nombre del recurso y el valor es el URI de la imagen del contenedor que se va a usar para ese recurso. Por ejemplo, `sam local start-api --invoke-image public.ecr.aws/sam/emu-python3.8 --invoke-image Function1=amazon/aws-sam-cli-emulation-image-python3.8 `. Con los pares clave-valor, puede especificar distintas imágenes de contenedor para distintos recursos.

`--layer-cache-basedir DIRECTORY`  <a name="ref-sam-cli-local-start-api-options-layer-cache-basedir"></a>
Especifica la ubicación basada en el lugar en el que se descargan las capas que utiliza la plantilla.

`--log-file, -l TEXT`  <a name="ref-sam-cli-local-start-api-options-log-file"></a>
El archivo de registro al que se van a enviar los registros de tiempo de ejecución.

`--no-memory-limit`  <a name="ref-sam-cli-local-start-api-options-no-memory-limit"></a>
Elimina la limitación de memoria en el contenedor durante la invocación local, incluso cuando la memoria está configurada en la plantilla. AWS SAM 

`--parameter-overrides`  <a name="ref-sam-cli-local-start-api-options-parameter-overrides"></a>
Cadena que contiene anulaciones de CloudFormation parámetros codificadas como pares clave-valor. Usa el mismo formato que (). AWS Command Line Interface AWS CLI El formato de la CLI de AWS SAM es de palabras clave y de valor explícitas, y cada modificación está separada por un espacio. A continuación, se incluyen dos ejemplos:  
+ `--parameter-overrides ParameterKey=hello,ParameterValue=world`
+ `--parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana`

`--port, -p INTEGER`  <a name="ref-sam-cli-local-start-api-options-port"></a>
El número de puerto local en el que se va a escuchar (valor predeterminado: «3000»).

`--profile TEXT`  <a name="ref-sam-cli-local-start-api-options-profile"></a>
El perfil específico del archivo de credenciales que recibe AWS las credenciales.

`--region TEXT`  <a name="ref-sam-cli-local-start-api-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, us-east-1.

`--save-params`  <a name="ref-sam-cli-local-start-api-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--shutdown`  <a name="ref-sam-cli-local-start-api-options-shutdown"></a>
Emula un evento de apagado una vez finalizada la invocación, para probar la forma en que la extensión gestiona el comportamiento del apagado.

`--skip-prepare-infra`  <a name="ref-sam-cli-local-start-api-options-skip-prepare-infra"></a>
Omite la fase de preparación si no se ha realizado ningún cambio en la infraestructura. Úsalo con la opción `--hook-name`.

`--skip-pull-image`  <a name="ref-sam-cli-local-start-api-options-skip-pull-image"></a>
Especifica si la CLI debe omitir la extracción de la última imagen de Docker para el tiempo de ejecución de Lambda.

`--ssl-cert-file PATH`  <a name="ref-sam-cli-local-start-api-options-ssl-cert-file"></a>
Ruta al archivo de certificado SSL (predeterminado: ninguno). Al usar esta opción, también debes usarse la opción `--ssl-key-file`.

`--ssl-key-file PATH`  <a name="ref-sam-cli-local-start-api-options-static-dir"></a>
Ruta al archivo de clave SSL (predeterminado: ninguno). Al usar esta opción, también debes usarse la opción `--ssl-cert-file`.

`--static-dir, -s TEXT`  <a name="ref-sam-cli-local-start-api-options-static-dir"></a>
Todos los archivos de activos estáticos (por ejemplo,CSS/JavaScript/HTML) ubicados en este directorio se presentan en`/`.

`--template, -t PATH`  <a name="ref-sam-cli-local-start-api-options-template"></a>
El archivo AWS SAM de plantilla.  
Si especifica esta opción, AWS SAM carga únicamente la plantilla y los recursos locales a los que apunta.

`--terraform-plan-file`  <a name="ref-sam-cli-local-start-api-options-terraform-plan-file"></a>
La ruta relativa o absoluta al archivo del plan local Terraform cuando se utiliza la CLI de AWS SAM con Terraform Cloud. Esta opción requiere que `--hook-name` esté configurado en `terraform`.

`--warm-containers [EAGER | LAZY]`  <a name="ref-sam-cli-local-start-api-options-warm-containers"></a>
Opcional. Especifica cómo la CLI de AWS SAM administra los contenedores para cada función.  
Hay dos opciones disponibles:  
   `EAGER`: los contenedores de todas las funciones se cargan al inicio y se conservan entre las invocaciones.  
   `LAZY`: los contenedores solo se cargan cuando se invoca cada función por primera vez. Esos contenedores se conservan para realizar más invocaciones.

## Ejemplo
<a name="sam-cli-command-reference-sam-local-start-api-examples"></a>

En el siguiente ejemplo se inicia un servidor local, lo que le permite probar la aplicación mediante la API. Para que este comando funcione, la aplicación debe estar instalada y Docker debe estar en ejecución.

```
$ sam local start-api --port 3000
```

# sam local start-lambda
<a name="sam-cli-command-reference-sam-local-start-lambda"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam local start-lambda` subcomando de la interfaz de línea de comandos (AWS SAMCLI).
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam local start-lambda` subcomando, consulte[Introducción a las pruebas con sam local start-lambda](using-sam-cli-local-start-lambda.md).

El subcomando `sam local start-lambda` inicia un punto de conexión local para emular AWS Lambda.

## De uso
<a name="ref-sam-cli-local-start-lambda-usage"></a>

```
$ sam local start-lambda <options>
```

## Opciones
<a name="ref-sam-cli-local-start-lambda-options"></a>

`--add-host LIST`  <a name="ref-sam-cli-local-start-lambda-options-add-host"></a>
Pasa una asignación de nombre de host a dirección IP al archivo de host del contenedor de Docker. Este parámetro se puede pasar varias veces.  

**Example**  
Ejemplo: `--add-host example.com:127.0.0.1`

`--beta-features | --no-beta-features`  <a name="ref-sam-cli-local-start-lambda-options-beta-features"></a>
Permitir o denegar las características beta.

`--config-env TEXT`  <a name="ref-sam-cli-local-start-lambda-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="ref-sam-cli-local-start-lambda-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor predeterminado es «samconfig.toml» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--container-env-vars`  <a name="ref-sam-cli-local-start-lambda-options-container-env-vars"></a>
Opcional. Al realizar la depuración local, pasa las variables de entorno al contenedor de imágenes.

`--container-host TEXT`  <a name="ref-sam-cli-local-start-lambda-options-container-host"></a>
Host del contenedor Lambda emulado localmente. El valor predeterminado es `localhost`. Si quiere ejecutar la CLI de AWS SAM en un contenedor Docker en macOS, puede especificar `host.docker.internal`. Si desea ejecutar el contenedor en un host diferente al de AWS SAMCLI, puede especificar la dirección IP del host remoto.

`--container-host-interface TEXT`  <a name="ref-sam-cli-local-start-lambda-options-container-host-interface"></a>
La dirección IP de la interfaz de red del host a la que deben enlazarse los puertos del contenedor. El valor predeterminado es `127.0.0.1`. Utiliza `0.0.0.0` para enlazarse a todas las interfaces.

`--debug`  <a name="ref-sam-cli-local-start-lambda-options-debug"></a>
Activa el registro de depuración para imprimir el mensaje de depuración que genera la CLI de AWS SAM y muestra las marcas temporales.

`--debug-args TEXT`  <a name="ref-sam-cli-local-start-lambda-options-debug-args"></a>
Los argumentos adicionales que se pasarán al depurador.

`--debug-function`  <a name="ref-sam-cli-local-start-lambda-options-debug-function"></a>
Opcional. Especifica la función de Lambda a la que se aplicarán las opciones de depuración cuando `--warm-containers` se especifica. Este parámetro se aplica a `--debug-port`, `--debugger-path` y `--debug-args`.

`--debug-port, -d TEXT`  <a name="ref-sam-cli-local-start-lambda-options-debug-port"></a>
Cuando se especifica, inicia el contenedor de funciones de Lambda en modo de depuración y expone este puerto en el host local.

`--debugger-path TEXT`  <a name="ref-sam-cli-local-start-lambda-options-debugger-path"></a>
La ruta del host a un depurador que se montará en el contenedor de Lambda.

`--docker-network TEXT`  <a name="ref-sam-cli-local-start-lambda-options-docker-network"></a>
El nombre o el ID de una red de Docker existente a la que deben conectarse los contenedores de Lambda y Docker, junto con la red en modo puente predeterminada. Si esto no se especifica, los contenedores de Lambda se conectan solo a la red Docker en modo puente predeterminada.

`--docker-volume-basedir, -v TEXT`  <a name="ref-sam-cli-local-start-lambda-options-docker-volume-basedir"></a>
La ubicación del directorio base en el que se encuentra el AWS SAM archivo. Si Docker se ejecuta en una máquina remota, debe montar la ruta en la que se encuentra el AWS SAM archivo en la máquina Docker y modificar este valor para que coincida con la máquina remota.

`--env-vars, -n PATH`  <a name="ref-sam-cli-local-start-lambda-options-env-vars"></a>
El JSON o el `.env` archivo que contiene los valores de las variables de entorno de la función Lambda. El formato del archivo se detecta automáticamente.

`--force-image-build`  <a name="ref-sam-cli-local-start-lambda-options-force-image-build"></a>
Especifica si la CLI debe reconstruir la imagen utilizada para invocar funciones con capas.

`--help`  <a name="ref-sam-cli-local-start-lambda-options-help"></a>
Muestra este mensaje y sale.

`--hook-name TEXT`  <a name="ref-sam-cli-local-start-lambda-options-hook-name"></a>
El nombre del enlace que se utiliza para ampliar la funcionalidad de la CLI de AWS SAM.  
Valores aceptados: `terraform`.

`--host TEXT`  <a name="ref-sam-cli-local-start-lambda-options-host"></a>
El nombre de host local o la dirección IP a la que se va a vincular (predeterminado: «127.0.0.1»).

`--invoke-image TEXT`  <a name="ref-sam-cli-local-start-lambda-options-invoke-image"></a>
El URI de la imagen del contenedor que quiere usar para la invocación de la función local. De forma predeterminada, AWS SAM extrae la imagen del contenedor de Amazon ECR Public. Utiliza esta opción para extraer la imagen desde otra ubicación.  
Por ejemplo, `sam local start-lambda MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8`.

`--layer-cache-basedir DIRECTORY`  <a name="ref-sam-cli-local-start-lambda-options-layer-cache-basedir"></a>
Especifica la ubicación basada en el lugar en el que se descargan las capas que utiliza la plantilla.

`--log-file, -l TEXT`  <a name="ref-sam-cli-local-start-lambda-options-log-file"></a>
El archivo de registro al que se van a enviar los registros de tiempo de ejecución.

`--no-memory-limit`  <a name="ref-sam-cli-local-start-lambda-options-no-memory-limit"></a>
Elimina la limitación de memoria en el contenedor durante la invocación local, incluso cuando la memoria está configurada en la plantilla. AWS SAM 

`--parameter-overrides`  <a name="ref-sam-cli-local-start-lambda-options-parameter-overrides"></a>
Cadena que contiene anulaciones de CloudFormation parámetros codificadas como pares clave-valor. Usa el mismo formato que (). AWS Command Line Interface AWS CLI El formato de la CLI de AWS SAM es de palabras clave y de valor explícitas, y cada modificación está separada por un espacio. A continuación, se incluyen dos ejemplos:  
+ `--parameter-overrides ParameterKey=hello,ParameterValue=world`
+ `--parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana`

`--port, -p INTEGER`  <a name="ref-sam-cli-local-start-lambda-options-port"></a>
El número de puerto local en el que se va a escuchar (valor predeterminado: «3001»).

`--profile TEXT`  <a name="ref-sam-cli-local-start-lambda-options-profile"></a>
El perfil específico del archivo de credenciales que recibe AWS las credenciales.

`--region TEXT`  <a name="ref-sam-cli-local-start-lambda-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, us-east-1.

`--save-params`  <a name="ref-sam-cli-local-start-lambda-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--shutdown`  <a name="ref-sam-cli-local-start-lambda-options-shutdown"></a>
Emula un evento de apagado una vez finalizada la invocación, para probar la forma en que la extensión gestiona el comportamiento del apagado.

`--skip-prepare-infra`  <a name="ref-sam-cli-local-start-lambda-options-skip-prepare-infra"></a>
Omite la fase de preparación si no se ha realizado ningún cambio en la infraestructura. Ejecuta con la opción `--hook-name`.

`--skip-pull-image`  <a name="ref-sam-cli-local-start-lambda-options-skip-pull-image"></a>
Especifica si la CLI debe omitir la extracción de la última imagen de Docker para el tiempo de ejecución de Lambda.

`--template, -t PATH`  <a name="ref-sam-cli-local-start-lambda-options-template"></a>
El archivo AWS SAM de plantilla.  
Si especifica esta opción, AWS SAM carga únicamente la plantilla y los recursos locales a los que apunta. Esta opción no es compatible con `--hook-name`.

`--terraform-plan-file`  <a name="ref-sam-cli-local-start-lambda-options-terraform-plan-file"></a>
La ruta relativa o absoluta al archivo del plan local Terraform cuando se utiliza la CLI de AWS SAM con Terraform Cloud. Esta opción requiere que `--hook-name` esté configurado en `terraform`.

`--warm-containers [EAGER | LAZY]`  <a name="ref-sam-cli-local-start-lambda-options-warm-containers"></a>
Opcional. Especifica cómo la CLI de AWS SAM administra los contenedores para cada función.  
Hay dos opciones disponibles:  
+ `EAGER`: los contenedores de todas las funciones se cargan al inicio y se conservan entre las invocaciones.
+ `LAZY`: los contenedores solo se cargan cuando se invoca cada función por primera vez. Esos contenedores se conservan para realizar más invocaciones.

## Ejemplo
<a name="sam-cli-command-reference-sam-local-start-lambda-examples"></a>

Para ver un ejemplo y un tutorial detallados sobre el uso del subcomando `sam local start-lambda`, consulte [Introducción a las pruebas con sam local start-lambda](using-sam-cli-local-start-lambda.md).

# sam logs
<a name="sam-cli-command-reference-sam-logs"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam logs`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam logs` comando busca los registros generados por sus AWS Lambda funciones.

## De uso
<a name="sam-cli-command-reference-sam-logs-usage"></a>

```
$ sam logs <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-logs-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-logs-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-logs-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor predeterminado es «samconfig.toml» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--cw-log-group LIST`  <a name="sam-cli-command-reference-sam-logs-options-cw-log-group"></a>
Incluye los registros de CloudWatch los grupos de registros que especifique. Si especifica esta opción junto con`name`, AWS SAM incluye los registros de los grupos de registros especificados, además de los registros de los recursos nombrados.

`--debug`  <a name="sam-cli-command-reference-sam-logs-options-debug"></a>
Activa el registro de depuración para imprimir el mensaje de depuración que genera la CLI de AWS SAM y muestra las marcas temporales.

`---end-time, e TEXT`  <a name="sam-cli-command-reference-sam-logs-options-end-time"></a>
Recupera los registros hasta este momento. La hora puede estar formada con valores relativos como «Hace 5 minutos», «mañana» o una marca de tiempo con formato como «01-01-2018 10:10:10».

`--filter TEXT`  <a name="sam-cli-command-reference-sam-logs-options-filter"></a>
Permite especificar una expresión para encontrar rápidamente registros que coincidan con términos, frases o valores en los eventos de registro. Puede ser una palabra clave simple (por ejemplo, «error») o un patrón compatible con Amazon CloudWatch Logs. Para obtener información sobre la sintaxis, consulte la [documentación de Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html).

`--help`  <a name="sam-cli-command-reference-sam-logs-options-help"></a>
Muestra este mensaje y sale.

`--include-traces`  <a name="sam-cli-command-reference-sam-logs-options-include-traces"></a>
Incluye los seguimientos de X-Ray en la salida del registro.

`--name, -n TEXT`  <a name="sam-cli-command-reference-sam-logs-options-name"></a>
El nombre del recurso según el cual se van a buscar los registros. Si este recurso forma parte de una CloudFormation pila, puede ser el ID lógico del recurso de la función en la AWS SAM plantilla CloudFormation/. Para proporcionar varios nombres, repita de nuevo el parámetro. Si el recurso está en una pila anidada, el nombre puede ir precedido del nombre de la pila anidada para extraer los registros de ese recurso (/). NestedStackLogicalId ResourceLogicalId Si no se proporciona el nombre del recurso, se escaneará la pila en cuestión y se extraerá la información de registro de todos los recursos compatibles. Si no especificas esta opción, AWS SAM busca los registros de todos los recursos de la pila que especifiques. Los tipos de recurso siguientes son compatibles:  
+ `AWS::Serverless::Function`
+ `AWS::Lambda::Function`
+ `AWS::Serverless::Api`
+ `AWS::ApiGateway::RestApi`
+ `AWS::Serverless::HttpApi`
+ `AWS::ApiGatewayV2::Api`
+ `AWS::Serverless::StateMachine`
+ `AWS::StepFunctions::StateMachine`

`--output TEXT`  <a name="sam-cli-command-reference-sam-logs-options-output"></a>
Especifica el formato de salida de los registros. Para imprimir registros formateados, especifica `text`. Para imprimir los registros como JSON, especifica `json`.

`--profile TEXT`  <a name="sam-cli-command-reference-sam-logs-options-profile"></a>
El perfil específico del archivo de credenciales que obtiene AWS las credenciales.

`--region TEXT`  <a name="sam-cli-command-reference-sam-logs-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, us-east-1.

`--save-params`  <a name="sam-cli-command-reference-sam-logs-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--stack-name TEXT`  <a name="sam-cli-command-reference-sam-logs-options-stack-name"></a>
El nombre de la CloudFormation pila de la que forma parte el recurso.

`--start-time, -s TEXT`  <a name="sam-cli-command-reference-sam-logs-options-start-time"></a>
Recupera los registros que comienzan en este momento. La hora puede estar formada con valores relativos como «Hace 5 minutos», «ayer» o una marca de tiempo con formato como «01-01-2018 10:10:10». El valor predeterminado es «Hace 10 minutos».

` --tail, -t`  <a name="sam-cli-command-reference-sam-logs-options-tail"></a>
Sigue la salida del registro. Esto ignora el argumento de la hora de finalización y continúa buscando los registros a medida que están disponibles.

## Ejemplos
<a name="sam-cli-command-reference-sam-logs-examples"></a>

Cuando las funciones forman parte de una CloudFormation pila, puede recuperar los registros mediante el ID lógico de la función al especificar el nombre de la pila.

```
$ sam logs -n HelloWorldFunction --stack-name myStack
```

Consulte los registros de un intervalo de tiempo específico mediante las opciones -s (--start-time) y -e (--end-time).

```
$ sam logs -n HelloWorldFunction --stack-name myStack -s '10min ago' -e '2min ago'
```

También puede agregar la opción `--tail` para esperar a que lleguen nuevos registros y verlos a medida que lleguen.

```
$ sam logs -n HelloWorldFunction --stack-name myStack --tail
```

Utiliza la opción `--filter` para encontrar rápidamente registros que coincidan con términos, frases o valores de sus eventos de registro.

```
$ sam logs -n HelloWorldFunction --stack-name myStack --filter "error"
```

Vea los registros de un recurso en una pila secundaria.

```
$ sam logs --stack-name myStack -n childStack/HelloWorldFunction
```

Registros finales de todos los recursos compatibles con la aplicación.

```
$ sam logs --stack-name sam-app --tail
```

Obtén los registros de una función de Lambda específica y de la API correspondiente a API Gateway de su aplicación.

```
$ sam logs --stack-name sam-app --name HelloWorldFunction --name HelloWorldRestApi
```

Obtén los registros de todos los recursos admitidos en su aplicación y, además, de los grupos de registros especificados.

```
$ sam logs --cw-log-group /aws/lambda/myfunction-123 --cw-log-group /aws/lambda/myfunction-456
```

# sam package
<a name="sam-cli-command-reference-sam-package"></a>

La interfaz de línea de AWS Serverless Application Model comandos (AWS SAM CLI) empaqueta una AWS SAM aplicación.

Este comando crea un `.zip` archivo con el código y las dependencias y lo carga en Amazon Simple Storage Service (Amazon S3). AWS SAM permite el cifrado de todos los archivos almacenados en Amazon S3. A continuación, devuelve una copia de la AWS SAM plantilla y reemplaza las referencias a los artefactos locales por la ubicación de Amazon S3 en la que el comando cargó los artefactos.

De forma predeterminada, cuando utiliza este comando, CLI de AWS SAM asume que su directorio de trabajo actual es el directorio raíz del proyecto. El AWS SAMCLI primero intenta localizar un archivo de plantilla creado con el [sam build](sam-cli-command-reference-sam-build.md) comando, que se encuentra en la `.aws-sam` subcarpeta y tiene un nombre`template.yaml`. A continuación, la CLI de AWS SAM intenta localizar un archivo de plantilla llamado `template.yaml` o `template.yml` en el directorio de trabajo actual. Si especificas la `--template` opción, se AWS SAMCLI anula su comportamiento predeterminado y empaquetará solo esa AWS SAM plantilla y los recursos locales a los que apunte.

**nota**  
[sam deploy](sam-cli-command-reference-sam-deploy.md) ahora ejecuta implícitamente la funcionalidad del `sam package`. Puede utilizar el comando [sam deploy](sam-cli-command-reference-sam-deploy.md) directamente para empaquetar e implementar su aplicación.

## De uso
<a name="sam-cli-command-reference-sam-package-usage"></a>

```
$ sam package <arguments> <options>
```

## Argumentos
<a name="sam-cli-command-reference-sam-package-args"></a>

**Resource ID (ID de recurso)**  <a name="sam-cli-command-reference-sam-package-args-resource-id"></a>
El ID de la función de Lambda que se va a empaquetar.  
Este argumento es opcional. Si la aplicación contiene una sola función Lambda, la AWS SAM CLI la empaquetará. Si la aplicación contiene varias funciones, proporciones el ID de la función para empaquetar una sola función.  
*Valores válidos*: el identificador lógico o el ARN del recurso.

## Opciones
<a name="sam-cli-command-reference-sam-package-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-package-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-package-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor predeterminado es «samconfig.toml» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-package-options-debug"></a>
Activa el registro de depuración para imprimir el mensaje de depuración que genera la CLI de AWS SAM y muestra las marcas temporales.

`--force-upload`  <a name="sam-cli-command-reference-sam-package-options-force-upload"></a>
Anular los archivos existentes en el bucket de Amazon S3. Especificar este indicador para cargar artefactos incluso si coinciden con los artefactos existentes en el bucket de Amazon S3.

`--help`  <a name="sam-cli-command-reference-sam-package-options-help"></a>
Muestra este mensaje y sale.

`--image-repository TEXT`  <a name="sam-cli-command-reference-sam-package-options-image-repository"></a>
La URI del repositorio Amazon Elastic Container Registry (Amazon ECR) donde este comando sube la imagen de la función. Necesario para las funciones declaradas con el tipo de paquete `Image`.

`--kms-key-id TEXT`  <a name="sam-cli-command-reference-sam-package-options-kms-key-id"></a>
El ID de una clave AWS Key Management Service (AWS KMS) que se utiliza para cifrar los artefactos que se encuentran en reposo en el bucket de Amazon S3. Si no se especifica esta opción, AWS SAM utiliza claves de cifrado gestionadas por Amazon S3.

`--metadata`  <a name="sam-cli-command-reference-sam-package-options-metadata"></a>
(Opcional) Un mapa de metadatos para adjuntarlo a todos los artefactos a los que se hace referencia en la plantilla.

`--no-progressbar`  <a name="sam-cli-command-reference-sam-package-options-no-progressbar"></a>
No muestre una barra de progreso al cargar artefactos en Amazon S3.

`--output-template-file PATH`  <a name="sam-cli-command-reference-sam-package-options-output-template-file"></a>
La ruta al archivo donde el comando escribe la plantilla empaquetada. Si especificas una ruta, el comando escribe la plantilla en la salida estándar.

`--profile TEXT`  <a name="sam-cli-command-reference-sam-package-options-profile"></a>
El perfil específico del archivo de credenciales que recibe las credenciales. AWS 

`--region TEXT`  <a name="sam-cli-command-reference-sam-package-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, us-east-1.

`--resolve-s3`  <a name="sam-cli-command-reference-sam-package-options-resolve-s3"></a>
Creación automática de un bucket de Amazon S3 para empaquetar. Si especificas las opciones `--s3-bucket` y `--resolve-s3`, entonces se producirá un error.

`--s3-bucket TEXT`  <a name="sam-cli-command-reference-sam-package-options-s3-bucket"></a>
El nombre del bucket de Amazon S3 donde este comando carga el artefacto. Si el artefacto tiene más de 51 200 bytes, necesitará la opción `--s3-bucket` o `--resolve-s3`. Si especificas las opciones `--s3-bucket` y `--resolve-s3`, entonces se producirá un error.

`--s3-prefix TEXT`  <a name="sam-cli-command-reference-sam-package-options-s3-prefix"></a>
Prefijo agregado al nombre de los artefactos que se cargan en el bucket de Amazon S3. El nombre del prefijo es un nombre de ruta (nombre de la carpeta) del bucket de Amazon S3. Esto solo se aplica a las funciones declaradas con el tipo de paquete `Zip`.

`--save-params`  <a name="sam-cli-command-reference-sam-package-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--signing-profiles LIST`  <a name="sam-cli-command-reference-sam-package-options-signing-profiles"></a>
(Opcional) La lista de perfiles de firma con los que firmar los paquetes de implementación. Este parámetro toma una lista de pares clave-valor, donde la clave es el nombre de la función o capa que se va a firmar y el valor es el perfil de firma, con un propietario del perfil opcional delimitado con `:`. Por ejemplo, `FunctionNameToSign=SigningProfileName1 LayerNameToSign=SigningProfileName2:SigningProfileOwner`.

`--template-file, --template, -t PATH`  <a name="sam-cli-command-reference-sam-package-options-template-file"></a>
La ruta y el nombre del archivo donde se encuentra la AWS SAM plantilla.  
Si especifica esta opción, AWS SAM empaqueta solo la plantilla y los recursos locales a los que apunta.

`--use-json`  <a name="sam-cli-command-reference-sam-package-options-use-json"></a>
Genera JSON para la CloudFormation plantilla. YAML se utiliza de forma predeterminada.

## Ejemplo
<a name="sam-cli-command-reference-sam-package-examples"></a>

El siguiente ejemplo crea y empaqueta artefactos para una función y CodeDeploy aplicaciones de Lambda. Los artefactos se cargan en un bucket de Amazon S3. El resultado del comando es un nuevo archivo llamado `package.yml`.

```
$ sam package \
  --template-file template.yml \
  --output-template-file package.yml \
  --s3-bucket amzn-s3-demo-bucket
```

# sam pipeline bootstrap
<a name="sam-cli-command-reference-sam-pipeline-bootstrap"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam local pipeline bootstrap` subcomando de la Interfaz de línea de comandos (AWS SAMCLI).

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam pipeline bootstrap` subcomando genera los recursos de AWS infraestructura necesarios para conectarse a su sistema de CI/CD. Este paso debe ejecutarse en cada etapa de implementación de la canalización antes de ejecutar el comando **sam pipeline init**.

Este subcomando configura los siguientes recursos de infraestructura: AWS 
+ Opción de configurar los permisos de canalización mediante:
  + Un usuario de Pipeline IAM con un identificador de clave de acceso y unas credenciales de acceso con clave secreta que se compartirán con el CI/CD sistema.
**nota**  
Recomendamos rotar periódicamente las claves de acceso de forma regular. Para obtener más información, consulta [ Rotar las claves de acceso periódicamente para casos de uso que requieran credenciales de larga duración ](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#rotate-credentials) en la *Guía del usuario de IAM*.
  +  CI/CD Plataformas compatibles a través del OIDC. Para obtener una introducción sobre el uso de OIDC con la canalización AWS SAM , vaya a [Cómo utilizar la autenticación OIDC con canalizaciones AWS SAM](deploying-with-oidc.md).
+ Función de IAM de CloudFormation ejecución que asume el despliegue de CloudFormation la aplicación. AWS SAM 
+ Un depósito de Amazon S3 para guardar los AWS SAM artefactos.
+ Opcionalmente, un repositorio de imágenes de Amazon ECR para almacenar paquetes de implementación de Lambda con imágenes de contenedor (si tiene un recurso del tipo de paquete `Image`).

## De uso
<a name="sam-cli-command-reference-sam-pipeline-bootstrap-usage"></a>

```
$ sam pipeline bootstrap <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-pipeline-bootstrap-options"></a>

`--bitbucket-repo-uuid TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-bitbucket-repo-uuid"></a>
 El UUID del repositorio de Bitbucket. Esta opción es específica del uso de Bitbucket OIDC para permisos.  
Este valor se encuentra en https://bitbucket.org/*workspace*/*repository*/admin/addon/admin/pipelines/openid-connect 

`--bucket TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-bucket"></a>
El ARN del depósito de Amazon S3 que contiene los AWS SAM artefactos.

`--cicd-provider TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-cicd-provider"></a>
La CI/CD plataforma para la AWS SAM canalización.

`--cloudformation-execution-role TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-cloudformation-execution-role"></a>
El ARN de la función de IAM que debe asumir CloudFormation al implementar la pila de aplicaciones. índícalo solo si quiere utilizar su propio rol. De lo contrario, el comando creará un nuevo rol.

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor predeterminado es **default**. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de los parámetros predeterminados que se van a utilizar. El valor por defecto es `samconfig.toml` en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--confirm-changeset | --no-confirm-changeset`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-confirm-changeset"></a>
Permite solicitar la confirmación de la implementación de los recursos.

`--create-image-repository | --no-create-image-repository`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-create-image-repository"></a>
Especifica si quiere crear un repositorio de imágenes de Amazon ECR si no se proporciona ninguno. En el repositorio de Amazon ECR se encuentran las imágenes de contenedor de las funciones o capas de Lambda que tienen un tipo de paquete de `Image`. El valor predeterminado es `--no-create-image-repository`.

`--debug`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-debug"></a>
Activa el registro de depuración e imprime los mensajes de depuración que genera la CLI de AWS SAM, además de mostrar las marcas de tiempo.

`--deployment-branch TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-deployment-branch"></a>
Nombre de la rama desde la que se realizarán las implementaciones. Esta opción es específica del uso de GitHub Actions OIDC para los permisos.

`--github-org TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-github-org"></a>
La GitHub organización a la que pertenece el repositorio. Si no existe ninguna organización, escriba el nombre de usuario del propietario del repositorio. Esta opción es específica del uso de GitHub Actions OIDC para los permisos.

`--github-repo TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-github-repo"></a>
Nombre del GitHub repositorio desde el que se realizarán las implementaciones. Esta opción es específica del uso de GitHub Actions OIDC para los permisos.

`--gitlab-group TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-gitlab-group"></a>
El GitLab grupo al que pertenece el repositorio. Esta opción es específica del uso de GitLab OIDC para los permisos.

`--gitlab-project TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-gitlab-project"></a>
El nombre del GitLab proyecto. Esta opción es específica del uso de GitLab OIDC para los permisos.

`--help, -h`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-help"></a>
Muestra este mensaje y sale.

`--image-repository TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-image-repository"></a>
El ARN de un repositorio de imágenes de Amazon ECR en el que se encuentran las imágenes de contenedor de las funciones de Lambda o las capas que tienen un tipo de paquete de `Image`. Si se proporcionan, se ignora la opción `--create-image-repository`. Si no se proporciona y `--create-image-repository` se especifica, el comando crea una.

`--interactive | --no-interactive`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-interactive"></a>
Se deshabilita la solicitud interactiva de los parámetros de arranque y devuelve un error si falta alguno de los parámetros necesarios. El valor predeterminado es `--interactive`. Para este comando, `--stage` es el único parámetro requerido.  
Si `--no-interactive` se especifica junto con `--use-oidc-provider`, se deben incluir todos los parámetros necesarios de su proveedor de OIDC.

`--oidc-client-id TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-oidc-client-id"></a>
El ID de cliente configurado para su uso con su proveedor de OIDC.

`--oidc-provider [github-actions | gitlab | bitbucket-pipelines]`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-oidc-provider"></a>
Nombre del CI/CD proveedor que se utilizará para los permisos de OIDC. GitLab GitHub, y Bitbucket son compatibles.

`--oidc-provider-url TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-oidc-provider-url"></a>
La dirección URL del emisor del proveedor OIDC. El valor debe empezar por **https://**.

`--permissions-provider [oidc | iam]`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-permissions-provider"></a>
Elija un proveedor de permisos para que asuma la función de ejecución de la canalización. El valor predeterminado es **iam**.

`--pipeline-execution-role TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-pipeline-execution-role"></a>
El ARN del rol de IAM que asumirá el usuario de la canalización y que usará en esta etapa. índícalo solo si quiere utilizar su propio rol. Si no se proporciona, este comando creará un nuevo rol.

`--pipeline-user TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-pipeline-user"></a>
El nombre de recurso de Amazon (ARN) del usuario de IAM que comparte con el sistema su ID de clave de acceso y su clave de acceso secreta. CI/CD Se utiliza para conceder permiso a este usuario de IAM para acceder a la cuenta correspondiente. AWS Si no se proporciona, el comando creará un usuario de IAM junto con el ID de clave de acceso y las credenciales de clave de acceso secreta.

`--profile TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-profile"></a>
El perfil específico del archivo de credenciales que recibe AWS las credenciales.

`--region TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, `us-east-1`.

`--save-params`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--stage TEXT`  <a name="sam-cli-command-reference-sam-pipeline-bootstrap-options-stage"></a>
El nombre de la fase de implementación correspondiente. Se utiliza como sufijo para los recursos de AWS infraestructura creados.

## Resolución de problemas
<a name="sam-cli-command-reference-sam-pipeline-bootstrap-troubleshooting"></a>

### Error: falta el parámetro obligatorio
<a name="sam-cli-command-reference-sam-pipeline-bootstrap-troubleshooting-example1"></a>

Si `--no-interactive` se especifica junto con `--use-oidc-provider` y ninguno de los parámetros requeridos se proporciona, se mostrará este mensaje de error junto con una descripción de los parámetros que faltan.

## Ejemplo
<a name="sam-cli-command-reference-sam-pipeline-bootstrap-examples"></a>

El siguiente ejemplo crea los AWS recursos necesarios para crear el CI/CD sistema, activa el registro de depuración e imprime los mensajes de depuración generados por AWS SAMCLI: usa un evento generado para pruebas locales mediante el uso de un `s3.json` evento para invocar una función Lambda localmente

```
$ sam pipeline bootstrap --debug
```

# sam pipeline init
<a name="sam-cli-command-reference-sam-pipeline-init"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam pipeline init` subcomando de la Interfaz de línea de comandos (AWS SAMCLI).

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam pipeline init` subcomando genera un archivo de configuración de canalización que el CI/CD sistema puede utilizar para implementar aplicaciones sin servidor. AWS SAM

Antes de usar **sam pipeline init**, debe iniciar los recursos necesarios para cada etapa de la canalización. Puede hacer esto ejecutando **sam pipeline init --bootstrap** para que lo guíen a través del proceso de instalación y generación de archivos de configuración, o consulta los recursos que haya creado previamente con el comando **sam pipeline bootstrap**.

## De uso
<a name="sam-cli-command-reference-sam-pipeline-init-usage"></a>

```
$ sam pipeline init <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-pipeline-init-options"></a>

`--bootstrap`  <a name="sam-cli-command-reference-sam-pipeline-init-options-bootstrap"></a>
Habilite el modo interactivo que guíe al usuario a través de la creación de los recursos de AWS infraestructura necesarios.

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-pipeline-init-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor predeterminado es `default`. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file TEXT`  <a name="sam-cli-command-reference-sam-pipeline-init-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor predeterminado es `samconfig.toml` en el directorio raíz del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-pipeline-init-options-debug"></a>
Activa el registro de depuración para imprimir los mensajes de depuración que genera la AWS SAM de CLI y para mostrar las marcas temporales.

`--help, -h`  <a name="sam-cli-command-reference-sam-pipeline-init-options-help"></a>
Muestra este mensaje y sale.

`--save-params`  <a name="sam-cli-command-reference-sam-pipeline-init-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

## Ejemplo
<a name="sam-cli-command-reference-sam-pipeline-init-examples"></a>

En el siguiente ejemplo, se muestra cómo utilizar la `--bootstrap` opción para realizar un recorrido por un modo interactivo que le guiará por la creación de los recursos de AWS infraestructura necesarios:

```
$ sam pipeline init --bootstrap
```

# sam publish
<a name="sam-cli-command-reference-sam-publish"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam publish`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam publish` comando publica una AWS SAM aplicación en AWS Serverless Application Repository. Este comando toma una AWS SAM plantilla empaquetada y publica la aplicación en la AWS región especificada.

El `sam publish` comando espera que la AWS SAM plantilla incluya una `Metadata` sección que contenga los metadatos de la aplicación necesarios para la publicación. En la sección `Metadata`, las propiedades `LicenseUrl` y `ReadmeUrl` deben hacer referencia a buckets de Amazon Simple Storage Service (Amazon S3), no a archivos locales. Para obtener más información sobre la `Metadata` sección de la AWS SAM plantilla, consulte[Publicación de la aplicación con la CLI de AWS SAM](serverless-sam-template-publishing-applications.md).

De forma predeterminada, `sam publish` crea la aplicación como privada. Antes de que otras cuentas AWS puedan ver e implementar su aplicación, debe compartirla. Para obtener información sobre cómo compartir aplicaciones, consulta [los ejemplos de políticas basadas en recursos de AWS Serverless Application Repository](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/security_iam_resource-based-policy-examples.html) en la *Guía para desarrolladores de AWS Serverless Application Repository *.

**nota**  
Por el momento, `sam publish` no admite la publicación de aplicaciones anidadas especificadas localmente. Si la aplicación contiene aplicaciones anidadas, debe publicarlas por separado AWS Serverless Application Repository antes de publicar la aplicación principal.

## De uso
<a name="sam-cli-command-reference-sam-publish-usage"></a>

```
$ sam publish <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-publish-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-publish-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-publish-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-publish-options-debug"></a>
Activa el registro de depuración para imprimir los mensajes de depuración que genera la AWS SAM de CLI y para mostrar las marcas temporales.

`--help`  <a name="sam-cli-command-reference-sam-publish-options-help"></a>
Muestra este mensaje y sale.

`--profile TEXT`  <a name="sam-cli-command-reference-sam-publish-options-profile"></a>
El perfil específico del archivo de credenciales que recibe AWS las credenciales.

`--region TEXT`  <a name="sam-cli-command-reference-sam-publish-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, us-east-1.

`--save-params`  <a name="sam-cli-command-reference-sam-publish-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--semantic-version TEXT`  <a name="sam-cli-command-reference-sam-publish-options-semantic-version"></a>
(Opcional) Utiliza esta opción para proporcionar una versión semántica de la aplicación que anule la propiedad `SemanticVersion` de la sección `Metadata` del archivo de plantilla. Para obtener más información sobre el control de versiones semántico, consulta la [especificación del control de versiones semántico.](https://semver.org/)

`--template, -t PATH`  <a name="sam-cli-command-reference-sam-publish-options-template"></a>
La ruta del archivo de AWS SAM plantilla`[default: template.[yaml|yml]]`.

## Ejemplos
<a name="sam-cli-command-reference-sam-publish-examples"></a>

Para publicar una aplicación:

```
$ sam publish --template packaged.yaml --region us-east-1
```

# sam remote callback
<a name="sam-cli-command-reference-sam-remote-callback"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam remote callback`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam remote callback` comando le permite enviar llamadas a ejecuciones remotas de funciones duraderas que se ejecutan en AWS Lambda.

**nota**  
Estos comandos requieren acceso a AWS las credenciales.

## De uso
<a name="sam-cli-command-reference-sam-remote-callback-usage"></a>

```
$ sam remote callback <subcommand> <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-remote-callback-options"></a>

`--help, -h`  <a name="sam-cli-command-reference-sam-remote-callback-options-help"></a>
Muestre este mensaje y salga de él.

## Subcomandos
<a name="sam-cli-command-reference-sam-remote-callback-subcommands"></a>

`succeed`  <a name="sam-cli-command-reference-sam-remote-callback-subcommands-succeed"></a>
Envíe una llamada de respuesta correcta a una ejecución remota de una función duradera. Para obtener más información, consulte [sam remote callback succeed](sam-cli-command-reference-sam-remote-callback-succeed.md).

`fail`  <a name="sam-cli-command-reference-sam-remote-callback-subcommands-fail"></a>
Envía un error de devolución de llamada a una ejecución remota de una función duradera. Para obtener más información, consulte [sam remote callback fail](sam-cli-command-reference-sam-remote-callback-fail.md).

`heartbeat`  <a name="sam-cli-command-reference-sam-remote-callback-subcommands-heartbeat"></a>
Envía una llamada de retorno a una ejecución remota de una función duradera. Para obtener más información, consulte [sam remote callback heartbeat](sam-cli-command-reference-sam-remote-callback-heartbeat.md).

# sam remote callback succeed
<a name="sam-cli-command-reference-sam-remote-callback-succeed"></a>

Envíe una llamada correcta a una ejecución remota de una función duradera.

**nota**  
Este comando requiere acceso a AWS las credenciales.

## De uso
<a name="ref-sam-cli-remote-callback-succeed-usage"></a>

```
$ sam remote callback succeed CALLBACK_ID [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-remote-callback-succeed-arguments"></a>

`CALLBACK_ID`  
El identificador único de la devolución de llamada a la que se debe enviar una respuesta correcta.

## Opciones
<a name="ref-sam-cli-remote-callback-succeed-options"></a>

`-r, --result TEXT`  
Resultado correcto: carga útil en forma de cadena.

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-remote-callback-succeed-examples"></a>

Enviar una llamada de éxito sin resultado:

```
$ sam remote callback succeed my-callback-id
```

Envía una llamada de confirmación con el resultado:

```
$ sam remote callback succeed my-callback-id --result 'Task completed successfully'
```

# sam remote callback fail
<a name="sam-cli-command-reference-sam-remote-callback-fail"></a>

Envía una llamada fallida a una ejecución remota de una función duradera.

**nota**  
Este comando requiere acceso a AWS las credenciales.

## De uso
<a name="ref-sam-cli-remote-callback-fail-usage"></a>

```
$ sam remote callback fail CALLBACK_ID [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-remote-callback-fail-arguments"></a>

`CALLBACK_ID`  
El identificador único de la devolución de llamada a la que se va a enviar una respuesta de error.

## Opciones
<a name="ref-sam-cli-remote-callback-fail-options"></a>

`--error-data TEXT`  
Datos de error adicionales.

`--stack-trace TEXT`  
Apila las entradas de rastreo. Esta opción se puede especificar varias veces.

`--error-type TEXT`  
Tipo de error.

`--error-message TEXT`  
Mensaje de error detallado.

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-remote-callback-fail-examples"></a>

Envía una llamada de error sin parámetros:

```
$ sam remote callback fail my-callback-id
```

Envía una llamada de error con un mensaje de error:

```
$ sam remote callback fail my-callback-id --error-message 'Task failed'
```

Envía una llamada de error con todos los parámetros:

```
$ sam remote callback fail my-callback-id --error-message 'Task failed' --error-type 'ValidationError' --stack-trace 'at line 42' --error-data '{"code": 500}'
```

# sam remote callback heartbeat
<a name="sam-cli-command-reference-sam-remote-callback-heartbeat"></a>

Envíe un latido de llamada a una ejecución remota de una función duradera.

**nota**  
Este comando requiere acceso a AWS las credenciales.

## De uso
<a name="ref-sam-cli-remote-callback-heartbeat-usage"></a>

```
$ sam remote callback heartbeat CALLBACK_ID [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-remote-callback-heartbeat-arguments"></a>

`CALLBACK_ID`  
El identificador único de la devolución de llamada a la que se va a enviar un latido.

## Opciones
<a name="ref-sam-cli-remote-callback-heartbeat-options"></a>

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-remote-callback-heartbeat-examples"></a>

Enviar una llamada de latido:

```
$ sam remote callback heartbeat my-callback-id
```

# sam remote execution
<a name="sam-cli-command-reference-sam-remote-execution"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam remote execution`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam remote execution` comando le permite gestionar e inspeccionar las ejecuciones remotas de funciones duraderas que se ejecutan en AWS Lambda.

**nota**  
Estos comandos requieren acceso a AWS las credenciales.

## De uso
<a name="sam-cli-command-reference-sam-remote-execution-usage"></a>

```
$ sam remote execution <subcommand> <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-remote-execution-options"></a>

`--help, -h`  <a name="sam-cli-command-reference-sam-remote-execution-options-help"></a>
Muestre este mensaje y salga de él.

## Subcomandos
<a name="sam-cli-command-reference-sam-remote-execution-subcommands"></a>

`get`  <a name="sam-cli-command-reference-sam-remote-execution-subcommands-get"></a>
Obtenga detalles de una ejecución duradera. Para obtener más información, consulte [sam remote execution get](sam-cli-command-reference-sam-remote-execution-get.md).

`history`  <a name="sam-cli-command-reference-sam-remote-execution-subcommands-history"></a>
Obtenga el historial de ejecución de una función duradera. Para obtener más información, consulte [sam remote execution history](sam-cli-command-reference-sam-remote-execution-history.md).

`stop`  <a name="sam-cli-command-reference-sam-remote-execution-subcommands-stop"></a>
Detenga la ejecución duradera de una función. Para obtener más información, consulte [sam remote execution stop](sam-cli-command-reference-sam-remote-execution-stop.md).

# sam remote execution get
<a name="sam-cli-command-reference-sam-remote-execution-get"></a>

Recupere los detalles de la ejecución de una función duradera específica de AWS Lambda.

El ARN de ejecución debe tener el formato devuelto por Invoke o encontrarse en los registros de ejecución.

**nota**  
Este comando requiere acceso a AWS las credenciales.

## De uso
<a name="ref-sam-cli-remote-execution-get-usage"></a>

```
$ sam remote execution get DURABLE_EXECUTION_ARN [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-remote-execution-get-arguments"></a>

`DURABLE_EXECUTION_ARN`  
El nombre del recurso de Amazon (ARN) de la ejecución de la función duradera de la que se van a recuperar los detalles.

## Opciones
<a name="ref-sam-cli-remote-execution-get-options"></a>

`--format [summary|json]`  
Formato de salida. Valor predeterminado: `summary`

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-remote-execution-get-examples"></a>

Obtenga los detalles de la ejecución con el formato de resumen predeterminado:

```
$ sam remote execution get 'arn:aws:lambda:us-east-1:123456789012:function:my-function:$LATEST/durable-execution/c63eec67-3415-4eb4-a495-116aa3a86278/1d454231-a3ad-3694-aa03-c917c175db55'
```

Obtenga los detalles de la ejecución en formato JSON:

```
$ sam remote execution get 'arn:aws:lambda:us-east-1:123456789012:function:my-function:$LATEST/durable-execution/c63eec67-3415-4eb4-a495-116aa3a86278/1d454231-a3ad-3694-aa03-c917c175db55' --format json
```

**nota**  
Debe asegurarse de que los caracteres de control del ARN de ejecución `$` se escapen correctamente cuando utilice comandos de shell.

# sam remote execution history
<a name="sam-cli-command-reference-sam-remote-execution-history"></a>

Recupere el historial de ejecución de una función duradera específica de AWS Lambda.

El ARN de ejecución debe tener el formato devuelto StartDurableExecution o encontrado en los registros de ejecución.

**nota**  
Este comando requiere acceso a AWS las credenciales.

## De uso
<a name="ref-sam-cli-remote-execution-history-usage"></a>

```
$ sam remote execution history DURABLE_EXECUTION_ARN [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-remote-execution-history-arguments"></a>

`DURABLE_EXECUTION_ARN`  
El nombre del recurso de Amazon (ARN) de la ejecución duradera de la función para recuperar el historial.

## Opciones
<a name="ref-sam-cli-remote-execution-history-options"></a>

`--format [table|json]`  
Formato de salida. Valor predeterminado: `table`

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-remote-execution-history-examples"></a>

Obtenga el historial de ejecuciones con el formato de tabla predeterminado:

```
$ sam remote execution history arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id
```

Obtenga el historial de ejecuciones en formato JSON:

```
$ sam remote execution history arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id --format json
```

# sam remote execution stop
<a name="sam-cli-command-reference-sam-remote-execution-stop"></a>

Detenga la ejecución duradera de una función en AWS Lambda.

El ARN de ejecución debe tener el formato devuelto StartDurableExecution o encontrado en los registros de ejecución.

**nota**  
Este comando requiere acceso a AWS las credenciales.

## De uso
<a name="ref-sam-cli-remote-execution-stop-usage"></a>

```
$ sam remote execution stop DURABLE_EXECUTION_ARN [OPTIONS]
```

## Argumentos necesarios
<a name="ref-sam-cli-remote-execution-stop-arguments"></a>

`DURABLE_EXECUTION_ARN`  
El nombre del recurso de Amazon (ARN) de la ejecución duradera de la función que se va a detener.

## Opciones
<a name="ref-sam-cli-remote-execution-stop-options"></a>

`--error-message TEXT`  
Mensaje de error asociado a la ejecución detenida.

`--error-type TEXT`  
Tipo de error que se va a asociar a la ejecución detenida.

`--error-data TEXT`  
Datos de error que se van a asociar a la ejecución detenida.

`--stack-trace TEXT`  
Apila las entradas de rastreo. Esta opción se puede especificar varias veces.

`--region TEXT`  
Defina la AWS región del servicio (por ejemplo,`us-east-1`).

`--profile TEXT`  
Seleccione un perfil específico de su archivo de credenciales para obtener AWS las credenciales.

`--config-env TEXT`  
Nombre del entorno que especifica los valores de los parámetros predeterminados en el archivo de configuración. Valor predeterminado: `default`

`--config-file TEXT`  
Archivo de configuración que contiene los valores de los parámetros predeterminados. Valor predeterminado: `samconfig.toml`

`--save-params`  
Guarde los parámetros proporcionados a través de la línea de comandos en el archivo de configuración.

`--beta-features / --no-beta-features`  
Activar/desactivar las funciones beta.

`--debug`  
Active el registro de depuración para imprimir los mensajes de depuración generados por la AWS SAM CLI y mostrar las marcas de tiempo.

`-h, --help`  
Muestra este mensaje y sale.

## Ejemplos
<a name="ref-sam-cli-remote-execution-stop-examples"></a>

Detenga la ejecución sin detalles del error:

```
$ sam remote execution stop arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id
```

Detenga la ejecución con un mensaje de error y escriba:

```
$ sam remote execution stop arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id --error-message "Execution cancelled" --error-type "UserCancellation"
```

Detenga la ejecución con todos los detalles del error y el seguimiento de la pila:

```
$ sam remote execution stop arn:aws:lambda:us-east-1:123456789012:function:MyFunction:$LATEST/durable-execution/my-execution-name/my-execution-id --error-message "Task failed" --error-type "TaskFailure" --error-data '{"reason":"timeout"}' --stack-trace "at function1()" --stack-trace "at function2()"
```

# sam remote invoke
<a name="sam-cli-command-reference-remote-invoke"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam remote invoke`.
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam remote invoke` comando, consulte[Introducción a las pruebas en la nube con sam remote invoke](using-sam-cli-remote-invoke.md).

El comando `sam remote invoke` invoca los recursos compatibles en Nube de AWS.

## De uso
<a name="sam-cli-command-reference-remote-invoke-usage"></a>

```
$ sam remote invoke <arguments> <options>
```

## Argumentos
<a name="sam-cli-command-reference-remote-invoke-args"></a>

**Resource ID (ID de recurso)**  <a name="sam-cli-command-reference-remote-invoke-args-resource-id"></a>
El ID del recurso admitido a invocar.  
Este argumento acepta los valores siguientes:  
+ El **Nombre de recurso de Amazon (ARN)**: el ARN del recurso.
**sugerencia**  
Usa `sam list stack-outputs --stack-name <stack-name>` para obtener el ARN de sus recursos.
+ **ID lógico**: el ID lógico del recurso. También debe proporcionar el nombre de la AWS CloudFormation pila mediante la `--stack-name` opción.
+ **ID físico**: el ID físico del recurso. Este ID se crea al implementar un recurso utilizando CloudFormation.
**sugerencia**  
Usa `sam list resources --stack-name <stack-name>` para obtener el ID físico de sus recursos.  
**Cuando proporciona un ARN o una identificación física:**  
Si proporcionas un ARN o un ID físico, no proporciones un nombre de pila. Cuando el nombre de la pila se proporciona mediante la `--stack-name` opción, o cuando el nombre de la pila se define en el archivo de configuración, AWS SAM CLI procesará automáticamente el ID de recurso como un valor de ID lógico de la CloudFormation pila.  
**Cuando no proporciona un ID de recurso:**  
Si no proporciona un ID de recurso, pero sí proporciona un nombre de pila con la `--stack-name` opción, la AWS SAM CLI intentará invocar automáticamente un recurso de la CloudFormation pila mediante la siguiente lógica:  

1.  AWS SAM CLIIdentificará los tipos de recursos en el siguiente orden y pasará al siguiente paso una vez que el tipo de recurso se encuentre en la pila:

   1. Lambda

   1. Step Functions

   1. Amazon SQS

   1. Kinesis Data Streams

1. Si el tipo de recurso tiene un solo recurso en tu pila, lo AWS SAM CLI invocará. Si hay varios recursos del mismo tipo en tu pila, se AWS SAM CLI mostrará un error.
Los siguientes son ejemplos de lo que AWS SAM CLI hará:  
+ **Pila que contiene dos funciones de Lambda y una cola de Amazon SQS**: AWS SAM CLI localizará el tipo de recurso de Lambda y devolverá un error, ya que la pila contiene más de una función de Lambda.
+ **Pila que contiene una función Lambda y dos aplicaciones de Amazon Kinesis Data Streams**: AWS SAM CLI localizará la función Lambda y la invocará, ya que la pila contiene un único recurso de Lambda.
+ **Pila que contiene una sola cola de Amazon SQS y dos aplicaciones de Kinesis Data Streams**: localizará la cola de Amazon SQS y AWS SAM CLI la invocará, ya que la pila contiene una sola cola de Amazon SQS.

## Opciones
<a name="sam-cli-command-reference-remote-invoke-options"></a>

`--beta-features | --no-beta-features`  <a name="sam-cli-command-reference-remote-invoke-options-beta-features"></a>
Permitir o denegar las características beta.

`--config-env TEXT`  <a name="sam-cli-command-reference-remote-invoke-options-config-env"></a>
Especifica el entorno que se va a utilizar en el archivo de configuración de la CLI de AWS SAM.  
*Valor predeterminado*: `default`

`--config-file FILENAME`  <a name="sam-cli-command-reference-remote-invoke-options-config-file"></a>
Especifica la ruta y el nombre del archivo de configuración.  
Para obtener más información sobre los archivos de configuración, consulta [Configuración de la AWS SAM de CLI](using-sam-cli-configure.md).  
*Predeterminado*: `samconfig.toml` en la raíz del directorio del proyecto. 

`--debug`  <a name="sam-cli-command-reference-remote-invoke-options-debug"></a>
Activar el registro de depuración. Esto imprime los mensajes de depuración y las marcas temporales generados por AWS SAMCLI.

`--event, -e TEXT`  <a name="sam-cli-command-reference-remote-invoke-options-event"></a>
El evento que se va a enviar al recurso de destino.

`--event-file FILENAME`  <a name="sam-cli-command-reference-remote-invoke-options-event-file"></a>
La ruta a un archivo que contiene el evento que se va a enviar al recurso de destino.

`--help, -h`  <a name="sam-cli-command-reference-remote-invoke-options-help"></a>
Muestre el mensaje de ayuda y salga.

`--output [ text | json ]`  <a name="sam-cli-command-reference-remote-invoke-options-output"></a>
Genera los resultados de la invocación en un formato de salida específico.  
`json`: los metadatos de la solicitud y la respuesta del recurso se devuelven en una estructura JSON. La respuesta contiene el resultado completo del SDK.  
`text`: los metadatos de la solicitud se devuelven en una estructura de texto. La respuesta del recurso se devuelve en el formato de salida del recurso invocado.

`--parameter`  <a name="sam-cli-command-reference-remote-invoke-options-parameter"></a>
Parámetros [https://boto3.amazonaws.com/v1/documentation/api/latest/index.html](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) adicionales que puede pasar al recurso que se está invocando.    
**Amazon Kinesis Data Streams**  <a name="sam-cli-command-reference-remote-invoke-options-parameter-kinesis"></a>
Los parámetros adicionales siguientes se pueden utilizar para incluir un registro en el flujo de datos de Kinesis:  
+ `ExplicitHashKey='string'`
+ `PartitionKey='string'`
+ `SequenceNumberForOrdering='string'`
+ `StreamARN='string'`
Para obtener una descripción de cada parámetro, consulta [Kinesis.Client.put\$1record](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kinesis/client/put_record.html).  
**AWS Lambda**  <a name="sam-cli-command-reference-remote-invoke-options-parameter-lambda"></a>
Los siguientes parámetros adicionales se pueden usar para invocar un recurso de Lambda y recibir una respuesta almacenada en búfer:  
+ `ClientContext='base64-encoded string'`
+ `InvocationType='[ DryRun | Event | RequestResponse ]'`
+ `LogType='[ None | Tail ]'`
+ `Qualifier='string'`
Los siguientes parámetros adicionales se pueden usar para invocar un recurso de Lambda con transmisión de respuesta:  
+ `ClientContext='base64-encoded string'`
+ `InvocationType='[ DryRun | RequestResponse ]'`
+ `LogType='[ None | Tail ]'`
+ `Qualifier='string'`
Para ver una descripción de los parámetros, consulta lo siguiente:  
+ Lambda con respuesta almacenada en búfer: [Lambda.Client.invoke](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/lambda/client/invoke.html)
+ Lambda con transmisión de respuestas: [Lambda.Client.invoke\$1with\$1response\$1stream](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/lambda/client/invoke_with_response_stream.html)  
**Amazon Simple Queue Service (Amazon SQS)**  <a name="sam-cli-command-reference-remote-invoke-options-parameter-sqs"></a>
Los parámetros adicionales siguientes se pueden utilizar para enviar un mensaje a una cola de Amazon SQS:  
+ `DelaySeconds=integer`
+ `MessageAttributes='json string'`
+ `MessageDeduplicationId='string'`
+ `MessageGroupId='string'`
+ `MessageSystemAttributes='json string'`
Para obtener una descripción de cada parámetro, consulta [SQS.Client.send\$1message](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sqs/client/send_message.html).  
**AWS Step Functions**  <a name="sam-cli-command-reference-remote-invoke-options-parameter-sf"></a>
Los parámetros adicionales siguientes se pueden utilizar para iniciar la ejecución de una máquina de estado:  
+ `name='string'`
+ `traceHeader='string'`
Para obtener una descripción de cada parámetro, consulta [SFN.Client.start\$1execution](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/stepfunctions/client/start_execution.html).

`--profile TEXT`  <a name="sam-cli-command-reference-remote-invoke-options-profile"></a>
El perfil específico del archivo de credenciales para obtener AWS las credenciales.

`--region TEXT`  <a name="sam-cli-command-reference-remote-invoke-options-region"></a>
El Región de AWS del recurso. Por ejemplo, `us-east-1`.

`--stack-name TEXT`  <a name="sam-cli-command-reference-remote-invoke-options-stack-name"></a>
El nombre de la CloudFormation pila a la que pertenece el recurso.

`--tenant-id TEXT`  <a name="ref-sam-cli-local-invoke-options-tenancyconfig"></a>
El ID de inquilino de las funciones Lambda multiusuario. Se utiliza para garantizar el aislamiento informático entre distintos inquilinos. Se requiere cuando se invocan funciones configuradas con el modo de aislamiento de inquilinos.

`--test-event-name NAME`  <a name="sam-cli-command-reference-remote-invoke-options-test-event-name"></a>
El nombre del evento de prueba compartible y pasarlo a la función de Lambda.  
Esta opción solo admite funciones de Lambda.

## Ejemplo
<a name="sam-cli-command-reference-remote-invoke-examples"></a>

El siguiente ejemplo invoca los recursos compatibles de la AWS nube y activa el registro de depuración, que imprime los mensajes de depuración y las marcas de tiempo generados por: AWS SAMCLI

```
$ sam remote invoke--debug
```

# sam remote test-event
<a name="sam-cli-command-reference-remote-test-event"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam remote test-event`.
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam remote test-event` comando, consulte[Introducción a las pruebas en la nube con sam remote test-event](using-sam-cli-remote-test-event.md).

El `sam remote test-event` comando interactúa con los eventos de prueba que se pueden compartir en el registro de EventBridge esquemas de Amazon.

## De uso
<a name="sam-cli-command-reference-remote-test-event-usage"></a>

```
$ sam remote test-event <options> <subcommand>
```

## Opciones
<a name="sam-cli-command-reference-remote-test-event-options"></a>

`--help, -h`  <a name="sam-cli-command-reference-remote-invoke-options-help"></a>
Muestre el mensaje de ayuda y salga.

## Subcomandos
<a name="sam-cli-command-reference-remote-test-event-subcommands"></a>

`delete`  
Elimine un evento de prueba que se pueda compartir del registro del EventBridge esquema. Para obtener más información de referencia, consulta [sam remote test-event delete](sam-cli-command-reference-remote-test-event-delete.md).

`get`  
Obtenga un evento de prueba que se pueda compartir del registro de EventBridge esquemas. Para obtener más información de referencia, consulta [sam remote test-event get](sam-cli-command-reference-remote-test-event-get.md).

`list`  
Enumere los eventos de prueba existentes que se pueden compartir para una AWS Lambda función. Para obtener más información de referencia, consulta [sam remote test-event list](sam-cli-command-reference-remote-test-event-list.md).

`put`  
Guarde un evento de un archivo local en el registro de EventBridge esquemas. Para obtener más información de referencia, consulta [sam remote test-event put](sam-cli-command-reference-remote-test-event-put.md).

# sam remote test-event delete
<a name="sam-cli-command-reference-remote-test-event-delete"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam remote test-event delete` subcomando Command Line Interface (AWS SAMCLI).
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam remote test-event` comando, consulte[Introducción a las pruebas en la nube con sam remote test-event](using-sam-cli-remote-test-event.md).

El `sam remote test-event delete` subcomando elimina un evento de prueba que se puede compartir del registro de esquemas de Amazon EventBridge .

## De uso
<a name="sam-cli-command-reference-remote-test-event-delete-usage"></a>

```
$ sam remote test-event delete <arguments> <options>
```

## Argumentos
<a name="sam-cli-command-reference-remote-test-event-delete-args"></a>

**Resource ID (ID de recurso)**  <a name="sam-cli-command-reference-remote-test-event-delete-args-resource-id"></a>
El ID de la AWS Lambda función asociada al evento de prueba que se puede compartir.  
Si proporciona un identificador lógico, también debe proporcionar un valor para la AWS CloudFormation pila asociada a la función Lambda mediante la `--stack-name` opción.  
*Valores válidos*: el identificador lógico o el ARN del recurso ARN.

## Opciones
<a name="sam-cli-command-reference-remote-test-event-delete-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-remote-test-event-delete-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-remote-test-event-delete-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--help, -h`  <a name="sam-cli-command-reference-remote-test-event-delete-options-help"></a>
Muestre el mensaje de ayuda y salga.

`--name TEXT`  <a name="sam-cli-command-reference-remote-test-event-delete-options-name"></a>
El nombre del evento de prueba compartible y se va a eliminar.

`--stack-name TEXT`  <a name="sam-cli-command-reference-remote-test-event-delete-options-stack-name"></a>
El nombre de la CloudFormation pila asociada a la función Lambda.  
Esta opción es obligatoria si proporciona el ID lógico de la función de Lambda como argumento.

# sam remote test-event get
<a name="sam-cli-command-reference-remote-test-event-get"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam remote test-event get` subcomando Command Line Interface (AWS SAMCLI).
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam remote test-event` comando, consulte[Introducción a las pruebas en la nube con sam remote test-event](using-sam-cli-remote-test-event.md).

El `sam remote test-event get` subcomando obtiene un evento de prueba que se puede compartir del registro de EventBridge esquemas de Amazon.

## De uso
<a name="sam-cli-command-reference-remote-test-event-get-usage"></a>

```
$ sam remote test-event get <arguments> <options>
```

## Argumentos
<a name="sam-cli-command-reference-remote-test-event-get-args"></a>

**Resource ID (ID de recurso)**  <a name="sam-cli-command-reference-remote-test-event-get-args-resource-id"></a>
El ID de la AWS Lambda función asociada al evento de prueba que se puede compartir y que se va a obtener.  
Si proporciona un identificador lógico, también debe proporcionar un valor para la AWS CloudFormation pila asociada a la función Lambda mediante la `--stack-name` opción.  
*Valores válidos*: el identificador lógico o el ARN del recurso ARN.

## Opciones
<a name="sam-cli-command-reference-remote-test-event-get-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-remote-test-event-get-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-remote-test-event-get-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--help, -h`  <a name="sam-cli-command-reference-remote-test-event-get-options-help"></a>
Muestre el mensaje de ayuda y salga.

`--name TEXT`  <a name="sam-cli-command-reference-remote-test-event-get-options-name"></a>
El nombre del evento de prueba compartible y que se va a obtener.

`--output-file FILENAME`  <a name="sam-cli-command-reference-remote-test-event-get-options-output-file"></a>
La ruta y el nombre del archivo en el que se guardará el evento en su máquina local.  
Si no proporciona esta opción, AWS SAM CLI mostrará el contenido del evento de prueba que se puede compartir en su consola.

`--stack-name TEXT`  <a name="sam-cli-command-reference-remote-test-event-get-options-stack-name"></a>
El nombre de la CloudFormation pila asociada a la función Lambda.  
Esta opción es obligatoria si proporciona el ID lógico de la función de Lambda como argumento.

# sam remote test-event list
<a name="sam-cli-command-reference-remote-test-event-list"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam remote test-event list` subcomando Command Line Interface (AWS SAMCLI).
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam remote test-event` comando, consulte[Introducción a las pruebas en la nube con sam remote test-event](using-sam-cli-remote-test-event.md).

El `sam remote test-event list` subcomando muestra los eventos de prueba que se pueden compartir existentes para una AWS Lambda función específica del registro de EventBridge esquemas de Amazon.

## De uso
<a name="sam-cli-command-reference-remote-test-event-list-usage"></a>

```
$ sam remote test-event list <arguments> <options>
```

## Argumentos
<a name="sam-cli-command-reference-remote-test-event-list-args"></a>

**Resource ID (ID de recurso)**  <a name="sam-cli-command-reference-remote-test-event-list-args-resource-id"></a>
El ID de la función de Lambda asociada a los eventos de prueba que se pueden compartir.  
Si proporciona un identificador lógico, también debe proporcionar un valor para la AWS CloudFormation pila asociada a la función Lambda mediante la `--stack-name` opción.  
*Valores válidos*: el identificador lógico o el ARN del recurso ARN.

## Opciones
<a name="sam-cli-command-reference-remote-test-event-list-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-remote-test-event-list-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-remote-test-event-list-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--help, -h`  <a name="sam-cli-command-reference-remote-test-event-list-options-help"></a>
Muestre el mensaje de ayuda y salga.

`--stack-name TEXT`  <a name="sam-cli-command-reference-remote-test-event-list-options-stack-name"></a>
El nombre de la CloudFormation pila asociada a la función Lambda.  
Esta opción es obligatoria si proporciona el ID lógico de la función de Lambda como argumento.

## Ejemplos
<a name="sam-cli-command-reference-remote-test-event-list-examples"></a>

Para ver ejemplos sobre el uso de este comando, consulte [Enumeración de eventos de prueba compartibles](using-sam-cli-remote-test-event.md#using-sam-cli-remote-test-event-use-list).

# sam remote test-event put
<a name="sam-cli-command-reference-remote-test-event-put"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model `sam remote test-event put` subcomando Command Line Interface (AWS SAMCLI).
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI `sam remote test-event` comando, consulte[Introducción a las pruebas en la nube con sam remote test-event](using-sam-cli-remote-test-event.md).

El `sam remote test-event put` subcomando guarda un evento de prueba que se puede compartir desde su máquina local en el registro de EventBridge esquemas de Amazon.

## De uso
<a name="sam-cli-command-reference-remote-test-event-put-usage"></a>

```
$ sam remote test-event put <arguments> <options>
```

## Argumentos
<a name="sam-cli-command-reference-remote-test-event-put-args"></a>

**Resource ID (ID de recurso)**  <a name="sam-cli-command-reference-remote-test-event-put-args-resource-id"></a>
El ID de la AWS Lambda función asociada al evento de prueba que se puede compartir.  
Si proporciona un identificador lógico, también debe proporcionar un valor para la AWS CloudFormation pila asociada a la función Lambda mediante la `--stack-name` opción.  
*Valores válidos*: el identificador lógico o el ARN del recurso ARN.

## Opciones
<a name="sam-cli-command-reference-remote-test-event-put-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-remote-test-event-put-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-remote-test-event-put-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--file FILENAME`  <a name="sam-cli-command-reference-remote-test-event-put-options-file"></a>
La ruta del archivo y el nombre del evento en su máquina local.  
Proporciona `-` como valor del nombre del archivo a leer de `stdin`.  
Esta opción es obligatoria.

`--force`, `-f`  <a name="sam-cli-command-reference-remote-test-event-put-options-force"></a>
Sobrescriba un evento de prueba compartible con el mismo nombre.

`--help, -h`  <a name="sam-cli-command-reference-remote-test-event-put-options-help"></a>
Muestre el mensaje de ayuda y salga.

`--name TEXT`  <a name="sam-cli-command-reference-remote-test-event-put-options-name"></a>
El nombre con el que se guardará el evento de prueba compartible.  
Si existe un evento de prueba que se pueda compartir con el mismo nombre en el registro del EventBridge esquema, no AWS SAM CLI lo sobrescribirá. Para sobrescribirlo, añada la opción de `--force`.

`--output-file FILENAME`  <a name="sam-cli-command-reference-remote-test-event-put-options-output-file"></a>
La ruta y el nombre del archivo en el que se guardará el evento en su máquina local.  
Si no incluyes esta opción, AWS SAM CLI se mostrará el contenido del evento de prueba que se puede compartir en tu consola.

`--stack-name TEXT`  <a name="sam-cli-command-reference-remote-test-event-put-options-stack-name"></a>
El nombre de la CloudFormation pila asociada a la función Lambda.  
Esta opción es obligatoria si proporciona el ID lógico de la función de Lambda como argumento.

## Ejemplo
<a name="sam-cli-command-reference-remote-test-event-put-examples"></a>

Para ver un ejemplo sobre el uso de este comando, consulte [Almacenamiento de eventos de prueba compartibles](using-sam-cli-remote-test-event.md#using-sam-cli-remote-test-event-use-put).

# sam sync
<a name="sam-cli-command-reference-sam-sync"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam sync`.
+ Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)
+ Para obtener documentación sobre el uso del AWS SAMCLI, consulte[AWS SAM CLI](using-sam-cli.md).

El comando `sam sync` sincroniza los cambios de la aplicación local con Nube de AWS.

## De uso
<a name="sam-cli-command-reference-sam-sync-usage"></a>

```
$ sam sync <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-sync-options"></a>

`--base-dir, -s DIRECTORY`  <a name="sam-cli-command-reference-sam-sync-options-base-dir"></a>
Resuelve las rutas relativas al código fuente de la función o capa con respecto a este directorio. Utiliza esta opción para cambiar la forma en que se resuelven las rutas relativas a las carpetas de código fuente. De forma predeterminada, las rutas relativas se resuelven con respecto a la ubicación de la AWS SAM plantilla.  
Además de los recursos de la aplicación o pila raíz que esté creando, esta opción también se aplica a las aplicaciones o pilas anidadas. Además, esta opción se aplica a los siguientes tipos y propiedades de recursos:  
+ Tipo de recurso: `AWS::Serverless::Function` Propiedad: `CodeUri`
+ Tipo de recurso: `AWS::Serverless::Function` Atributo de recurso: `Metadata` Entrada: `DockerContext`
+ Tipo de recurso: `AWS::Serverless::LayerVersion` Propiedad: `ContentUri`
+ Tipo de recurso: `AWS::Lambda::Function` Propiedad: `Code`
+ Tipo de recurso: `AWS::Lambda::LayerVersion` Propiedad: `Content`

`--build-image TEXT`  <a name="sam-cli-command-reference-sam-sync-options-build-image"></a>
El URI de la [imagen de contenedor](serverless-image-repositories.md#serverless-image-repository-uris) que quiere utilizar al crear la aplicación. De forma predeterminada, AWS SAM utiliza el URI del repositorio de imágenes del contenedor de [Amazon Elastic Container Registry (Amazon ECR) Public](https://docs.aws.amazon.com/AmazonECR/latest/public/what-is-ecr.html). Especifica esta opción para utilizar una imagen diferente.  
Puede utilizar esta opción varias veces con un solo comando. Cada opción acepta una cadena o un par clave-valor.  
+ **Cadena**: especifica el URI de la imagen del contenedor que utilizarán todos los recursos de la aplicación. A continuación, se muestra un ejemplo:

  ```
  $ sam sync --build-image amazon/aws-sam-cli-build-image-python3.8
  ```
+ **Par clave-valor**: especifica el nombre del recurso como clave y el URI de la imagen del contenedor que se utilizará con ese recurso como valor. Utiliza este formato para especificar un URI de imagen de contenedor diferente para cada recurso de la aplicación. A continuación, se muestra un ejemplo:

  ```
  $ sam sync --build-image Function1=amazon/aws-sam-cli-build-image-python3.8
  ```
Esta opción solo se aplica si se especifica la opción `--use-container`; de lo contrario, se producirá un error.

`--build-in-source | --no-build-in-source`  <a name="sam-cli-command-reference-sam-sync-options-build-in-source"></a>
Proporciona `--build-in-source` para compilar el proyecto directamente en la carpeta de origen.  
La opción `--build-in-source` admite los siguientes tiempos de ejecución y métodos de compilación:  
+ **Tiempos de ejecución**: cualquier tiempo de ejecución Node.js compatible con la opción `sam init --runtime`.
+ **Métodos de compilación**: `Makefile`, `esbuild`.
La opción `--build-in-source` no es compatible con las siguientes opciones:  
+ `--use-container `
*Valor predeterminado*: `--no-build-in-source`

`--capabilities LIST`  <a name="sam-cli-command-reference-sam-sync-options-capabilities"></a>
Una lista de capacidades que especifique para CloudFormation permitir la creación de determinadas pilas. Algunas plantillas de pila pueden incluir recursos que pueden afectar a los permisos de tu Cuenta de AWS. Por ejemplo, mediante la creación de nuevos usuarios AWS Identity and Access Management (IAM). Especifica esta opción para anular los valores predeterminados. Entre los valores válidos se incluyen:  
+ CAPABILITY\$1IAM
+ CAPABILITY\$1NAMED\$1IAM
+ CAPABILITY\$1RESOURCE\$1POLICY
+ CAPABILITY\$1AUTO\$1EXPAND
*Valores predeterminados*: `CAPABILITY_NAMED_IAM` y `CAPABILITY_AUTO_EXPAND`

`--code`  <a name="sam-cli-command-reference-sam-sync-options-code"></a>
De forma predeterminada, AWS SAM sincroniza todos los recursos de la aplicación. Especifica esta opción para sincronizar solo los recursos de código, que incluyen lo siguiente:  
+ `AWS::Serverless::Function`
+ `AWS::Lambda::Function`
+ `AWS::Serverless::LayerVersion`
+ `AWS::Lambda::LayerVersion`
+ `AWS::Serverless::Api`
+ `AWS::ApiGateway::RestApi`
+ `AWS::Serverless::HttpApi`
+ `AWS::ApiGatewayV2::Api`
+ `AWS::Serverless::StateMachine`
+ `AWS::StepFunctions::StateMachine`
Para sincronizar los recursos de código, AWS SAM utiliza el AWS servicio APIs directamente, en lugar de desplegarlo directamente. AWS CloudFormation Para actualizar tu CloudFormation stack, ejecuta **sam sync --watch** o**sam deploy**.

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-sync-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-sync-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--dependency-layer | --no-dependency-layer`  <a name="sam-cli-command-reference-sam-sync-options-dependency-layer"></a>
Especifica si se deben separar las dependencias de las funciones individuales en otra capa para acelerar el proceso de sincronización.  
*Valor predeterminado*: `--dependency-layer`

`--image-repository TEXT`  <a name="sam-cli-command-reference-sam-sync-options-image-repository"></a>
El nombre del repositorio Amazon Elastic Container Registry (Amazon ECR) en el que este comando carga la imagen de la función. Es necesario para las funciones declaradas con el tipo de paquete `Image`.

`--image-repositories TEXT`  <a name="sam-cli-command-reference-sam-sync-options-image-repositories"></a>
Una asignación de funciones a su URI de repositorio de Amazon ECR. Haga referencia a las funciones por su ID lógico. A continuación, se muestra un ejemplo:  

```
$ sam sync --image-repositories Function1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repo
```
Puede especificar esta opción varias veces con un solo comando.

`--kms-key-id TEXT`  <a name="sam-cli-command-reference-sam-sync-options-kms-key-id"></a>
El ID de una clave AWS Key Management Service (AWS KMS) que se utiliza para cifrar los artefactos que se encuentran en reposo en el bucket de Amazon S3. Si no especifica esta opción, utilizará claves de cifrado administradas por Amazon S3. AWS SAM 

`--metadata`  <a name="sam-cli-command-reference-sam-sync-options-metadata"></a>
Un mapa de metadatos para adjuntar a todos los artefactos a los que haga referencia en la plantilla.

`--notification-arns LIST`  <a name="sam-cli-command-reference-sam-sync-options-notification-arns"></a>
Una lista de los ARNs temas del Amazon Simple Notification Service (Amazon SNS) asociados a la CloudFormation pila.

`--no-use-container`  <a name="ref-sam-cli-sync-options-no-use-container"></a>
Una opción que permite usar el kit de herramientas de IDE para establecer el comportamiento predeterminado.

`--parameter-overrides`  <a name="sam-cli-command-reference-sam-sync-options-parameter-overrides"></a>
Una cadena que contiene anulaciones de CloudFormation parámetros codificadas como pares clave-valor. Usa el mismo formato que (). AWS Command Line Interface AWS CLI El formato de la CLI de AWS SAM es de palabras clave y de valor explícitas, y cada modificación está separada por un espacio. A continuación, se incluyen dos ejemplos:  
+ `--parameter-overrides ParameterKey=hello,ParameterValue=world`
+ `--parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana`

`--resource TEXT`  <a name="sam-cli-command-reference-sam-sync-options-resource"></a>
Especifica el tipo de recurso que se va a sincronizar. Para sincronizar varios recursos, puede especificar esta opción varias veces. Esta opción es compatible con la opción `--code`. El valor debe ser uno de los recursos que se enumeran en `--code`. Por ejemplo, `--resource AWS::Serverless::Function --resource AWS::Serverless::LayerVersion`.

`--resource-id TEXT`  <a name="sam-cli-command-reference-sam-sync-options-resource-id"></a>
Especifica el ID del recurso que se va a sincronizar. Para sincronizar varios recursos, puede especificar esta opción varias veces. Esta opción es compatible con la opción `--code`. Por ejemplo, `--resource-id Function1 --resource-id Function2`.

`--role-arn TEXT`  <a name="sam-cli-command-reference-sam-sync-options-role-arn"></a>
El nombre de recurso de Amazon (ARN) de una función de IAM que se CloudFormation asume al aplicar el conjunto de cambios.

`--s3-bucket TEXT`  <a name="sam-cli-command-reference-sam-sync-options-s3-bucket"></a>
El nombre del depósito de Amazon Simple Storage Service (Amazon S3) en el que este comando carga CloudFormation la plantilla. Si la plantilla tiene más de 51 200 bytes, se requiere la opción `--s3-bucket` o la `--resolve-s3`. Si especificas ambas opciones `--s3-bucket` y `--resolve-s3`, se producirá un error.

`--s3-prefix TEXT`  <a name="sam-cli-command-reference-sam-sync-options-s3-prefix"></a>
El prefijo que se agrega a los nombres de los artefactos que carga en el bucket de Amazon S3. El nombre del prefijo es un nombre de ruta (nombre de carpeta) del bucket de Amazon S3. Esto se aplica únicamente a las funciones declaradas con el tipo de paquete `Zip`.

`--save-params`  <a name="sam-cli-command-reference-sam-sync-options-save-params"></a>
Guarda los parámetros que proporciona en la línea de comandos en el archivo de AWS SAM configuración.

`--skip-deploy-sync | --no-skip-deploy-sync`  <a name="sam-cli-command-reference-sam-sync-options-skip-deploy-sync"></a>
Especifica `--skip-deploy-sync` para omitir la sincronización inicial de la infraestructura si no es necesaria. AWS SAMCLIComparará su AWS SAM plantilla local con la CloudFormation plantilla desplegada y realizará una implementación solo si se detecta un cambio.  
`--no-skip-deploy-sync`Especifica que se debe realizar un CloudFormation despliegue cada vez `sam sync` que se ejecute.  
Para obtener más información, consulte [Omita la CloudFormation implementación inicial](using-sam-cli-sync.md#using-sam-cli-sync-options-skip-deploy-sync).  
*Valor predeterminado*: `--skip-deploy-sync`

`--stack-name TEXT`  <a name="sam-cli-command-reference-sam-sync-options-stack-name"></a>
El nombre de la CloudFormation pila de la aplicación.  
Esta opción es obligatoria.

`--tags LIST`  <a name="sam-cli-command-reference-sam-sync-options-tags"></a>
Una lista de etiquetas para asociarlas a la pila que se crea o actualiza. CloudFormation también propaga estas etiquetas a los recursos de la pila que las admiten.

`--template-file, --template, -t PATH`  <a name="sam-cli-command-reference-sam-sync-options-template-file"></a>
La ruta y el nombre del archivo donde se encuentra la AWS SAM plantilla.  
Si especifica esta opción, solo se AWS SAM despliega la plantilla y los recursos locales a los que apunta.

`--use-container, -u`  <a name="sam-cli-command-reference-sam-sync-options-use-container"></a>
Si sus funciones dependen de paquetes que tienen dependencias compiladas de forma nativa, utilice esta opción para crear la función dentro de un AWS Lambda contenedor similar. Docker  
Actualmente, esta opción no es compatible con `--dependency-layer`. Si usas `--use-container` con `--dependency-layer`, la CLI de AWS SAM le informará y continuará con `--no-dependency-layer`.

`--watch`  <a name="sam-cli-command-reference-sam-sync-options-watch"></a>
Inicia un proceso que vigila la aplicación local en busca de cambios y los sincroniza automáticamente con la. Nube de AWS De forma predeterminada, al especificar esta opción, AWS SAM sincroniza todos los recursos de la aplicación a medida que los actualiza. Con esta opción, AWS SAM realiza un CloudFormation despliegue inicial. A continuación, AWS SAM utiliza el AWS servicio APIs para actualizar los recursos de código. AWS SAM CloudFormation se utiliza para actualizar los recursos de infraestructura al actualizar la AWS SAM plantilla.

`--watch-exclude TEXT`  <a name="sam-cli-command-reference-sam-sync-options-watch-exclude"></a>
Excluye un archivo o carpeta de ser observado para cambios de archivo. Para utilizar esta opción, también se debe proporcionar `--watch`.  
Esta opción recibe un par de clave-valor:  
+ **Clave**: el identificador lógico de una función de Lambda en la aplicación.
+ **Valor**: el nombre del archivo o la carpeta asociados que se van a excluir.
Al actualizar los archivos o carpetas especificados en la `--watch-exclude` opción, no AWS SAM CLI se iniciará la sincronización. Sin embargo, cuando una actualización de otros archivos o carpetas inicie una sincronización, estos archivos o carpetas se incluirán en dicha sincronización.  
Puede proporcionar esta opción varias veces en un mismo comando.

## Ejemplos
<a name="sam-cli-command-reference-sam-sync-examples"></a>

Para ver ejemplos sobre el uso de este comando, consulte [Opciones para el comando de sincronización sam](using-sam-cli-sync.md#using-sam-cli-sync-options).

# sam traces
<a name="sam-cli-command-reference-sam-traces"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam traces`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam traces` comando busca AWS X-Ray trazas Cuenta de AWS en tu. Región de AWS

## De uso
<a name="sam-cli-command-reference-sam-traces-usage"></a>

```
$ sam traces <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-traces-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-traces-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-traces-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor por defecto es «`samconfig.toml`» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--end-time TEXT`  <a name="sam-cli-command-reference-sam-traces-options-end-time"></a>
Busca rastros hasta este momento. El momento puede darse en valores relativos como «Hace 5 minutos», «mañana» o como una marca de tiempo formateada como «2018-01-01 10:10:10».

`--output TEXT`  <a name="sam-cli-command-reference-sam-traces-options-output"></a>
Especifica el formato de salida para los registros. Para imprimir registros formateados, especifica `text`. Para imprimir los registros como JSON, especifica `json`.

`--save-params`  <a name="sam-cli-command-reference-sam-traces-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--start-time TEXT`  <a name="sam-cli-command-reference-sam-traces-options-start-time"></a>
Busca rastros a partir de este momento. El momento puede darse en valores relativos como «Hace 5 minutos», «ayer» o como una marca de tiempo formateada como «2018-01-01 10:10:10». El valor predeterminado es «Hace 10 minutos».

`--tail`  <a name="sam-cli-command-reference-sam-traces-options-tail"></a>
Sigue el resultado de la traza. Esto ignora el argumento de la hora de finalización y sigue mostrando las trazas a medida que están disponibles.

`--trace-id TEXT`  <a name="sam-cli-command-reference-sam-traces-options-trace-id"></a>
El identificador único para un rastreo de X-Ray.

## Ejemplos
<a name="sam-cli-command-reference-sam-traces-examples"></a>

Ejecuta el siguiente comando para obtener los rastros de X-Ray por ID.

```
$ sam traces --trace-id tracing-id-1 --trace-id tracing-id-2
```

Ejecuta el siguiente comando para rastrear las trazas de rayos X a medida que estén disponibles.

```
$ sam traces --tail
```

# sam validate
<a name="sam-cli-command-reference-sam-validate"></a>

Esta página proporciona información de referencia para el AWS Serverless Application Model comando Command Line Interface (AWS SAMCLI)`sam validate`.

Para obtener una introducción al AWS SAMCLI, consulte [¿Qué es el? AWS SAMCLI](what-is-sam-overview.md#what-is-sam-cli)

El `sam validate` comando comprueba si un archivo AWS SAM de plantilla es válido.

## De uso
<a name="sam-cli-command-reference-sam-validate-usage"></a>

```
$ sam validate <options>
```

## Opciones
<a name="sam-cli-command-reference-sam-validate-options"></a>

`--config-env TEXT`  <a name="sam-cli-command-reference-sam-validate-options-config-env"></a>
El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--config-file PATH`  <a name="sam-cli-command-reference-sam-validate-options-config-file"></a>
La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor predeterminado es «samconfig.toml» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md).

`--debug`  <a name="sam-cli-command-reference-sam-validate-options-debug"></a>
Activa el registro de depuración para imprimir el mensaje de depuración generado por la CLI de AWS SAM y muestra las marcas horarias.

`--lint`  <a name="sam-cli-command-reference-sam-validate-options-lint"></a>
 Ejecuta la validación del elemento lint en la plantilla a través de **cfn-lint**. Crea un archivo de configuración `cfnlintrc` para especificar parámetros adicionales. *Para obtener más información, consulte [cfn-lint en el repositorio.](https://github.com/aws-cloudformation/cfn-lint)CloudFormation GitHub * 

`--profile TEXT`  <a name="sam-cli-command-reference-sam-validate-options-profile"></a>
El perfil específico del archivo de credenciales que recibe las credenciales. AWS 

`--region TEXT`  <a name="sam-cli-command-reference-sam-validate-options-region"></a>
La AWS región en la que se va a realizar el despliegue. Por ejemplo, us-east-1.

`--save-params`  <a name="sam-cli-command-reference-sam-validate-options-save-params"></a>
Guarde los parámetros que proporcione en la línea de comandos en el archivo AWS SAM de configuración.

`--template-file, --template, -t PATH`  <a name="sam-cli-command-reference-sam-validate-options-template-file"></a>
 El archivo AWS SAM de plantilla. El valor predeterminado es `template.[yaml|yml]`.   
 Si la plantilla se encuentra en el directorio de trabajo actual y se denomina `template.[yaml|yml|json]`, esta opción no es necesaria.   
 Si acaba de ejecutar **sam build**, esta opción no es necesaria. 

## Ejemplo
<a name="sam-cli-command-reference-sam-validate-examples"></a>

Para ver un ejemplo sobre el uso de este comando para validar una plantilla, consulte [Validar archivos AWS SAM de plantilla](serverless-sam-cli-using-validate.md).

Para ver un ejemplo sobre el uso de este comando con cfn-lint, consulte [Valide sus AWS SAM aplicaciones con CloudFormation Linter](validate-cfn-lint.md).

# Administración de la CLI de AWS SAM
<a name="reference-sam-cli"></a>

Esta sección contiene información sobre las formas en que puede administrar y personalizar su versión de AWS SAMCLI. Incluye información sobre cómo configurar los valores de los parámetros de comando de la CLI de AWS SAM mediante un archivo de configuración a nivel de proyecto. También incluye información sobre cómo administrar diferentes versiones de su AWS SAMCLI dispositivo, configurar AWS credenciales para AWS SAM poder realizar llamadas a AWS los servicios en su nombre y diferentes formas de personalizarlo AWS SAM. Esta sección termina con una sección sobre la AWS SAM solución de problemas generales.

**Topics**
+ [Archivo de configuración de la CLI de AWS SAM](serverless-sam-cli-config.md)
+ [Administración de versiones de AWS SAM CLI](manage-sam-cli-versions.md)
+ [Configuración de AWS credenciales](serverless-getting-started-set-up-credentials.md)
+ [Telemetría en la AWS SAMCLI](serverless-sam-telemetry.md)
+ [Solución de problemas para AWS SAM CLI](sam-cli-troubleshooting.md)

# Archivo de configuración de la CLI de AWS SAM
<a name="serverless-sam-cli-config"></a>

La interfaz de línea de AWS Serverless Application Model comandos (AWS SAMCLI) admite un archivo de configuración a nivel de proyecto que se puede utilizar para configurar los valores de los parámetros de los AWS SAMCLI comandos.

Para obtener documentación sobre cómo crear y usar archivos de configuración, consulta [Configuración de la AWS SAM de CLI](using-sam-cli-configure.md).

**Topics**
+ [Parámetros predeterminados del archivo de configuración](#serverless-sam-cli-config-default)
+ [Formatos de archivo de configuración admitidos](#serverless-sam-cli-config-formats)
+ [Especificar un archivo de configuración](#serverless-sam-cli-config-specify)
+ [Fundamentos de los archivos de configuración](#serverless-sam-cli-config-basics)
+ [Reglas del valor del parámetro](#serverless-sam-cli-config-rules)
+ [Prioridad de configuración](#serverless-sam-cli-config-precedence)
+ [Crear y modificar archivos de configuración](#serverless-sam-cli-config-using)

## Parámetros predeterminados del archivo de configuración
<a name="serverless-sam-cli-config-default"></a>

AWS SAM utiliza los siguientes parámetros predeterminados del archivo de configuración:
+ **Nombre**: `samconfig`.
+ **Ubicación**: en la raíz del proyecto. Es la misma ubicación que el archivo `template.yaml`.
+ **Format**: `TOML` Para obtener más información, consulta [TOML](https://toml.io/en/) en la *TOMLdocumentación*.

A continuación se muestra un ejemplo de estructura de proyecto que incluye el nombre y la ubicación por defecto del archivo de configuración:

```
sam-app
├── README.md
├── __init__.py
├── events
├── hello_world
├── samconfig.toml
├── template.yaml
└── tests
```

A continuación se muestra un ejemplo de un archivo `samconfig.toml`:

```
...
version = 0.1

[default]
[default.global]
[default.global.parameters]
stack_name = "sam-app"

[default.build.parameters]
cached = true
parallel = true

[default.deploy.parameters]
capabilities = "CAPABILITY_IAM"
confirm_changeset = true
resolve_s3 = true

[default.sync.parameters]
watch = true

[default.local_start_api.parameters]
warm_containers = "EAGER"

[prod]
[prod.sync]
[prod.sync.parameters]
watch = false
```

## Formatos de archivo de configuración admitidos
<a name="serverless-sam-cli-config-formats"></a>

Los formatos admitidos son `TOML` y `[YAML|YML]`. Consulte la siguiente sintaxis básica:

### TOML
<a name="serverless-sam-cli-config-formats-toml"></a>

```
version = 0.1
[environment]
[environment.command]
[environment.command.parameters]
option = parameter value
```

### YAML
<a name="serverless-sam-cli-config-formats-yaml"></a>

```
version: 0.1
environment:
  command:
    parameters:
      option: parameter value
```

## Especificar un archivo de configuración
<a name="serverless-sam-cli-config-specify"></a>

De forma predeterminada, la CLI de AWS SAM busca un archivo de configuración en el siguiente orden:

1. **Archivo de configuración personalizado**: si utiliza la opción `--config-file` para especificar un nombre y una ubicación de archivo, la CLI de AWS SAM busca primero este archivo.

1. **Archivo predeterminado `samconfig.toml`**: este es el nombre y el formato del archivo de configuración predeterminados y se encuentra en la raíz del proyecto. Si no especifica un archivo de configuración personalizado, la CLI de AWS SAM buscará este archivo a continuación.

1. **Archivo `samconfig.[yaml|yml]`**: si `samconfig.toml` no existe en la raíz del proyecto, AWS SAMCLI busca este archivo.

El siguiente es un ejemplo de cómo se especifica un archivo de configuración personalizado mediante la opción `--config-file`:

```
$ sam deploy --config-file myconfig.yaml
```

**nota**  
El `--config-file` parámetro debe ser relativo a la ubicación del archivo de AWS SAM plantilla porque AWS SAMCLI necesita determinar el contexto en el que se aplica la configuración. El `samconfig.toml` archivo administra los ajustes de configuración de su versión y la CLI busca el `samconfig.toml` archivo (o el parámetro del archivo de configuración anulado) en la carpeta relativa del `template.yaml` archivo. AWS SAMCLI

## Fundamentos de los archivos de configuración
<a name="serverless-sam-cli-config-basics"></a>

### Entorno
<a name="serverless-sam-cli-config-basics-environment"></a>

Un **entorno** es un identificador con nombre que contiene un conjunto único de valores de configuración. Puede tener varios entornos en una sola AWS SAM aplicación.

El valor predeterminado del nombre del entorno es `default`.

Utilice la AWS SAMCLI `--config-env` opción para especificar el entorno que se va a utilizar.

### Comando
<a name="serverless-sam-cli-config-basics-command"></a>

El **comando** es el comando de la CLI de AWS SAM para el que se especifican los valores de los parámetros.

Para especificar los valores de los parámetros de todos los comandos, utilice el identificador `global`.

Al hacer referencia a un comando AWS SAMCLI, sustituya los espacios (` `) y los guiones (`–`) por guiones bajos (`_`). Consulte los siguientes ejemplos:
+ `build`
+ `local_invoke`
+ `local_start_api`

### Parameters
<a name="serverless-sam-cli-config-basics-parameters"></a>

Los **parámetros** se especifican como pares de clave-valor.
+ La **clave** es el nombre de la opción de comando AWS SAMCLI.
+ El **valor** es el valor que se debe especificar.

Al especificar las claves, utilice el nombre de la opción de comando de formato largo y sustituya los guiones (`–`) por guiones bajos (`_`). A continuación se muestran algunos ejemplos:
+ `region`
+ `stack_name`
+ `template_file`

## Reglas del valor del parámetro
<a name="serverless-sam-cli-config-rules"></a>

### TOML
<a name="serverless-sam-cli-config-rules-toml"></a>
+ Los valores booleanos pueden ser `true` o `false`. Por ejemplo, `confirm_changeset = true`.
+ Para los valores de cadena, utilice comillas (`""`). Por ejemplo, `region = "us-west-2"`.
+ Para los valores de lista, utilice comillas (`""`) y separe cada valor con un espacio (` `). Por ejemplo: `capabilities = "CAPABILITY_IAM CAPABILITY_NAMED_IAM"`.
+ En el caso de los valores que contienen una lista de pares clave-valor, los pares están delimitados por espacios (` `) y el valor de cada par va entre comillas codificadas (`\" \"`). Por ejemplo, `tags = "project=\"my-application\" stage=\"production\""`.
+ En el caso de los valores de los parámetros que se pueden especificar varias veces, el valor es una matriz de argumentos. Por ejemplo: `image_repositories = ["my-function-1=image-repo-1", "my-function-2=image-repo-2"]`.

### YAML
<a name="serverless-sam-cli-config-rules-yaml"></a>
+ Los valores booleanos pueden ser `true` o `false`. Por ejemplo, `confirm_changeset: true`.
+ Para las entradas que contienen un único valor de cadena, las comillas (`""`) son opcionales. Por ejemplo, `region: us-west-2`. Esto incluye las entradas que contienen varios pares clave-valor que se proporcionan como una sola cadena. A continuación, se muestra un ejemplo:

  ```
  $ sam deploy --tags "foo=bar hello=world"
  ```

  ```
  default:
    deploy:
      parameters:
        tags: foo=bar hello=world
  ```
+ Para las entradas que contienen una lista de valores o las entradas que se pueden usar varias veces en un solo comando, especifíquelas como una lista de cadenas.

  A continuación, se muestra un ejemplo:

  ```
  $ sam remote invoke --parameter "InvocationType=Event" --parameter "LogType=None"
  ```

  ```
  default:
    remote_invoke:
      parameters:
          parameter:
          - InvocationType=Event
          - LogType=None
  ```

## Prioridad de configuración
<a name="serverless-sam-cli-config-precedence"></a>

Al configurar los valores, se produce la siguiente prioridad:
+ Los valores de los parámetros que se proporcionan en la línea de comandos tienen prioridad sobre los valores correspondientes del archivo de configuración y de la sección `Parameters` del archivo de plantilla.
+ Si la opción `--parameter-overrides` se usa en la línea de comandos o en el archivo de configuración con la clave `parameter_overrides`, sus valores tienen prioridad sobre los valores de la sección `Parameters` del archivo de plantilla.
+ En el archivo de configuración, las entradas proporcionadas para un comando específico tienen prioridad sobre las entradas globales. En el siguiente ejemplo, el comando `sam deploy` utilizará el nombre de la pila `my-app-stack`.

------
#### [ TOML ]

  ```
  [default.global.parameters]
  stack_name = "common-stack"
  
  [default.deploy.parameters]
  stack_name = "my-app-stack"
  ```

------
#### [ YAML ]

  ```
  default:
    global:
      parameters:
        stack_name: common-stack
    deploy:
      parameters:
        stack_name: my-app-stack
  ```

------

## Crear y modificar archivos de configuración
<a name="serverless-sam-cli-config-using"></a>

### Creación de archivos de configuración
<a name="serverless-sam-cli-config-using-create"></a>

Al crear una aplicación utilizando `sam init`, se crea un archivo `samconfig.toml` predeterminado. También puede crear su archivo de configuración manualmente.

### Modificación de los archivos de configuración
<a name="serverless-sam-cli-config-using-modify"></a>

También puede modificar su archivo de configuración manualmente. Además, durante cualquier flujo interactivo AWS SAMCLI, los valores configurados se mostrarán entre corchetes (`[ ]`). Si modifica estos valores, la CLI de AWS SAM actualizará el archivo de configuración.

A continuación, se muestra un ejemplo de flujo interactivo con el comando `sam deploy --guided`.

```
$ sam deploy --guided

Configuring SAM deploy
======================

    Looking for config file [samconfig.toml] :  Found
    Reading default arguments  :  Success

    Setting default arguments for 'sam deploy'
    =========================================
    Stack Name [sam-app]: ENTER
    AWS Region [us-west-2]: ENTER
    #Shows you resources changes to be deployed and require a 'Y' to initiate deploy
    Confirm changes before deploy [Y/n]: n
    #SAM needs permission to be able to create roles to connect to the resources in your template
    Allow SAM CLI IAM role creation [Y/n]: ENTER
    #Preserves the state of previously provisioned resources when an operation fails
    Disable rollback [y/N]: ENTER
    HelloWorldFunction may not have authorization defined, Is this okay? [y/N]: y
    Save arguments to configuration file [Y/n]: ENTER
    SAM configuration file [samconfig.toml]: ENTER
    SAM configuration environment [default]: ENTER
```

Al modificar el archivo de configuración, la CLI de AWS SAM gestiona los valores globales de la siguiente manera:
+ Si el valor del parámetro existe en la sección `global` del archivo de configuración, la CLI de AWS SAM no escribe el valor en la sección de comandos específica.
+ Si el valor del parámetro existe tanto en la sección de comandos específica como en la sección `global`, la CLI de AWS SAM elimina la entrada específica en favor del valor global.

# Administración de versiones de AWS SAM CLI
<a name="manage-sam-cli-versions"></a>

Administre las versiones de la interfaz de línea de AWS Serverless Application Model comandos (AWS SAMCLI) mediante la actualización, la degradación y la desinstalación. Si lo deseas, puedes descargar e instalar la versión nocturna de AWS SAM CLI.

**Topics**
+ [Actualización de AWS SAM CLI](#manage-sam-cli-versions-upgrade)
+ [Desinstalación de la AWS SAM CLI](#manage-sam-cli-versions-uninstall)
+ [Cambia de usar Homebrew para administrar la AWS SAM CLI](#manage-sam-cli-versions-switch)
+ [Administrar la compilación nocturna de la CLI de AWS SAM](#manage-sam-cli-versions-nightly-build)
+ [Instalación de la CLI de AWS SAM en un entorno virtual mediante pip](#manage-sam-cli-versions-install-virtual)
+ [Administración de CLI de AWS SAM con la Homebrew](#manage-sam-cli-versions-homebrew)
+ [Resolución de problemas](#manage-sam-cli-versions-troubleshoot)

## Actualización de AWS SAM CLI
<a name="manage-sam-cli-versions-upgrade"></a>

### Linux
<a name="manage-sam-cli-versions-upgrade-linux"></a>

Para actualizar la AWS SAM CLI en Linux, sigue las instrucciones de instalación en [Instalación de la AWS SAM CLI](install-sam-cli.md#install-sam-cli-instructions), pero añade la opción`--update` al comando install de la siguiente manera:

```
sudo ./sam-installation/install --update
```

### macOS
<a name="manage-sam-cli-versions-upgrade-macos"></a>

 AWS SAMCLIDebe actualizarse mediante el mismo método utilizado para instalarlo. Se recomienda utilizar el instalador del paquete para instalar y actualizar el AWS SAMCLI.

 Para actualizar la AWS SAM CLI mediante el instalador de paquetes, instala la última versión del paquete. Para obtener instrucciones, consulta [Instalación de la AWS SAM CLI](install-sam-cli.md#install-sam-cli-instructions). 

### Windows
<a name="manage-sam-cli-versions-upgrade-windows"></a>

Para actualizarla AWS SAMCLI, repita de [Instala la AWS SAM CLI](install-sam-cli.md) nuevo los pasos de instalación de Windows.

## Desinstalación de la AWS SAM CLI
<a name="manage-sam-cli-versions-uninstall"></a>

### Linux
<a name="manage-sam-cli-versions-uninstall-linux"></a>

Para desinstalar la AWS SAM CLI en Linux, debes eliminar el enlace simbólico y el directorio de instalación ejecutando los siguientes comandos:

1. Busca el enlace simbólico y las rutas de instalación.
   + Utilice el comando **which** para encontrar el enlace simbólico:

     ```
     which sam
     ```

     El resultado muestra la ruta en la que se encuentran AWS SAM los binarios, por ejemplo:

     ```
      /usr/local/bin/sam
     ```
   + Busca el directorio al que apunta el enlace simbólico mediante el comando **ls**:

     ```
     ls -l /usr/local/bin/sam
     ```

     En el siguiente ejemplo, el directorio de instalación es `/usr/local/aws-sam-cli`.

     ```
      lrwxrwxrwx 1 ec2-user ec2-user 49 Oct 22 09:49 /usr/local/bin/sam -> /usr/local/aws-sam-cli/current/bin/sam
     ```

1. Elimina el enlace simbólico.

   ```
   sudo rm /usr/local/bin/sam
   ```

1. Elimina el directorio de instalación.

   ```
   sudo rm -rf /usr/local/aws-sam-cli
   ```

### macOS
<a name="manage-sam-cli-versions-uninstall-macos"></a>

Desinstala la AWS SAM CLI con el mismo método que utilizó para instalarla. Le recomendamos que utilice el instalador del paquete para instalar el AWS SAMCLI.

Si instalaste la AWS SAM CLI mediante el instalador del paquete, sigue estos pasos para desinstalarlo.

**Para desinstalar la AWS SAM CLI**

1.  Elimina la AWS SAM CLI modificando y ejecutando lo siguiente: 

   ```
   $ sudo rm -rf /path-to/aws-sam-cli
   ```

   1.  *sudo*— Si su usuario tiene permisos de escritura en el lugar donde está instalado el AWS SAMCLI programa, no **sudo** es obligatorio. De lo contrario, se requiere el **sudo**. 

   1.  */path-to*— Ruta al lugar donde instaló el AWS SAMCLI programa. La ubicación predeterminada es `/usr/local`. 

1.  Elimine el AWS SAMCLI `$PATH` modificando y ejecutando lo siguiente: 

   ```
   $ sudo rm -rf /path-to-symlink-directory/sam
   ```

   1.  *sudo*— Si su usuario tiene permisos de escritura para`$PATH`, no **sudo** es obligatorio. De lo contrario, se requiere el **sudo**. 

   1.  *path-to-symlink-directory*— Tu variable de `$PATH` entorno. La ubicación predeterminada es `/usr/local/bin`. 

1.  Comprueba que la AWS SAM CLI está desinstalada ejecutando lo siguiente: 

   ```
   $ sam --version
   command not found: sam
   ```

### Windows
<a name="manage-sam-cli-versions-uninstall-windows"></a>

Para desinstalar la AWS SAM CLI mediante la configuración de Windows, sigue estos pasos:

1. En el menú Inicio, busque “Agregar o quitar programas”.

1. Elige el resultado denominado **AWS SAM Interfaz de línea de comandos de ** y, a continuación, selecciona **Desinstalar** para iniciar el desinstalador.

1. Confirme que desea desinstalar el AWS SAMCLI.

## Cambia de usar Homebrew para administrar la AWS SAM CLI
<a name="manage-sam-cli-versions-switch"></a>

Si la utiliza Homebrew para instalar y actualizar AWS SAMCLI, le recomendamos que utilice un método AWS compatible. Siga estas instrucciones para cambiar a un método compatible.

**Para dejar de usar Homebrew**

1. Siga las instrucciones que aparecen en [Desinstalar una CLI Homebrew instalada AWS SAM](#manage-sam-cli-versions-homebrew-uninstall) para desinstalar la versión Homebrew gestionada.

1. Siga las instrucciones que aparecen en [Instala la AWS SAM CLI](install-sam-cli.md) para instalar la CLI de AWS SAM mediante un método compatible.

## Administrar la compilación nocturna de la CLI de AWS SAM
<a name="manage-sam-cli-versions-nightly-build"></a>

Puedes descargar e instalar la compilación nocturna de la CLI de AWS SAM. Contienes una versión preliminar del código de la CLI de AWS SAM que puedes ser menos estable que la versión de producción. Una vez instalada, puedes usar la compilación nocturna con el comando `sam-nightly`. Puedes instalar y usar la versión de producción y la versión de compilación nocturna de la CLI de AWS SAM al mismo tiempo.

**nota**  
La compilación nocturna no contienes una versión preliminar de la imagen de compilación. Por eso, al crear una aplicación sin servidor con la opción **--use-container**, se utiliza la última versión de producción de la imagen de compilación.

### Instalación de la compilación nocturna de la CLI de AWS SAM
<a name="manage-sam-cli-versions-nightly-build-install"></a>

Para instalar la compilación nocturna de la CLI de AWS SAM, sigue estas instrucciones:

#### Linux
<a name="manage-sam-cli-versions-nightly-build-install-linux"></a>

Puedes instalar la versión de compilación nocturna de la CLI de AWS SAM en la plataforma Linux x86\$164 mediante el instalador de paquetes.

**Cómo instalar la compilación nocturna de AWS SAM CLI**

1. Descargue el instalador del paquete desde [sam-cli-nightly](https://github.com/aws/aws-sam-cli/releases/sam-cli-nightly/)el *aws-sam-cli GitHubrepositorio*.

1. [Sigue los pasos para instalar el paquete de compilación nocturna de la CLI de AWS SAM](install-sam-cli.md).

#### macOS
<a name="manage-sam-cli-versions-nightly-build-install-macos"></a>

Puedes instalar la versión de compilación nocturna de la CLI de AWS SAM en macOS mediante el instalador del paquete de compilación nocturna.

**Cómo instalar la compilación nocturna de la AWS SAM CLI**

1. Descargue el instalador del paquete para su plataforma desde [sam-cli-nightly](https://github.com/aws/aws-sam-cli/releases/sam-cli-nightly/)el *aws-sam-cli GitHubrepositorio*.

1. [Sigue los pasos para instalar el paquete de compilación nocturna de la CLI de AWS SAM](install-sam-cli.md).

#### Windows
<a name="manage-sam-cli-versions-nightly-build-windows"></a>

La versión de compilación nocturna de la CLI de AWS SAM está disponible en este enlace de descarga: [compilación nocturna de la CLI de AWS SAM](https://github.com/aws/aws-sam-cli/releases/download/sam-cli-nightly/AWS_SAM_CLI_64_PY3.msi). Para instalar la compilación nocturna en Windows, sigue los mismos pasos que en [Instala la AWS SAM CLI](install-sam-cli.md), pero utiliza en su lugar el enlace de descarga de la compilación nocturna.

Para comprobar que has instalado la versión de compilación nocturna, ejecuta el comando **sam-nightly --version**. El resultado de este comando tienes el formato `1.X.Y.dev<YYYYMMDDHHmm>`, por ejemplo:

```
SAM CLI, version 1.20.0.dev202103151200
```

### Cambia del Homebrew al instalador del paquete
<a name="manage-sam-cli-versions-nightly-build-switch"></a>

Si vas a instalar Homebrew y actualizar la compilación nocturna de la CLI de AWS SAM y deseas pasar a usar el instalador de paquetes, sigue estos pasos.

**Para cambiar del Homebrew al instalador de paquetes**

1. Desinstala la Homebrew instalada de la CLI de AWS SAM.

   ```
   $ brew uninstall aws-sam-cli-nightly
   ```

1. Comprueba que la compilación nocturna de la CLI de AWS SAM esté desinstalada ejecutando lo siguiente:

   ```
   $ sam-nightly --version
   zsh: command not found: sam-nightly
   ```

1. Siga los pasos de la sección anterior para instalar la compilación nocturna CLI de AWS SAM.

## Instalación de la CLI de AWS SAM en un entorno virtual mediante pip
<a name="manage-sam-cli-versions-install-virtual"></a>

Recomendamos utilizar el instalador de paquetes nativo para instalar el AWS SAMCLI. Si debes utilizar pip, le recomendamos que instala la CLI de AWS SAM en un entorno virtual. Esto garantiza un entorno de instalación limpio y un entorno aislado en caso de que se produzcan errores.

**nota**  
A partir del 24 de octubre de 2023, AWS SAM CLI dejará de ofrecer soporte paraPython 3.7. Para obtener más información, consulta [La CLI de AWS SAM deja de dar soporte para Python 3.7](important-notes.md#important-notes-2023-10-python).

**Para instalar la CLI de AWS SAM en un entorno virtual**

1. Desde el directorio de inicio que eliges, crea un entorno virtual y asígnale un nombre.

------
#### [ Linux / macOS ]

   ```
   $ mkdir project
   $ cd project
   $ python3 -m venv venv
   ```

------
#### [ Windows ]

   ```
   > mkdir project
   > cd project
   > py -3 -m venv venv
   ```

------

1. Activa el entorno virtual.

------
#### [ Linux / macOS ]

   ```
   $ . venv/bin/activate
   ```

   El símbolo del sistema cambia para mostrar que el entorno virtual está activo.

   ```
   (venv) $ 
   ```

------
#### [ Windows ]

   ```
   > venv\Scripts\activate
   ```

   El símbolo del sistema cambia para mostrar que el entorno virtual está activo.

   ```
   (venv) > 
   ```

------

1. Instala la CLI de AWS SAM en el entorno virtual.

   ```
   (venv) $ pip install --upgrade aws-sam-cli
   ```

1. Comprueba que la CLI de AWS SAM esté instalada correctamente.

   ```
   (venv) $ sam --version
   SAM CLI, version 1.94.0
   ```

1. Puedes utilizar el comando `deactivate` para salir del entorno virtual. Siempre que inicies una sesión nueva, debes activar el entorno de nuevo.

## Administración de CLI de AWS SAM con la Homebrew
<a name="manage-sam-cli-versions-homebrew"></a>

**nota**  
A partir de septiembre de 2023, AWS dejará de mantener el Homebrew instalador AWS gestionado de AWS SAMCLI (`aws/tap/aws-sam-cli`). Para seguir utilizándolo Homebrew, puedes utilizar el instalador gestionado por la comunidad (`aws-sam-cli`). A partir de septiembre de 2023, cualquier comando Homebrew al que haga referencia a `aws-sam-cli` se redirigirá a `aws/tap/aws-sam-cli`.  
Te recomendamos que utilices nuestros métodos de [instalación](install-sam-cli.md) y [actualización](#manage-sam-cli-versions-upgrade) compatibles.

### Instalación de la CLI de AWS SAM mediante Homebrew
<a name="manage-sam-cli-versions-homebrew-install"></a>

**nota**  
Estas instrucciones utilizan el AWS SAMCLI Homebrew instalador administrado por la comunidad. Para obtener más asistencia, consulta el *repositorio [homebrew-core](https://github.com/Homebrew/homebrew-core/issues)*.

**Para instalar la CLI de AWS SAM**

1. Ejecuta lo siguiente:

   ```
   $ brew install aws-sam-cli
   ```

1. Verificar la instalación:

   ```
   $ sam --version
   ```

   Tras una instalación correcta del AWS SAMCLI, debería ver un resultado como el siguiente:

   ```
   SAM CLI, version 1.94.0
   ```

### Actualización de la CLI de AWS SAM utilizando Homebrew
<a name="manage-sam-cli-versions-homebrew-upgrade"></a>

Para actualizar la CLI de AWS SAM con Homebrew, ejecuta el siguiente comando:

```
$ brew upgrade aws-sam-cli
```

### Desinstalar una CLI Homebrew instalada AWS SAM
<a name="manage-sam-cli-versions-homebrew-uninstall"></a>

Si la CLI de AWS SAM se instaló utilizando Homebrew, sigue estos pasos para desinstalarla.

**Para desinstalar la AWS SAM CLI**

1. Ejecuta lo siguiente:

   ```
   $ brew uninstall aws-sam-cli
   ```

1. Comprueba que la AWS SAM CLI está desinstalada ejecutando lo siguiente:

   ```
   $ sam --version
   command not found: sam
   ```

### Cambiar al instalador Homebrew gestionado por la comunidad
<a name="manage-sam-cli-versions-homebrew-switch"></a>

Si utiliza el Homebrew instalador AWS gestionado (`aws/tap/aws-sam-cli`) y prefiere seguir utilizándoloHomebrew, le recomendamos que cambie al Homebrew instalador gestionado por la comunidad (`aws-sam-cli`).

Para cambiar a un único comando, ejecuta lo siguiente:

```
$ brew uninstall aws-sam-cli && brew untap aws/tap && brew cleanup aws/tap && brew update && brew install aws-sam-cli
```

Sigue estas instrucciones para ejecutar cada comando de forma individual.

**Para cambiar al instalador Homebrew gestionado por la comunidad**

1. Desinstale la Homebrew versión AWS gestionada de AWS SAMCLI:

   ```
   $ brew uninstall aws-sam-cli
   ```

1. Comprueba que la CLI de AWS SAM se haya desinstalado:

   ```
   $ which sam
   sam not found
   ```

1. Quite el AWS SAMCLI grifo AWS gestionado:

   ```
   $ brew untap aws/tap
   ```

   Si recibe un error como el siguiente, añada la opción `--force` e inténtelo de nuevo.

   ```
   Error: Refusing to untap aws/tap because it contains the following installed formulae or casks:
   aws-sam-cli-nightly
   ```

1. Elimine los archivos en caché del instalador AWS gestionado:

   ```
   $ brew cleanup aws/tap
   ```

1. Actualización de Homebrew y todas las fórmulas:

   ```
   $ brew update
   ```

1. Instale la versión gestionada por la comunidad de AWS SAMCLI:

   ```
   $ brew install aws-sam-cli
   ```

1. Comprueba que la CLI de AWS SAM se ha realizado correctamente:

   ```
   $ sam --version
   SAM CLI, version 1.94.0
   ```

## Resolución de problemas
<a name="manage-sam-cli-versions-troubleshoot"></a>

Si encuentra errores al instalar o utilizar la AWS SAMCLI, consulte[Solución de problemas para AWS SAM CLI](sam-cli-troubleshooting.md).

# Configuración de AWS credenciales
<a name="serverless-getting-started-set-up-credentials"></a>

La interfaz de línea de AWS SAM comandos (CLI) requiere que establezca AWS credenciales para poder realizar llamadas a AWS los servicios en su nombre. Por ejemplo, AWS SAMCLI hace llamadas a Amazon S3 y CloudFormation.

Es posible que ya haya establecido AWS las credenciales para trabajar con AWS herramientas, como una de las AWS SDKs o las AWS CLI. Si no lo ha hecho, en este tema se muestran los enfoques recomendados para configurar AWS las credenciales.

Para establecer AWS las credenciales, debe tener el *ID de la clave de acceso* y la *clave de acceso secreta* del usuario de IAM que desee configurar. Para obtener información sobre la clave de acceso IDs y las claves de acceso secretas, consulte [Gestión de las claves de acceso para los usuarios de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html) en la Guía del usuario de *IAM*.

A continuación, determine si la AWS CLI tiene instalada. A continuación, sigue las instrucciones en una de las siguientes secciones:

## Usando el AWS CLI
<a name="serverless-getting-started-set-up-credentials-cli"></a>

Si la tiene AWS CLI instalada, utilice el `aws configure` comando y siga las instrucciones:

```
$ aws configure
AWS Access Key ID [None]: your_access_key_id
AWS Secret Access Key [None]: your_secret_access_key
Default region name [None]: 
Default output format [None]:
```

Para obtener más información sobre el comando de `aws configure`, consulta [Configuración rápida de la AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html#cli-quick-configuration) en la *Guía del usuario de AWS Command Line Interface *.

## ¿No está utilizando el AWS CLI
<a name="serverless-getting-started-set-up-credentials-no-cli"></a>

Si no la tiene AWS CLI instalada, puede crear un archivo de credenciales o establecer variables de entorno:
+ **Archivo de credenciales**: puede establecer las credenciales en el archivo de AWS credenciales de su sistema local. Este archivo debe estar ubicado en una de las siguientes ubicaciones:
  + `~/.aws/credentials` en Linux o macOS
  + `C:\Users\USERNAME\.aws\credentials` en Windows

  Este archivo debe contener líneas con el siguiente formato:

  ```
  [default]
  aws_access_key_id = your_access_key_id
  aws_secret_access_key = your_secret_access_key
  ```

   
+ **Variables de entorno**: puedes configurar las variables de entorno `AWS_ACCESS_KEY_ID` y `AWS_SECRET_ACCESS_KEY`.

  Para configurar estas variables en Linux o macOS, utiliza el comando **export**:

  ```
  export AWS_ACCESS_KEY_ID=your_access_key_id
  export AWS_SECRET_ACCESS_KEY=your_secret_access_key
  ```

  Para establecer estas variables en Windows, usa el comando **set**:

  ```
  set AWS_ACCESS_KEY_ID=your_access_key_id
  set AWS_SECRET_ACCESS_KEY=your_secret_access_key
  ```

# Telemetría en la AWS SAMCLI
<a name="serverless-sam-telemetry"></a>

En AWS, desarrollamos y lanzamos servicios en función de lo que aprendemos de las interacciones con los clientes. Utilizamos los comentarios de los clientes para iterar nuestro producto. La telemetría es información adicional que ayuda a comprender mejor los requisitos del cliente, diagnosticar problemas y ofrecer características para mejorar la experiencia del cliente.

La interfaz de línea de AWS SAM comandos (CLI) recopila la telemetría, como las métricas de uso genéricas, la información del sistema y el entorno y los errores. Para obtener más información sobre los tipos de telemetría recopilados, consulta [Tipos de información recopilada](#serverless-sam-telemtry-data-collected).

La CLI de AWS SAM**no** recopila información personal, como nombres de usuario o direcciones de correo electrónico. Tampoco extrae información confidencial en el nivel de proyecto.

Como cliente, puede controlar si la telemetría está activada y puede cambiar la configuración en cualquier momento. Si la telemetría permanece activada, AWS SAM CLI envía los datos de telemetría en segundo plano sin requerir ninguna interacción adicional con el cliente.

## Desactivar la telemetría para una sola sesión
<a name="serverless-sam-telemtry-opt-out"></a>

En los sistemas operativos macOS y Linux, puede desactivar la telemetría para una sola sesión. Para desactivar la telemetría de la sesión actual, ejecuta el siguiente comando para establecer la variable de entorno `SAM_CLI_TELEMETRY` en `false`. Repita el comando para cada nuevo terminal o sesión.

```
export SAM_CLI_TELEMETRY=0
```

## Desactivar la telemetría del perfil en todas las sesiones
<a name="serverless-sam-telemtry-opt-out-profile"></a>

Ejecuta los siguientes comandos para desactivar la telemetría en todas las sesiones cuando ejecuta AWS SAM CLI en el sistema operativo.

### Para desactivar la telemetría en Linux
<a name="w2aac28c19c16c15b5"></a>

1. Ejecuta:

   ```
   echo "export SAM_CLI_TELEMETRY=0" >>~/.profile
   ```

1. Ejecuta:

   ```
   source ~/.profile
   ```

### Para desactivar la telemetría en macOS
<a name="w2aac28c19c16c15b7"></a>

1. Ejecuta:

   ```
   echo "export SAM_CLI_TELEMETRY=0" >>~/.profile
   ```

1. Ejecuta:

   ```
   source ~/.profile
   ```

### Para desactivar la telemetría en Windows
<a name="w2aac28c19c16c15b9"></a>

Puede configurar la variable de entorno temporalmente durante la vida útil de la ventana de terminal con el siguiente comando:

Si utiliza la línea de comandos:

```
set SAM_CLI_TELEMETRY=0
```

Si se utiliza: PowerShell

```
$env:SAM_CLI_TELEMETRY=0
```

Para configurar la variable de entorno de forma permanente en la línea de comandos o PowerShell, utilice el siguiente comando:

```
setx SAM_CLI_TELEMETRY 0
```

**nota**  
Los cambios no entrarán en vigor hasta que se cierre y se vuelva a abrir la terminal.

## Tipos de información recopilada
<a name="serverless-sam-telemtry-data-collected"></a>
+ **Información de uso**: los comandos y subcomandos genéricos que ejecutan los clientes.
+ **Errores e información de diagnóstico**: el estado y la duración de los comandos que ejecutan los clientes, incluidos los códigos de salida, los nombres de las excepciones internas y los errores al conectarse a Docker.
+ **Información del sistema y del entorno**: la versión de Python, el sistema operativo (Windows, Linux o macOS), el entorno en el que AWS SAMCLI se ejecuta (por ejemplo AWS CodeBuild, un kit de herramientas AWS IDE o un terminal) y los valores hash de los atributos de uso.

## Más información
<a name="serverless-sam-telemtry-learn-more"></a>

Los datos de telemetría que AWS SAMCLI recopila cumplen con las políticas de privacidad de datos. AWS Para obtener más información, consulte los siguientes temas:
+ [AWS Términos del servicio](https://aws.amazon.com/service-terms/)
+ [Preguntas frecuentes sobre privacidad de datos](https://aws.amazon.com/compliance/data-privacy-faq/)

# Solución de problemas para AWS SAM CLI
<a name="sam-cli-troubleshooting"></a>

En esta sección se proporcionan detalles sobre cómo solucionar los mensajes de error al usar, instalar y administrar la interfaz de línea de AWS Serverless Application Model comandos (AWS SAMCLI).

**Topics**
+ [Resolución de problemas](#install-sam-cli-troubleshooting)
+ [Mensajes de error](#sam-cli-troubleshoot-messages)
+ [Mensajes de advertencia](#sam-cli-troubleshoot-warning)

## Resolución de problemas
<a name="install-sam-cli-troubleshooting"></a>

Para obtener instrucciones de solución de problemas relacionadas con AWS SAMCLI, consulte[Solución de errores de la instalación](install-sam-cli.md#sam-cli-troubleshoot-install).

## Mensajes de error
<a name="sam-cli-troubleshoot-messages"></a>

### Error de Curl: «curl: (6) No se pudo resolver:...»
<a name="sam-cli-troubleshoot-messages-curl"></a>

Al intentar invocar el punto de conexión de API Gateway, verá el siguiente error:

```
curl: (6) Could not resolve: endpointdomain (Domain name not found)
```

Esto significa que ha intentado enviar una solicitud a un dominio que no es válido. Esto puede ocurrir si la aplicación sin servidor no se pudo implementar correctamente o si el comando **curl** cometió un error tipográfico. Compruebe que la aplicación se ha desplegado correctamente mediante la CloudFormation consola o la AWS CLI, y compruebe que **curl** el comando es correcto.

### Error: no se puede encontrar la información exacta del recurso con el nombre de pila dado
<a name="sam-cli-troubleshoot-messages-exact-resource"></a>

Al ejecutar el comando `sam remote invoke` en una aplicación que contiene un único recurso de función de Lambda, aparece el siguiente error:

```
Error: Can't find exact resource information with given <stack-name>. Please provide full resource ARN or --stack-name to resolve the ambiguity.
```

**Causa posible: no proporcionó la opción `--stack-name`.**  
Si el ARN de una función no se proporciona como argumento, el comando `sam remote invoke` requiere que se proporciona la opción `--stack-name`.

**Solución: proporciona la opción `--stack-name`.**  
A continuación, se muestra un ejemplo:  

```
$ sam remote invoke --stack-name sam-app

Invoking Lambda Function HelloWorldFunction                                                                                                                                                                                                                     
START RequestId: 40593abb-e1ad-4d99-87bd-ac032e364e82 Version: $LATEST
END RequestId: 40593abb-e1ad-4d99-87bd-ac032e364e82
REPORT RequestId: 40593abb-e1ad-4d99-87bd-ac032e364e82  Duration: 11.31 ms      Billed Duration: 12 ms  Memory Size: 128 MB     Max Memory Used: 67 MB  Init Duration: 171.71 ms
{"statusCode":200,"body":"{\"message\":\"hello world\"}"}%
```

### Error: no se puede encontrar la información exacta del recurso con ese nombre de pila
<a name="sam-cli-troubleshoot-messages-stack-name"></a>

Al ejecutar el comando `sam remote invoke` y pasar el ARN de una función de Lambda como argumento, aparece el siguiente error:

```
Error: Can't find resource information from stack name (<stack-name>) and resource id (<function-id>)
```

**Causa posible: el valor del nombre de la pila está definido en el archivo `samconfig.toml`.**  
La primera CLI de AWS SAM comprueba el nombre de la pila en el archivo `samconfig.toml`. Si se especifica, el argumento se pasa como un valor de ID lógico.

**Solución: en su lugar, pasa el ID lógico de la función.**  
Puede pasar el ID lógico de la función como argumento en lugar del ARN de la función.

**Solución: elimine el valor del nombre de la pila del archivo de configuración.**  
Puede eliminar el valor del nombre de la pila del archivo de configuración. Esto evita que AWS SAMCLI pasa el ARN de la función como un valor de ID lógico.  
Ejecute `sam build` después de modificar el archivo de configuración.

### Error: «Error al crear recursos administrados: no se pueden localizar las credenciales»
<a name="sam-cli-troubleshoot-messages-credentials"></a>

Al ejecutar el comando **sam deploy**, aparece el siguiente error:

```
Error: Failed to create managed resources: Unable to locate credentials
```

Esto significa que no ha configurado AWS las credenciales que le permitan AWS SAMCLI realizar llamadas AWS de servicio. Para solucionar este problema, debe configurar AWS las credenciales. Para obtener más información, consulte [Configuración de AWS credenciales](serverless-getting-started-set-up-credentials.md).

### Error: FileNotFoundError en Windows
<a name="sam-cli-troubleshoot-messages-filenotfound-win"></a>

Al ejecutar comandos con la CLI de AWS SAM en Windows, podría ver el siguiente error:

```
Error: FileNotFoundError
```

Causa posible: AWS SAMCLI podría interactuar con las rutas de archivo que superen el límite máximo de rutas de acceso de Windows.

Solución: para resolver este problema, debe configurar el comportamiento de las nuevas rutas de acceso largo. Para ello, consulte [Habilitación de rutas de acceso largas en Windows 10, versión 1607 y versiones posteriores](https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=powershell#enable-long-paths-in-windows-10-version-1607-and-later) en la *documentación de Desarrollo de aplicaciones para Microsoft Windows*.

### Error: el solucionador de dependencias de pip...
<a name="sam-cli-troubleshoot-messages-pip"></a>

*Ejemplo de texto de error:*

```
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. 
aws-sam-cli 1.58.0 requires aws-sam-translator==1.51.0, but you have aws-sam-translator 1.58.0 which is incompatible. 
aws-sam-cli 1.58.0 requires typing-extensions==3.10.0.0, but you have typing-extensions 4.4.0 which is incompatible.
```

**Causa posible: si se utiliza pip para instalar paquetes, las dependencias entre los paquetes pueden entrar en conflicto.**  
Cada versión del paquete `aws-sam-cli` depende de una versión del paquete `aws-sam-translator`. Por ejemplo, la versión `aws-sam-cli` 1.58.0 puede depender de la versión 1.51.0 `aws-sam-translator`.  
Si instala el paquete AWS SAMCLI usando pip y, a continuación, instala otro paquete que dependa de una versión más reciente de `aws-sam-translator`, ocurrirá lo siguiente:  
+ Se instalará la versión más reciente de `aws-sam-translator`.
+ Es posible que la versión actual de `aws-sam-cli` y la versión más reciente de `aws-sam-translator` no sean compatibles.
+ Cuando utilice la AWS SAMCLI, se producirá el error del solucionador de dependencias.

**Soluciones:**

1. Utiliza el instalador de paquetes nativo AWS SAMCLI.

   1. Desinstalación de la AWS SAM CLI con pip. Para obtener instrucciones, consulta [Desinstalación de la AWS SAM CLI](manage-sam-cli-versions.md#manage-sam-cli-versions-uninstall).

   1. Instale AWS SAMCLI mediante el instalador de paquetes nativo. Para obtener instrucciones, consulta [Instala la AWS SAM CLI](install-sam-cli.md).

   1. Cuando sea necesario, AWS SAMCLI actualice con el instalador de paquetes nativo. Para obtener instrucciones, consulta [Actualización de AWS SAM CLI](manage-sam-cli-versions.md#manage-sam-cli-versions-upgrade).

1. Si debe utilizar pip, te recomendamos que instale la CLI AWS SAM en un entorno virtual. Esto garantiza un entorno de instalación limpio y un entorno aislado en caso de que se produzcan errores. Para obtener instrucciones, consulta [Instalación de la CLI de AWS SAM en un entorno virtual mediante pip](manage-sam-cli-versions.md#manage-sam-cli-versions-install-virtual).

### Error: No existe ese comando «remoto»
<a name="sam-cli-troubleshoot-messages-command-remote"></a>

Al ejecutar el comando `sam remote invoke`, aparece el siguiente error:

```
$ sam remote invoke ...
2023-06-20 08:15:07 Command remote not available
Usage: sam [OPTIONS] COMMAND [ARGS]...
Try 'sam -h' for help.

Error: No such command 'remote'.
```

**Causa posible: su versión de AWS SAMCLI no está actualizada.**  
El AWS SAMCLI `sam remote invoke` comando se publicó con la AWS SAMCLI versión 1.88.0. Puede comprobar la versión con el comando `sam --version`.

**Solución: actualice su AWS SAMCLI a la versión más reciente.**  
Para obtener instrucciones, consulte [Actualización de AWS SAM CLI](manage-sam-cli-versions.md#manage-sam-cli-versions-upgrade).

### Error: es necesario ejecutar proyectos AWS SAM de forma local. Docker ¿Lo tiene instalado?
<a name="sam-cli-troubleshoot-messages-docker"></a>

Al ejecutar el comando **sam local start-api**, aparece el siguiente error:

```
Error: Running AWS SAM projects locally requires Docker. Have you got it installed?
```

Esto significa que no ha instalado Docker correctamente. Docker es necesario para probar la aplicación localmente. Para solucionar este problema, debe seguir las instrucciones de instalación de Docker en el host de desarrollo. Para obtener más información, consulta [Instalar Docker](install-docker.md).

### Error: no se cumplen las restricciones de seguridad
<a name="sam-cli-troubleshoot-messages-security-constraints"></a>

Al ejecutar **sam deploy --guided**, se le preguntará `Function may not have authorization defined, Is this okay? [y/N]`. Si responde a esta solicitud con **N** (la respuesta predeterminada), verá el siguiente error:

```
Error: Security Constraints Not Satisfied
```

El mensaje le informa de que la aplicación que va a implementar podría tener una API de Amazon API Gateway de acceso público configurada sin autorización. Al responder **N** a esta pregunta, está diciendo que esto no está bien.

Para resolver este problema, dispones de las siguientes opciones:
+ Configura tu aplicación con autorización. Para obtener más información acerca de la autorización, consulta [Controla el acceso a la API con tu AWS SAM plantilla](serverless-controlling-access-to-apis.md).
+ Si su intención es tener un punto de conexión de API de acceso público sin autorización, reinicie la implementación y responda a esta pregunta indicando que está de acuerdo con la implementación. **Y**

### mensaje: Falta el token de autenticación
<a name="sam-cli-troubleshoot-messages-auth-token"></a>

Al intentar invocar el punto de conexión de API Gateway, verá el siguiente error:

```
{"message":"Missing Authentication Token"}
```

Esto significa que ha intentado enviar una solicitud al dominio correcto, pero el URI no es reconocible. Para solucionar este problema, verifique la URL completa y actualice el comando **curl** con la URL correcta.

## Mensajes de advertencia
<a name="sam-cli-troubleshoot-warning"></a>

### Advertencia:... AWS dejará de mantener el Homebrew instalador durante AWS SAM ...
<a name="sam-cli-troubleshoot-warning-homebrew"></a>

Al instalar AWS SAMCLI usando Homebrew, verá el siguiente mensaje de advertencia:

```
Warning: ... AWS will no longer maintain the Homebrew installer for AWS SAM (aws/tap/aws-sam-cli). 
				For AWS supported installations, use the first party installers ...
```

**Causa potencial: ya AWS no se mantiene el Homebrew soporte.**  
A partir de septiembre de 2023, AWS dejará de mantener el Homebrew instalador del AWS SAMCLI.  

**Solución: utilice un método de instalación AWS compatible.**
+ Encontrará los métodos de instalación AWS compatibles en[Instala la AWS SAM CLI](install-sam-cli.md).

**Solución: para seguir utilizando Homebrew, utiliza el instalador gestionado por la comunidad.**
+ Puedes utilizar el instalador Homebrew gestionado por la comunidad a su entera discreción. Para obtener instrucciones, consulta [Administración de CLI de AWS SAM con la Homebrew](manage-sam-cli-versions.md#manage-sam-cli-versions-homebrew).

# AWS SAM referencia de conector
<a name="reference-sam-connector"></a>

Esta sección contiene información de referencia para el tipo de recurso del conector AWS Serverless Application Model (AWS SAM). Para obtener una introducción a los conectores, consulte [Administrar los permisos de recursos con AWS SAM conectores](managing-permissions-connectors.md).

## Tipos de recursos de origen y destino admitidos para los conectores
<a name="supported-connector-resource-types"></a>

El tipo de recurso `AWS::Serverless::Connector` admite un número determinado de conexiones entre los recursos de origen y destino. Al configurar los conectores en la AWS SAM plantilla, utilice la siguiente tabla para hacer referencia a las conexiones compatibles y a las propiedades que deben definirse para cada tipo de recurso de origen y destino. Para obtener más información sobre cómo configurar conectores en la plantilla, consulte [AWS::Serverless::Connector](sam-resource-connector.md).

Para los recursos de origen y destino, cuando se definan en la misma plantilla, utilice la propiedad `Id`. Si lo desea, puedes añadirse un `Qualifier` para reducir el alcance del recurso definido. Cuando el recurso no esté dentro de la misma plantilla, utiliza una combinación de propiedades admitidas.

 Para solicitar nuevas conexiones, [envíe una nueva edición](https://github.com/aws/serverless-application-model/issues/new?assignees=&labels=area%2Fconnectors,stage%2Fneeds-triage&template=other.md&title=%28New%20Connector%20Profile%29) al *serverless-application-model AWS GitHubrepositorio*.


| Tipo de origen | Tipo de destino | Permisos | Propiedades de origen | Propiedades de destino | 
| --- | --- | --- | --- | --- | 
| `AWS::ApiGateway::RestApi` | `AWS::Lambda::Function` | `Write` | `Id` o `Qualifier`, `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::ApiGateway::RestApi` | `AWS::Serverless::Function` | `Write` | `Id` o `Qualifier`, `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::ApiGatewayV2::Api` | `AWS::Lambda::Function` | `Write` | `Id` o `Qualifier`, `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::ApiGatewayV2::Api` | `AWS::Serverless::Function` | `Write` | `Id` o `Qualifier`, `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::DataSource` | `AWS::DynamoDB::Table` | `Read` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::DataSource` | `AWS::DynamoDB::Table` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::DataSource` | `AWS::Events::EventBus` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::DataSource` | `AWS::Lambda::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::DataSource` | `AWS::Serverless::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::DataSource` | `AWS::Serverless::SimpleTable` | `Read` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::DataSource` | `AWS::Serverless::SimpleTable` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::GraphQLApi` | `AWS::Lambda::Function` | `Write` | `Id` o `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::AppSync::GraphQLApi` | `AWS::Serverless::Function` | `Write` | `Id` o `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::DynamoDB::Table` | `AWS::Lambda::Function` | `Read` | `Id` o `Arn` y `Type` | `Id` o `RoleName` y `Type` | 
| `AWS::DynamoDB::Table` | `AWS::Serverless::Function` | `Read` | `Id` o `Arn` y `Type` | `Id` o `RoleName` y `Type` | 
| `AWS::Events::Rule` | `AWS::Events::EventBus` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Events::Rule` | `AWS::Lambda::Function` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Events::Rule` | `AWS::Serverless::Function` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Events::Rule` | `AWS::Serverless::StateMachine` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Events::Rule` | `AWS::SNS::Topic` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Events::Rule` | `AWS::SQS::Queue` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn`, `QueueUrl` y `Type` | 
| `AWS::Events::Rule` | `AWS::StepFunctions::StateMachine` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::DynamoDB::Table` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::Events::EventBus` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::Lambda::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::Location::PlaceIndex` | `Read` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::S3::Bucket` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::Serverless::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::Serverless::SimpleTable` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::Serverless::StateMachine` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn`, `Name` y `Type` | 
| `AWS::Lambda::Function` | `AWS::SNS::Topic` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::SQS::Queue` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Lambda::Function` | `AWS::StepFunctions::StateMachine` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn`, `Name` y `Type` | 
| `AWS::S3::Bucket` | `AWS::Lambda::Function` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::S3::Bucket` | `AWS::Serverless::Function` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Api` | `AWS::Lambda::Function` | `Write` | `Id` o `Qualifier`, `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Api` | `AWS::Serverless::Function` | `Write` | `Id` o `Qualifier`, `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::DynamoDB::Table` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::Events::EventBus` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::Lambda::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::S3::Bucket` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::Serverless::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::Serverless::SimpleTable` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::Serverless::StateMachine` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn`, `Name` y `Type` | 
| `AWS::Serverless::Function` | `AWS::SNS::Topic` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::SQS::Queue` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::Function` | `AWS::StepFunctions::StateMachine` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn`, `Name` y `Type` | 
| `AWS::Serverless::HttpApi` | `AWS::Lambda::Function` | `Write` | `Id` o `Qualifier`, `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::HttpApi` | `AWS::Serverless::Function` | `Write` | `Id` o `Qualifier`, `ResourceId` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::SimpleTable` | `AWS::Lambda::Function` | `Read` | `Id` o `Arn` y `Type` | `Id` o `RoleName` y `Type` | 
| `AWS::Serverless::SimpleTable` | `AWS::Serverless::Function` | `Read` | `Id` o `Arn` y `Type` | `Id` o `RoleName` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::DynamoDB::Table` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::Events::EventBus` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::Lambda::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::S3::Bucket` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::Serverless::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::Serverless::SimpleTable` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::Serverless::StateMachine` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn`, `Name` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::SNS::Topic` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::SQS::Queue` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::Serverless::StateMachine` | `AWS::StepFunctions::StateMachine` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn`, `Name` y `Type` | 
| `AWS::SNS::Topic` | `AWS::Lambda::Function` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::SNS::Topic` | `AWS::Serverless::Function` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::SNS::Topic` | `AWS::SQS::Queue` | `Write` | `Id` o `Arn` y `Type` | `Id` o `Arn`, `QueueUrl` y `Type` | 
| `AWS::SQS::Queue` | `AWS::Lambda::Function` | `Read`, `Write` | `Id` o `Arn` y `Type` | `Id` o `RoleName` y `Type` | 
| `AWS::SQS::Queue` | `AWS::Serverless::Function` | `Read`, `Write` | `Id` o `Arn` y `Type` | `Id` o `RoleName` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::DynamoDB::Table` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::Events::EventBus` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::Lambda::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::S3::Bucket` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::Serverless::Function` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::Serverless::SimpleTable` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::Serverless::StateMachine` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn`, `Name` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::SNS::Topic` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::SQS::Queue` | `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn` y `Type` | 
| `AWS::StepFunctions::StateMachine` | `AWS::StepFunctions::StateMachine` | `Read`, `Write` | `Id` o `RoleName` y `Type` | `Id` o `Arn`, `Name` y `Type` | 

## Políticas de IAM creadas por conectores
<a name="reference-sam-connector-policies"></a>

En esta sección se documentan las políticas AWS Identity and Access Management (de IAM) que se crean AWS SAM al utilizar los conectores.

De `AWS::DynamoDB::Table` a `AWS::Lambda::Function`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:DescribeStream",
        "dynamodb:GetRecords",
        "dynamodb:GetShardIterator",
        "dynamodb:ListStreams"
      ],
      "Resource": [
        "%{Source.Arn}/stream/*"
      ]
    }
  ]
}
```

De `AWS::Events::Rule` a `AWS::SNS::Topic`  
**Tipo de política**  
[https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html) asociada a la `AWS::SNS::Topic`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "events.amazonaws.com"
      },
      "Resource": "%{Destination.Arn}",
      "Action": "sns:Publish",
      "Condition": {
        "ArnEquals": {
          "aws:SourceArn": "%{Source.Arn}"
        }
      }
    }
  ]
}
```

De `AWS::Events::Rule` a `AWS::Events::EventBus`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Events::Rule`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "events:PutEvents"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::Events::Rule` a `AWS::StepFunctions::StateMachine`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Events::Rule`.   
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "states:StartExecution"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::Events::Rule` a `AWS::Lambda::Function`  
**Tipo de política**  
`[AWS::Lambda::Permission](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)` asociada a la `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Action": "lambda:InvokeFunction",
  "Principal": "events.amazonaws.com",
  "SourceArn": "%{Source.Arn}"
}
```

De `AWS::Events::Rule` a `AWS::SQS::Queue`  
**Tipo de política**  
`[AWS::SQS::QueuePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queuepolicy.html)` asociada a la `AWS::SQS::Queue`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "events.amazonaws.com"
      },
      "Resource": "%{Destination.Arn}",
      "Action": "sqs:SendMessage",
      "Condition": {
        "ArnEquals": {
          "aws:SourceArn": "%{Source.Arn}"
        }
      }
    }
  ]
}
```

De `AWS::Lambda::Function` a `AWS::Lambda::Function`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "lambda:InvokeAsync",
        "lambda:InvokeFunction"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::Lambda::Function` a `AWS::S3::Bucket`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:GetObjectAcl",
        "s3:GetObjectLegalHold",
        "s3:GetObjectRetention",
        "s3:GetObjectTorrent",
        "s3:GetObjectVersion",
        "s3:GetObjectVersionAcl",
        "s3:GetObjectVersionForReplication",
        "s3:GetObjectVersionTorrent",
        "s3:ListBucket",
        "s3:ListBucketMultipartUploads",
        "s3:ListBucketVersions",
        "s3:ListMultipartUploadParts"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/*"
      ]
    }
  ]
}
```
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:AbortMultipartUpload",
        "s3:DeleteObject",
        "s3:DeleteObjectVersion",
        "s3:PutObject",
        "s3:PutObjectLegalHold",
        "s3:PutObjectRetention",
        "s3:RestoreObject"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/*"
      ]
    }
  ]
}
```

De `AWS::Lambda::Function` a `AWS::DynamoDB::Table`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:GetItem",
        "dynamodb:Query",
        "dynamodb:Scan",
        "dynamodb:BatchGetItem",
        "dynamodb:ConditionCheckItem",
        "dynamodb:PartiQLSelect"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/index/*"
      ]
    }
  ]
}
```
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:PutItem",
        "dynamodb:UpdateItem",
        "dynamodb:DeleteItem",
        "dynamodb:BatchWriteItem",
        "dynamodb:PartiQLDelete",
        "dynamodb:PartiQLInsert",
        "dynamodb:PartiQLUpdate"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/index/*"
      ]
    }
  ]
}
```

De `AWS::Lambda::Function` a `AWS::SQS::Queue`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sqs:ReceiveMessage",
        "sqs:GetQueueAttributes"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sqs:DeleteMessage",
        "sqs:SendMessage",
        "sqs:ChangeMessageVisibility",
        "sqs:PurgeQueue"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::Lambda::Function` a `AWS::SNS::Topic`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sns:Publish"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::Lambda::Function` a `AWS::StepFunctions::StateMachine`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "states:StartExecution",
        "states:StartSyncExecution"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "states:StopExecution"
      ],
      "Resource": [
        "arn:${AWS::Partition}:states:${AWS::Region}:${AWS::AccountId}:execution:%{Destination.Name}:*"
      ]
    }
  ]
}
```
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "states:DescribeStateMachine",
        "states:ListExecutions"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "states:DescribeExecution",
        "states:DescribeStateMachineForExecution",
        "states:GetExecutionHistory"
      ],
      "Resource": [
        "arn:${AWS::Partition}:states:${AWS::Region}:${AWS::AccountId}:execution:%{Destination.Name}:*"
      ]
    }
  ]
}
```

De `AWS::Lambda::Function` a `AWS::Events::EventBus`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "events:PutEvents"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::Lambda::Function` a `AWS::Location::PlaceIndex`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "geo:DescribePlaceIndex",
        "geo:GetPlace",
        "geo:SearchPlaceIndexForPosition",
        "geo:SearchPlaceIndexForSuggestions",
        "geo:SearchPlaceIndexForText"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::ApiGatewayV2::Api` a `AWS::Lambda::Function`  
**Tipo de política**  
`[AWS::Lambda::Permission](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)` asociada a la `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Action": "lambda:InvokeFunction",
  "Principal": "apigateway.amazonaws.com",
  "SourceArn": "arn:${AWS::Partition}:execute-api:${AWS::Region}:${AWS::AccountId}:%{Source.ResourceId}/%{Source.Qualifier}"
}
```

De `AWS::ApiGateway::RestApi` a `AWS::Lambda::Function`  
**Tipo de política**  
`[AWS::Lambda::Permission](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)` asociada a la `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Action": "lambda:InvokeFunction",
  "Principal": "apigateway.amazonaws.com",
  "SourceArn": "arn:${AWS::Partition}:execute-api:${AWS::Region}:${AWS::AccountId}:%{Source.ResourceId}/%{Source.Qualifier}"
}
```

De `AWS::SNS::Topic` a `AWS::SQS::Queue`  
**Tipo de política**  
`[AWS::SQS::QueuePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queuepolicy.html)` asociada a la `AWS::SQS::Queue`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sns.amazonaws.com"
      },
      "Resource": "%{Destination.Arn}",
      "Action": "sqs:SendMessage",
      "Condition": {
        "ArnEquals": {
          "aws:SourceArn": "%{Source.Arn}"
        }
      }
    }
  ]
}
```

De `AWS::SNS::Topic` a `AWS::Lambda::Function`  
**Tipo de política**  
`[AWS::Lambda::Permission](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)` asociada a la `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Action": "lambda:InvokeFunction",
  "Principal": "sns.amazonaws.com",
  "SourceArn": "%{Source.Arn}"
}
```

De `AWS::SQS::Queue` a `AWS::Lambda::Function`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sqs:DeleteMessage"
      ],
      "Resource": [
        "%{Source.Arn}"
      ]
    }
  ]
}
```
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sqs:ReceiveMessage",
        "sqs:GetQueueAttributes"
      ],
      "Resource": [
        "%{Source.Arn}"
      ]
    }
  ]
}
```

De `AWS::S3::Bucket` a `AWS::Lambda::Function`  
**Tipo de política**  
`[AWS::Lambda::Permission](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)` asociada a la `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Action": "lambda:InvokeFunction",
  "Principal": "s3.amazonaws.com",
  "SourceArn": "%{Source.Arn}",
  "SourceAccount": "${AWS::AccountId}"
}
```

De `AWS::StepFunctions::StateMachine` a `AWS::Lambda::Function`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::StepFunctions::StateMachine`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "lambda:InvokeAsync",
        "lambda:InvokeFunction"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::StepFunctions::StateMachine` a `AWS::SNS::Topic`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::StepFunctions::StateMachine`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sns:Publish"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::StepFunctions::StateMachine` a `AWS::SQS::Queue`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::StepFunctions::StateMachine`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sqs:SendMessage"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::StepFunctions::StateMachine` a `AWS::S3::Bucket`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::StepFunctions::StateMachine`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:GetObjectAcl",
        "s3:GetObjectLegalHold",
        "s3:GetObjectRetention",
        "s3:GetObjectTorrent",
        "s3:GetObjectVersion",
        "s3:GetObjectVersionAcl",
        "s3:GetObjectVersionForReplication",
        "s3:GetObjectVersionTorrent",
        "s3:ListBucket",
        "s3:ListBucketMultipartUploads",
        "s3:ListBucketVersions",
        "s3:ListMultipartUploadParts"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/*"
      ]
    }
  ]
}
```
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:AbortMultipartUpload",
        "s3:DeleteObject",
        "s3:DeleteObjectVersion",
        "s3:PutObject",
        "s3:PutObjectLegalHold",
        "s3:PutObjectRetention",
        "s3:RestoreObject"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/*"
      ]
    }
  ]
}
```

De `AWS::StepFunctions::StateMachine` a `AWS::DynamoDB::Table`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::StepFunctions::StateMachine`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:GetItem",
        "dynamodb:Query",
        "dynamodb:Scan",
        "dynamodb:BatchGetItem",
        "dynamodb:ConditionCheckItem",
        "dynamodb:PartiQLSelect"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/index/*"
      ]
    }
  ]
}
```
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:PutItem",
        "dynamodb:UpdateItem",
        "dynamodb:DeleteItem",
        "dynamodb:BatchWriteItem",
        "dynamodb:PartiQLDelete",
        "dynamodb:PartiQLInsert",
        "dynamodb:PartiQLUpdate"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/index/*"
      ]
    }
  ]
}
```

De `AWS::StepFunctions::StateMachine` a `AWS::StepFunctions::StateMachine`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::StepFunctions::StateMachine`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "states:DescribeExecution"
      ],
      "Resource": [
        "arn:${AWS::Partition}:states:${AWS::Region}:${AWS::AccountId}:execution:%{Destination.Name}:*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "events:DescribeRule"
      ],
      "Resource": [
        "arn:${AWS::Partition}:events:${AWS::Region}:${AWS::AccountId}:rule/StepFunctionsGetEventsForStepFunctionsExecutionRule"
      ]
    }
  ]
}
```
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "states:StartExecution"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "states:StopExecution"
      ],
      "Resource": [
        "arn:${AWS::Partition}:states:${AWS::Region}:${AWS::AccountId}:execution:%{Destination.Name}:*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "events:PutTargets",
        "events:PutRule"
      ],
      "Resource": [
        "arn:${AWS::Partition}:events:${AWS::Region}:${AWS::AccountId}:rule/StepFunctionsGetEventsForStepFunctionsExecutionRule"
      ]
    }
  ]
}
```

De `AWS::StepFunctions::StateMachine` a `AWS::Events::EventBus`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::StepFunctions::StateMachine`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "events:PutEvents"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::AppSync::DataSource` a `AWS::DynamoDB::Table`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::AppSync::DataSource`.  
**Categorías de acceso**  
`Read`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:GetItem",
        "dynamodb:Query",
        "dynamodb:Scan",
        "dynamodb:BatchGetItem",
        "dynamodb:ConditionCheckItem",
        "dynamodb:PartiQLSelect"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/index/*"
      ]
    }
  ]
}
```
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:PutItem",
        "dynamodb:UpdateItem",
        "dynamodb:DeleteItem",
        "dynamodb:BatchWriteItem",
        "dynamodb:PartiQLDelete",
        "dynamodb:PartiQLInsert",
        "dynamodb:PartiQLUpdate"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}/index/*"
      ]
    }
  ]
}
```

De `AWS::AppSync::DataSource` a `AWS::Lambda::Function`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::AppSync::DataSource`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "lambda:InvokeAsync",
        "lambda:InvokeFunction"
      ],
      "Resource": [
        "%{Destination.Arn}",
        "%{Destination.Arn}:*"
      ]
    }
  ]
}
```

De `AWS::AppSync::DataSource` a `AWS::Events::EventBus`  
**Tipo de política**  
[La política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) asociada al rol de `AWS::AppSync::DataSource`.  
**Categorías de acceso**  
`Write`  

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "events:PutEvents"
      ],
      "Resource": [
        "%{Destination.Arn}"
      ]
    }
  ]
}
```

De `AWS::AppSync::GraphQLApi` a `AWS::Lambda::Function`  
**Tipo de política**  
`[AWS::Lambda::Permission](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)` asociada a la `AWS::Lambda::Function`.  
**Categorías de acceso**  
`Write`  

```
{
  "Action": "lambda:InvokeFunction",
  "Principal": "appsync.amazonaws.com",
  "SourceArn": "arn:${AWS::Partition}:appsync:${AWS::Region}:${AWS::AccountId}:apis/%{Source.ResourceId}"
}
```

# Instalación de Docker para usarlo con la CLI de AWS SAM
<a name="install-docker"></a>

Docker es una aplicación que ejecuta contenedores en su máquina. ConDocker, AWS SAM puede proporcionar un entorno local similar a AWS Lambda un contenedor para crear, probar y depurar sus aplicaciones sin servidor.

**nota**  
Docker solo es necesario para probar las aplicaciones de forma local y para crear paquetes de implementación mediante la opción `--use-container`.

**Topics**
+ [Instalación de Docker](#install-docker-instructions)
+ [Siguientes pasos](#install-docker-next-steps)

## Instalación de Docker
<a name="install-docker-instructions"></a>

Siga estas instrucciones para instalar Docker en su sistema operativo.

### Linux
<a name="install-docker-instructions-linux"></a>

Docker está disponible en muchos sistemas operativos diferentes, incluidas las distribuciones de Linux más modernas, como CentOS, Debian o Ubuntu. Para obtener más información sobre cómo instalar Docker en su sistema operativo concreto, consulte [Conseguir Docker](https://docs.docker.com/get-docker/) en el sitio web de Docker Docs.

**Para instalar Docker en Amazon Linux 2 o Amazon Linux 2023**

1. Actualice la caché de paquetes y los paquetes instalados en la instancia.

   ```
   $ sudo yum update -y
   ```

1. Instale el paquete de Community Edition de Docker más reciente.
   + Para Amazon Linux 2, ejecute lo siguiente:

     ```
     $ sudo amazon-linux-extras install docker
     ```
   + Para Amazon Linux 2023, ejecute lo siguiente:

     ```
     $ sudo yum install -y docker
     ```

1. Inicie el servicio Docker.

   ```
   $ sudo service docker start
   ```

1. Agregue el `ec2-user` al grupo `docker` para que pueda ejecutar comandos de Docker sin usar **sudo**.

   ```
   $ sudo usermod -a -G docker ec2-user
   ```

1. Cierre sesión y vuelva a iniciarla para actualizar los nuevos permisos de grupo de `docker`. Para ello, cierre la ventana de su terminal de SSH actual y vuelva a conectarse a su instancia en una ventana nueva. De esta forma, la nueva sesión de SSH debería tener los permisos de grupo de `docker` adecuados.

1. Compruebe que el `ec2-user` puede ejecutar comandos de Docker sin **sudo**.

   ```
   $ docker ps
   ```

   Debería ver el siguiente resultado, lo que confirma que Docker está instalado y en ejecución:

   ```
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
   ```

**nota**  
En Linux, para crear y ejecutar funciones de Lambda con una arquitectura de conjunto de instrucciones diferente a la de la máquina host, hay pasos adicionales para configurar Docker. Por ejemplo, para ejecutar funciones `arm64` en una unidad `x86_64`, puede ejecutar el siguiente comando para configurar el daemon de Docker: `docker run --rm --privileged multiarch/qemu-user-static --reset -p yes`.

Si tiene problemas para instalar Docker, consulte [Solución de errores de la instalación](install-sam-cli.md#sam-cli-troubleshoot-install). O bien, consulte la sección de [Resolución de problemas](https://docs.docker.com/engine/install/linux-postinstall/#troubleshooting) de los **Pasos posteriores a la instalación en Linux** en el sitio web de Docker Docs.

### macOS
<a name="install-docker-instructions-macos"></a>

**nota**  
Docker Desktop cuenta con soporte oficial, pero a partir de la versión 1.47.0 de la CLI de AWS SAM, puede usar alternativas siempre que usen el tiempo de ejecución de Docker.

1. Instalar Docker

   La CLI de AWS SAM es compatible con Docker para macOS Sierra 10.12 o posterior. Para saber cómo instalar Docker, consulte [Instalar Docker Desktop para Mac](https://docs.docker.com/docker-for-mac/install/) en el sitio web de Docker Docs.

1. Configuración de las unidades compartidas

    AWS SAMCLIRequiere que el directorio del proyecto, o cualquier directorio principal, esté incluido en una unidad compartida. Para ello puede ser necesario el uso compartido de archivos. Para obtener más información, consulte el tema de solución de problemas [El montaje de volúmenes requiere el uso compartido de archivos](https://docs.docker.com/desktop/troubleshoot-and-support/troubleshoot/topics/#volume-mounting-requires-file-sharing-for-any-project-directories-outside-of-home) en *Docker Docs*.

1. Verificar la instalación

   Una vez Docker esté instalado, compruebe que funciona. Confirme también que puede ejecutar comandos de Docker desde la línea de comandos (por ejemplo, `docker ps`). No necesita instalar, recuperar ni extraer ningún contenedor; la CLI de AWS SAM lo hace automáticamente según sea necesario.

Si tiene problemas con la instalación de Docker, consulte la sección [Solución de problemas y diagnóstico](https://docs.docker.com/docker-for-mac/troubleshoot/) del sitio web de Docker Docs para más consejos sobre resolución de problemas.

### Windows
<a name="install-docker-instructions-windows"></a>

**nota**  
AWS SAM oficialmente es compatible con Docker Desktop. Sin embargo, a partir de la versión 1.47.0 de la CLI de AWS SAM, puede usar alternativas siempre que usen el tiempo de ejecución de Docker.

1. Instale Docker.

   Docker Desktop es compatible con el sistema operativo Windows más reciente. Para las versiones antiguas de Windows, está disponible Docker Toolbox. Elija su versión de Windows para instalar Docker paso a paso de manera correcta:
   + Para instalar Docker para Windows 10, consulte [Instalar Docker Desktop para Windows](https://docs.docker.com/docker-for-windows/install/) en el sitio web de Docker Docs.
   + Para realizar la instalación Docker para versiones anteriores de Windows, consulte [The Docker Toolbox](https://github.com/docker-archive/toolbox) en el repositorio de Docker Toolbox. GitHub 

1. Configuración de las unidades compartidas

    AWS SAMCLIRequiere que el directorio del proyecto, o cualquier directorio principal, esté incluido en una unidad compartida. En algunos casos, debe compartir la unidad para que Docker funcione correctamente.

1. Verifica la instalación.

   Una vez Docker esté instalado, compruebe que funciona. Confirme también que puede ejecutar comandos de Docker desde la línea de comandos (por ejemplo, **docker ps**). No necesita instalar, recuperar ni extraer ningún contenedor; la CLI de AWS SAM lo hace automáticamente según sea necesario.

Si tiene problemas con la instalación de Docker, consulte la sección [Solución de problemas y diagnóstico](https://docs.docker.com/docker-for-mac/troubleshoot/) del sitio web de Docker Docs para más consejos sobre resolución de problemas.

## Siguientes pasos
<a name="install-docker-next-steps"></a>

Para saber cómo instalar el AWS SAMCLI, consulte[Instala la AWS SAM CLI](install-sam-cli.md).

# Instalación Finch para su uso con la AWS SAM CLI
<a name="install-finch"></a>

Finch AWS es una herramienta de desarrollo de contenedores que ofrece una alternativaDocker, especialmente beneficiosa en los sistemas macOS y Linux. Para obtener más información, consulte [Finch en GitHub](https://github.com/runfinch). ConFinch, AWS SAM puede proporcionar un entorno local similar a AWS Lambda un contenedor para crear, probar y depurar sus aplicaciones sin servidor.

**nota**  
Necesita Finch para probar las aplicaciones de forma local, para crear paquetes de implementación mediante la opción `--use-container` y para crear funciones de imagen de OCI. A partir de la versión 1.145.0 de la AWS SAM CLI, la AWS SAM CLI es compatible con Finch el tiempo de ejecución de contenedores alternativo a. Docker

**Topics**
+ [Instalación de Finch](#install-finch-instructions)
+ [Configuración Finch con AWS SAM CLI](#install-finch-configuration)
+ [Verificar la instalación](#install-finch-verification)
+ [Detener Finch](#install-finch-stopping)
+ [Resolución de problemas](#install-finch-troubleshooting)
+ [Siguientes pasos](#install-finch-next-steps)

## Instalación de Finch
<a name="install-finch-instructions"></a>

Siga estas instrucciones para instalar Finch en su sistema operativo.

### Requisitos previos
<a name="install-finch-prerequisites"></a>

**nota**  
Finchla integración en AWS SAM CLI está disponible en los sistemas macOS y Linux. Para los usuarios de Windows, evalúe la posibilidad de utilizar una máquina virtual o un entorno Linux para la funcionalidad de Finch.

**Versión para macOS:**
+ macOS 15 Sequoia
+ macOS 14 Sonoma

**nota**  
Finch es compatible con las dos últimas versiones de macOS.

**Linux**:
+ Linux Kernel v4.x\$1

### Instalación de Finch
<a name="install-finch"></a>

#### macOS
<a name="install-finch-instructions-macos"></a>

**Para instalar Finch en macOS**

1. Instale Finch mediante la CLI de `brew`. Si se le solicita, escriba su contraseña de macOS.

   ```
   $ brew install finch
   ```

1. Compruebe la versión Finch instalada.

   ```
   $ finch --version
   ```

1. Inicialice la máquina virtual de Finch (configuración inicial).

   ```
   $ finch vm init
   ```

1. Inicie la máquina virtual de Finch.

   ```
   $ finch vm start
   ```

1. Compruebe el estado de la máquina virtual de Finch.

   ```
   $ finch vm status
   ```

1. Compruebe que Finch se ejecute correctamente.

   ```
   $ finch --info
   $ finch ps
   ```

Para obtener más información, consulte la [Instalación de Finch en macOS](https://runfinch.com/docs/managing-finch/macos/installation/).

#### Linux
<a name="install-finch-instructions-linux"></a>

Puede instalar Finch en Amazon Linux, Ubuntu o mediante un método de instalación genérico. Para obtener más información, consulte la [Instalación de Finch en Linux](https://runfinch.com/docs/managing-finch/linux/installation/).

## Configuración Finch con AWS SAM CLI
<a name="install-finch-configuration"></a>

Tras la instalaciónFinch, la AWS SAM CLI detecta y utiliza automáticamente Finch como tiempo de ejecución del contenedor cuando Docker no se ejecuta.

**nota**  
Finch sirve como alternativa para Docker. Si tiene ambos Finch instalados Docker y en ejecución, la AWS SAM CLI prioriza de forma Docker predeterminada.

### Configuración de preferencias de administrador (macOS)
<a name="install-finch-configuration-preference"></a>

Puede configurar la AWS SAM CLI para que utilice un tiempo de ejecución de contenedor específico como predeterminado mediante la creación de un archivo de preferencias del administrador. Esta preferencia de todo el sistema anula el comportamiento alternativo predeterminado.

**Métodos de configuración disponibles**
+ **Definir Finch como tiempo de ejecución de contenedor preferido:**

  ```
  $ sudo /usr/libexec/PlistBuddy -c "Add :DefaultContainerRuntime string finch" /Library/Preferences/com.amazon.samcli.plist
  ```
+ **Definir Docker como tiempo de ejecución de contenedor preferido:**

  ```
  $ sudo /usr/libexec/PlistBuddy -c "Add :DefaultContainerRuntime string docker" /Library/Preferences/com.amazon.samcli.plist
  ```
+ **Eliminar la preferencia (volver al comportamiento predeterminado):**

  ```
  $ sudo /usr/libexec/PlistBuddy -c "Remove :DefaultContainerRuntime" /Library/Preferences/com.amazon.samcli.plist
  ```

**nota**  
Cuando no se establece ninguna preferencia de administrador, la AWS SAM CLI la utiliza de forma Docker predeterminada cuando está disponible, y Finch como alternativa cuando no Docker se está ejecutando.

### Diferencias de montaje de directorios (macOS)
<a name="install-finch-differences"></a>

En macOS, los comandos AWS SAM locales fallan si ubicas el proyecto fuera del directorio principal (`~`) o`/Volumes`. Este diseño restringe el montaje de directorios automático por motivos de seguridad sin su consentimiento.

**Opciones de mitigación**
+ **Opción 1:** abra la configuración de Finch en un editor de texto `~/.finch/finch.yaml` y agregue la ruta del proyecto en la sección `additional_directories`, y luego reinicie la máquina virtual de Finch. Para obtener información adicional, consulte la [documentación de Finch](https://runfinch.com/docs/managing-finch/macos/disk-management/#adding-additional-disk-mounts).

  ```
  $ finch vm stop
  $ finch vm start
  ```
+ **Opción 2:** mueva el proyecto a su directorio principal.

## Verificar la instalación
<a name="install-finch-verification"></a>

Después de instalarlo e iniciarloFinch, compruebe que funciona con AWS SAM CLI.

### Verificación básica
<a name="install-finch-verification-basic"></a>

Ejecute el siguiente comando para comprobar que la AWS SAM CLI puede utilizarFinch:

```
$ sam build --use-container
```

Debería ver cómo se utiliza la AWS SAM CLI Finch para crear la aplicación en un entorno de contenedores.

**nota**  
Finch sirve como alternativa para Docker. Si Docker se está ejecutando, la AWS SAM CLI priorizará Docker de forma predeterminada.

### Probar Finch como alternativa
<a name="install-finch-verification-fallback"></a>

Para probar Finch como alternativa cuando Docker se está ejecutando, primero debe detener Docker.

**Cómo probar la funcionalidad de la alternativa Finch**

1. Detenga Docker con los comandos apropiados para el sistema operativo.

   **macOS:**

   ```
   $ docker stop $(docker ps -q)
   $ pkill -f "Docker Desktop"
   ```

   Verifique que Docker esté detenido.

   ```
   $ docker ps
   ```

   **Linux**:

   ```
   $ docker stop $(docker ps -q)
   $ sudo systemctl stop docker
   ```

   Verifique que Docker esté detenido.

   ```
   $ sudo systemctl status docker
   ```

1. Ejecute el `sam build --use-container` comando para verificar que la AWS SAM CLI Finch lo utilice automáticamente como respaldo.

## Detener Finch
<a name="install-finch-stopping"></a>

Si necesita detener Finch, utilice los siguientes comandos:

**macOS:**

```
$ finch vm stop
$ sudo pkill -f finch
```

Verifique que Finch esté detenido.

```
$ finch vm status
```

**Linux**:

```
$ sudo systemctl stop finch
$ sudo pkill -f finch
```

Verifique que Finch esté detenido.

```
$ sudo systemctl status finch
```

## Resolución de problemas
<a name="install-finch-troubleshooting"></a>

Si tiene problemas con Finch:
+ Compruebe que el sistema operativo cumpla los requisitos previos.
+ Compruebe que ha habilitado la virtualización en el sistema.
+ Para macOS, compruebe que tiene suficiente espacio en disco para la máquina virtual.
+ Para Linux, compruebe que tiene los permisos adecuados para ejecutar los comandos `systemctl`.
+ Si encuentra errores de CloudFormation implementación con errores de «tipo de medio no compatible» al insertar imágenes de varias arquitecturas en Amazon Elastic Container Registry (Amazon ECR), cree un único artefacto de imagen en lugar de utilizar imágenes de varias arquitecturas. Esto ocurre porque Finch empuja el índice de la imagen y la imagen a Amazon ECR, mientras que Docker solo empuja la imagen.
+ Si la creación entre plataformas falla porque la arquitectura de la función de destino no coincide con la arquitectura de la máquina host en Linux, habilite la emulación entre plataformas mediante la ejecución `sudo finch run --privileged --rm tonistiigi/binfmt:master --install all`.

Para obtener información adicional sobre la solución de problemas, consulte la [documentación de Finch](https://runfinch.com/docs/) o la [Solución de problemas para AWS SAM CLI](sam-cli-troubleshooting.md).

## Siguientes pasos
<a name="install-finch-next-steps"></a>

Ahora que lo ha Finch instalado, puede usarlo con AWS SAM CLI para:
+ Crear aplicaciones sin servidor mediante contenedores con `sam build --use-container`. Para obtener más información, consulte [sam build](sam-cli-command-reference-sam-build.md).
+ Probar las funciones de Lambda de forma local con `sam local invoke`. Para obtener más información, consulte [sam local invoke](sam-cli-command-reference-sam-local-invoke.md).
+ Iniciar una API Gateway local con `sam local start-api`. Para obtener más información, consulte [sam local start-api](sam-cli-command-reference-sam-local-start-api.md).
+ Iniciar un punto de conexión de Lambda local con `sam local start-lambda`. Para obtener más información, consulte [sam local start-lambda](sam-cli-command-reference-sam-local-start-lambda.md).

Para obtener más información sobre el uso de AWS SAM CLI con contenedores, consulte[Compilación predeterminada con AWS SAM](serverless-sam-cli-using-build.md).

# Repositorios de imágenes para AWS SAM
<a name="serverless-image-repositories"></a>

AWS SAM simplifica las tareas de integración continua y entrega continua (CI/CD) para aplicaciones sin servidor con la ayuda de la creación de imágenes de contenedores. Las imágenes que se AWS SAM proporcionan incluyen la interfaz de línea de AWS SAM comandos (CLI) y las herramientas de compilación para varios AWS Lambda tiempos de ejecución compatibles. Esto facilita la creación y el empaquetado de aplicaciones sin servidor mediante la CLI de AWS SAM. Puede utilizar estas imágenes con CI/CD los sistemas para automatizar la creación y el despliegue de AWS SAM aplicaciones. Para ver ejemplos, consulte [Implemente con CI/CD sistemas y canalizaciones](deploying-options.md#serverless-deploying-ci-cd).

AWS SAM URIs Las imágenes del contenedor de compilación están etiquetadas con la versión AWS SAMCLI incluida en esa imagen. Si especificas el URI sin etiqueta, se utiliza la versión más reciente. Por ejemplo, `public.ecr.aws/sam/build-nodejs20.x` utiliza la imagen más reciente. Sin embargo, `public.ecr.aws/sam/build-nodejs20.x:1.24.1` utiliza la imagen que contiene la versión 1.24.1 de la CLI de AWS SAM .

A partir de la versión 1.33.0 de AWS SAMCLI, ambas imágenes `x86_64` y las del `arm64` contenedor están disponibles para los tiempos de ejecución compatibles. Para obtener más información, consulta [Tiempos de ejecución de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) en la *Guía para desarrolladores de AWS Lambda *.

**nota**  
Antes de la versión 1.22.0 AWS SAMCLI, DockerHub era el repositorio predeterminado del que AWS SAMCLI extraía la imagen del contenedor. A partir de la versión 1.22.0, el repositorio por defecto se cambió a Amazon Elastic Container Registry Public (Amazon ECR Public). Para extraer una imagen de contenedor de un repositorio que no sea el predeterminado actual, puede usar el comando **[sam build](sam-cli-command-reference-sam-build.md)** con la opción **--build-image**. Los ejemplos que aparecen al final de este tema muestran cómo crear aplicaciones utilizando imágenes de DockerHub repositorios.

## Repositorio de imágenes URIs
<a name="serverless-image-repository-uris"></a>

En la siguiente tabla se enumeran las imágenes URIs de contenedores de compilación [pública de Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/public/what-is-ecr.html) que puede utilizar para crear y empaquetar aplicaciones sin servidor. AWS SAM

**nota**  
Amazon ECR Public reemplazó a DockerHub partir de la versión 1.22.0 de la CLI de AWS SAM. Si utiliza una versión anterior de AWS SAMCLI, le recomendamos que la actualice.


| Tiempo de ejecución |  Amazon ECR Public | 
| --- | --- | 
| Tiempo de ejecución personalizado (AL2023) | [public.ecr. aws/sam/build- proporcionado.al 2023](https://gallery.ecr.aws/sam/build-provided.al2023) | 
| Tiempo de ejecución personalizado (AL2) | [public.ecr. aws/sam/build- proporcionado.al2](https://gallery.ecr.aws/sam/build-provided.al2) | 
| Tiempo de ejecución personalizado | [public.ecr. aws/sam/build- proporcionado](https://gallery.ecr.aws/sam/build-provided) | 
| Java 25 | [public.ecr. aws/sam/build-java25](https://gallery.ecr.aws/sam/build-java25) | 
| Java 21 | [public.ecr. aws/sam/build-java21](https://gallery.ecr.aws/sam/build-java21) | 
| Java 17 | [public.ecr. aws/sam/build-java17](https://gallery.ecr.aws/sam/build-java17) | 
| Java 11 | [public.ecr. aws/sam/build-java11](https://gallery.ecr.aws/sam/build-java11) | 
| Java 8 | [public.ecr. aws/sam/build-java8](https://gallery.ecr.aws/sam/build-java8) | 
| .NET 9 | [public.ecr. aws/sam/build-dotnet9](https://gallery.ecr.aws/sam/build-dotnet9) | 
| .NET 8 | [public.ecr. aws/sam/build-dotnet8](https://gallery.ecr.aws/sam/build-dotnet8) | 
| .NET 7 | [public.ecr. aws/sam/build-dotnet7](https://gallery.ecr.aws/sam/build-dotnet7) | 
| .NET 6 | [public.ecr. aws/sam/build-dotnet6](https://gallery.ecr.aws/sam/build-dotnet6) | 
| Node.js 24 | [public.ecr. aws/sam/build-nodejs24.x](https://gallery.ecr.aws/sam/build-nodejs24.x) | 
| Node.js 22 | [public.ecr. aws/sam/build-nodejs22.x](https://gallery.ecr.aws/sam/build-nodejs22.x) | 
| Node.js 20 | [public.ecr. aws/sam/build- nodejs20.x](https://gallery.ecr.aws/sam/build-nodejs20.x) | 
| Node.js 18 | [public.ecr. aws/sam/build-nodejs18.x](https://gallery.ecr.aws/sam/build-nodejs18.x) | 
| Node.js 16 | [public.ecr. aws/sam/build- nodejs16.x](https://gallery.ecr.aws/sam/build-nodejs16.x) | 
| Python 3.14 | [public.ecr. aws/sam/build- python 3.14](https://gallery.ecr.aws/sam/build-python3.14) | 
| Python 3.13 | [public.ecr. aws/sam/build- python 3.13](https://gallery.ecr.aws/sam/build-python3.13) | 
| Python 3.12 | [public.ecr. aws/sam/build- python 3.12](https://gallery.ecr.aws/sam/build-python3.12) | 
| Python 3.11 | [public.ecr. aws/sam/build- python 3.11](https://gallery.ecr.aws/sam/build-python3.11) | 
| Python 3.10 | [public.ecr. aws/sam/build- python 3.10](https://gallery.ecr.aws/sam/build-python3.10) | 
| Python 3.9 | [public.ecr. aws/sam/build](https://gallery.ecr.aws/sam/build-python3.9)- python 3.9 | 
| Python 3.8 | [public.ecr. aws/sam/build-python 3.8](https://gallery.ecr.aws/sam/build-python3.8) | 
| Ruby 3.4 | [public.ecr. aws/sam/build- rubí 3.4](https://gallery.ecr.aws/sam/build-ruby3.4) | 
| Ruby 3.3 | [public.ecr. aws/sam/build- rubí 3.3](https://gallery.ecr.aws/sam/build-ruby3.3) | 
| Ruby 3.2 | [public.ecr. aws/sam/build- rubí 3.2](https://gallery.ecr.aws/sam/build-ruby3.2) | 

## Ejemplos
<a name="serverless-image-repository-example-commands"></a>

Los siguientes dos comandos de muestra crean aplicaciones mediante imágenes de contenedores del repositorio de imágenes:

**Crea una aplicación Node.js 24 utilizando una imagen de contenedor extraída de Amazon ECR**:

```
$ sam build --use-container --build-image public.ecr.aws/sam/build-nodejs24.x
```

**Crea un recurso de función utilizando la imagen del contenedor Python 3.14 extraída de Amazon ECR**:

```
$ sam build --use-container --build-image Function1=public.ecr.aws/sam/build-python3.14
```

# Implementación gradual de aplicaciones sin servidor con AWS SAM
<a name="automating-updates-to-serverless-apps"></a>

AWS Serverless Application Model (AWS SAM) viene integrado [CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html)para proporcionar AWS Lambda despliegues graduales. Con solo unas pocas líneas de configuración, AWS SAM hace lo siguiente por usted:
+ Implementa nuevas versiones de la función de Lambda y crea automáticamente alias que apuntan a la nueva versión.
+ Cambia gradualmente el tráfico de clientes a la nueva versión hasta que esté satisfecho de que funciona como se esperaba. Si una actualización no funciona correctamente, puedes deshacer los cambios.
+ Define funciones de prueba previas y posteriores al tráfico para verificar que el código recién implementado está configurado correctamente y que la aplicación funciona como se espera.
+ Revierte automáticamente el despliegue si se activan CloudWatch las alarmas.

**nota**  
Si habilita los despliegues graduales a través de su AWS SAM plantilla, se creará automáticamente un CodeDeploy recurso para usted. Puede ver el CodeDeploy recurso directamente a través del Consola de administración de AWS.

**Ejemplo**

El siguiente ejemplo demuestra el uso de la función Lambda CodeDeploy para trasladar gradualmente a los clientes a la versión recién implementada:

```
Resources:
MyLambdaFunction:
  Type: AWS::Serverless::Function
  Properties:
    Handler: index.handler
    Runtime: nodejs20.x
    CodeUri: s3://bucket/code.zip

    AutoPublishAlias: live

    DeploymentPreference:
      Type: Canary10Percent10Minutes 
      Alarms:
        # A list of alarms that you want to monitor
        - !Ref AliasErrorMetricGreaterThanZeroAlarm
        - !Ref LatestVersionErrorMetricGreaterThanZeroAlarm
      Hooks:
        # Validation Lambda functions that are run before & after traffic shifting
        PreTraffic: !Ref PreTrafficLambdaFunction
        PostTraffic: !Ref PostTrafficLambdaFunction
```

Estas revisiones de la AWS SAM plantilla hacen lo siguiente:
+ `AutoPublishAlias`: Al añadir esta propiedad y especificar un nombre de alias, AWS SAM:
  + Detecta cuándo se implementa código nuevo, en función de los cambios en el URI de Amazon S3 de la función de Lambda.
  + Crea y publica una versión actualizada de esa función con el código más reciente.
  + Crea un alias con el nombre que usted le indique (a menos que ya exista un alias) y apunta a la versión actualizada de la función de Lambda. Las invocaciones de la función deben utilizar el cualificador de alias para poder usar esta característica. Si no estás familiarizado con el control de versiones y los alias de las funciones de Lambda, consulta [Control de versiones y alias de las funciones de AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
+ `Deployment Preference Type`: En el ejemplo anterior, el 10 % del tráfico de clientes se desvía inmediatamente a la nueva versión. Transcurridos 10 minutos, todo el tráfico se desvía a la nueva versión. Sin embargo, si las pruebas previas o posteriores al tráfico fallan, o si se activa una CloudWatch alarma, se CodeDeploy revertirá la implementación. Puedes especificar cómo debe desviarse el tráfico entre versiones de las siguientes maneras:
  + `Canary`: el tráfico se desvía en dos incrementos. Puedes elegir entre opciones de valores controlados predefinidos. Las opciones especifican el porcentaje de tráfico que se desvía a la versión actualizada de la función de Lambda en el primer incremento y el intervalo, en minutos, antes de que se desvíe el tráfico restante en el segundo incremento. 
  + `Linear`: El tráfico se desvía en incrementos iguales con el mismo número de minutos entre incrementos. Puedes elegir opciones lineales predefinidas que especifiquen el porcentaje de tráfico desviado en cada incremento y el número de minutos entre cada incremento. 
  + `AllAtOnce`: todo el tráfico se desvía a la vez desde la función de Lambda original a la versión de la función de Lambda actualizada. 

  En la siguiente tabla se describen otras opciones de cambio de tráfico que están disponibles además de la utilizada en el ejemplo.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html)
+ `Alarms`: Se trata de CloudWatch alarmas que se activan por cualquier error provocado por la implementación. Cuando se detectan, anulan automáticamente la implementación. Por ejemplo, si el código actualizado que está implementando provoca errores en la aplicación. Otro ejemplo es si alguna métrica [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions-metrics.html)o una CloudWatch métrica personalizada que especificó ha superado el umbral de alarma.
+ `Hooks`: estas son funciones de testeo anteriores y posteriores al tráfico que realizan comprobaciones antes de que el tráfico empiece a desviarse a la nueva versión y una vez completado el desvío de tráfico.
  + `PreTraffic`: Antes de que comience el cambio de tráfico, CodeDeploy invoca la función Lambda previa al enlace de tráfico. Esta función Lambda debe volver a llamar CodeDeploy e indicar el éxito o el error. Si la función falla, se interrumpe e informa del error a. CloudFormation Si la función se ejecuta correctamente, CodeDeploy pasa al cambio de tráfico.
  + `PostTraffic`: Una vez finalizado el cambio de tráfico, CodeDeploy invoca la función Lambda posterior al gancho de tráfico. Esto es similar a lo que ocurre antes del bloqueo de tráfico, en el que la función debe volver a llamar CodeDeploy para informar de un éxito o un fracaso. Utiliza enlaces posteriores al tráfico para ejecutar pruebas de integración u otras acciones de validación.

  Para obtener más información, consulta [SAM Reference to Safe Deployments](https://github.com/aws/serverless-application-model/blob/master/docs/safe_lambda_deployments.rst). 

## Implementación gradual de una función de Lambda por primera vez.
<a name="automating-updates-to-serverless-apps-first-time"></a>

 Cuando se implementa una función Lambda de forma gradual, se CodeDeploy requiere una versión de función previamente implementada desde la que desviar el tráfico. Por lo tanto, su primera implementación debe realizarse en dos pasos: 
+ **Paso 1**: implementa la función de Lambda y crea alias automáticamente con `AutoPublishAlias`.
+ **Paso 2**: haz tu implementación gradual con `DeploymentPreference`

Al realizar el primer despliegue gradual en dos pasos, se obtiene CodeDeploy una versión anterior de la función Lambda desde la que cambiar el tráfico.

### Paso 1: implementación de la función de Lambda
<a name="automating-updates-to-serverless-apps-first-time-step1"></a>

```
Resources:
MyLambdaFunction:
  Type: AWS::Serverless::Function
  Properties:
    Handler: index.handler
    Runtime: nodejs20.x
    CodeUri: s3://bucket/code.zip

    AutoPublishAlias: live
```

### Paso 2: realizar la implementación gradual
<a name="automating-updates-to-serverless-apps-first-time-step2"></a>

```
Resources:
MyLambdaFunction:
  Type: AWS::Serverless::Function
  Properties:
    Handler: index.handler
    Runtime: nodejs20.x
    CodeUri: s3://bucket/code.zip

    AutoPublishAlias: live

    DeploymentPreference:
      Type: Canary10Percent10Minutes 
      Alarms:
        # A list of alarms that you want to monitor
        - !Ref AliasErrorMetricGreaterThanZeroAlarm
        - !Ref LatestVersionErrorMetricGreaterThanZeroAlarm
      Hooks:
        # Validation Lambda functions that are run before and after traffic shifting
        PreTraffic: !Ref PreTrafficLambdaFunction
        PostTraffic: !Ref PostTrafficLambdaFunction
```

## Más información
<a name="automating-updates-to-serverless-apps-learn"></a>

Para ver un ejemplo práctico de cómo configurar una implementación gradual, consulta el [Módulo 5: implementaciones de valores controlados](https://s12d.com/sam-ws-en-canaries) en *el taller completo de AWS SAM *.

# Notas de referencia importantes para AWS SAM
<a name="important-notes"></a>

Esta sección contiene notas y anuncios importantes para AWS Serverless Application Model (AWS SAM).

**Topics**
+ [Notas importantes para 2023](#important-notes-2023)

## Notas importantes para 2023
<a name="important-notes-2023"></a>

### Octubre de 2023
<a name="important-notes-2023-10"></a>

#### La CLI de AWS SAM deja de dar soporte para Python 3.7
<a name="important-notes-2023-10-python"></a>

*Publicado el 20/10/2023*

Python 3.7recibió end-of-life el estatus en junio de 2023. AWS SAM CLISuspenderá el soporte Python 3.7 el 24 de octubre de 2023. Para obtener más información, consulta el [anuncio](https://github.com/aws/aws-sam-cli/issues/5889) en el *aws-sam-cli GitHubrepositorio*.

Este cambio afecta a los siguientes usuarios:
+ Si usa Python 3.7 e instala AWS SAM CLI el`pip`.
+ Si usas `aws-sam-cli` como biblioteca y crea su aplicación con Python 3.7.

Si lo instala y administra AWS SAM CLI mediante otro método, no se verá afectado.

Para los usuarios afectados, recomendamos que actualicen su entorno de desarrollo a una versión más reciente de Python 3.8 o posterior.

Este cambio no afecta a la compatibilidad con el entorno Python 3.7 AWS Lambda de ejecución. Para obtener más información, consulta [Política de obsolescencia del tiempo de ejecución](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-support-policy) en la *Guía del desarrollador de AWS Lambda *.