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.
Api
El objeto que describe un tipo de fuente de evento de Api
. Si se define un recurso AWS::Serverless::Api, los valores de ruta y método deben corresponder a una operación de la definición de OpenAPI de la API.
Si no se define ningún AWS::Serverless::Api, la entrada y la salida de la función son una representación de la solicitud HTTP y la respuesta HTTP.
Por ejemplo, con la API de JavaScript, el código de estado y el cuerpo de la respuesta se pueden controlar devolviendo un objeto con las claves StatusCode y body.
Sintaxis
Para declarar esta entidad en tu plantilla de AWS Serverless Application Model (AWS SAM), usa la siguiente sintaxis:
YAML
Auth:
ApiFunctionAuth
Method:String
Path:String
RequestModel:RequestModel
RequestParameters:List of [ String | RequestParameter ]
RestApiId:String
TimeoutInMillis:Integer
Propiedades
-
Auth
-
Configuración de autenticación para esta API, ruta y método específicos.
Útil para anular la configuración
DefaultAuthorizer
de autenticación de la API en una ruta individual cuando no se especifica ningunaDefaultAuthorizer
o la anulación de la configuraciónApiKeyRequired
predeterminada.Tipo: ApiFunctionAuth
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
Method
-
Método HTTP para el que se invoca esta función.
Tipo: cadena
Obligatorio: sí
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
Path
-
Ruta de URI para la que se invoca esta función. Debe empezar con
/
.Tipo: cadena
Obligatorio: sí
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
RequestModel
-
Modelo de solicitud para usarlo en esta API, ruta y método específicos. Debe hacer referencia al nombre de un modelo especificado en la sección
Models
de un recurso AWS::Serverless::Api.Tipo: RequestModel
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
RequestParameters
-
Configuración de los parámetro de solicitud para una API+ruta+método específicos. Todos los nombres de los parámetros deben empezar por
method.request
y estar limitados amethod.request.header
,method.request.querystring
omethod.request.path
.Una lista puede contener cadenas de nombres de parámetros y objetos de RequestParameter. En el caso de las cadenas, las propiedades
Required
yCaching
se establecerán de forma predeterminada enfalse
.Tipo: Lista de [ Cadena | RequestParameter ]
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
RestApiId
-
Identificador de un recurso RestAPI, que debe contener una operación con la ruta y el método dados. Normalmente, se configura para hacer referencia a un recurso AWS::Serverless::Api definido en esta plantilla.
Si no define esta propiedad, AWS SAM crea un recurso AWS::Serverless::Api predeterminado a partir de un documento
OpenApi
generado. Ese recurso contiene una unión de todas las rutas y métodos definidos por eventosApi
de la misma plantilla que no especifican unRestApiId
.Esto no puede hacer referencia a un recurso AWS::Serverless::Api definido en otra plantilla.
Tipo: cadena
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
TimeoutInMillis
-
Tiempo de espera personalizado entre 50 y 29 000 milisegundos.
nota
Al especificarse esta propiedad, AWS SAM modifica la definición de OpenAPI. La definición de OpenAPI debe especificarse en línea mediante la propiedad
DefinitionBody
.Tipo: entero
Obligatorio: no
Valor predeterminado: 29 000 milisegundos (29 segundos)
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
Ejemplos
Ejemplo básico
YAML
Events: ApiEvent: Type: Api Properties: Path: /path Method: get RequestParameters: - method.request.header.Authorization - method.request.querystring.keyword: Required: true Caching: false