

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

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

Crée un ensemble de ressources et de méthodes Amazon API Gateway qui peuvent être appelées via les points de terminaison HTTPS.

Il n'est pas nécessaire d'ajouter explicitement une [AWS::Serverless::Api](#sam-resource-api) ressource à un modèle de définition d'application AWS sans serveur. Une ressource de ce type est implicitement créée à partir de l'union des événements Api définis su les ressources [AWS::Serverless::Function](sam-resource-function.md) définies dans le modèle qui ne font pas référence à une ressource [AWS::Serverless::Api](#sam-resource-api).

Une [AWS::Serverless::Api](#sam-resource-api) ressource doit être utilisée pour définir et documenter l'API utilisée OpenApi, ce qui permet de mieux configurer les ressources Amazon API Gateway sous-jacentes.

Nous vous recommandons d'utiliser CloudFormation des hooks ou des politiques IAM pour vérifier que les ressources API Gateway sont associées à des autorisateurs afin de contrôler l'accès à celles-ci.

Pour plus d'informations sur l'utilisation CloudFormation des hooks, consultez la section [Enregistrement des hooks](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/registering-hook-python.html) dans le *guide de l'utilisateur de la CloudFormation CLI* et dans le [apigw-enforce-authorizer](https://github.com/aws-cloudformation/aws-cloudformation-samples/tree/main/hooks/python-hooks/apigw-enforce-authorizer/) GitHub référentiel.

Pour plus d'informations sur l'utilisation de politiques IAM, veuillez consulter [Exiger que les routes d'API disposent d'une autorisation](https://docs.aws.amazon.com/apigateway/latest/developerguide/security_iam_id-based-policy-examples.html#security_iam_id-based-policy-examples-require-authorization) dans le *Guide du développeur API Gateway*.

**Note**  
Lorsque vous déployez vers AWS CloudFormation, vos AWS SAM ressources sont AWS SAM transformées en CloudFormation ressources. Pour de plus amples informations, veuillez consulter [CloudFormation Ressources générées pour AWS SAM](sam-specification-generated-resources.md).

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-resource-api-properties"></a>

 `AccessLogSetting`   <a name="sam-api-accesslogsetting"></a>
Configure les réglages d'accès au journal pour une étape.  
*Type :* [AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[AccessLogSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-accesslogsetting)` propriété d'une `AWS::ApiGateway::Stage` ressource.

 `AlwaysDeploy`   <a name="sam-api-alwaysdeploy"></a>
Déploie toujours l'API, même si aucune modification n'a été détectée.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `ApiKeySourceType`   <a name="sam-api-apikeysourcetype"></a>
Source de la clé API pour les demandes de relevé en fonction d'un plan d'utilisation. Les valeurs valides sont `HEADER` et `AUTHORIZER`.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[ApiKeySourceType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-apikeysourcetype)` propriété d'une `AWS::ApiGateway::RestApi` ressource.

 `Auth`   <a name="sam-api-auth"></a>
Configurez le mécanisme d'autorisation utilisé pour contrôler l'accès à votre API API Gateway.  
Pour plus d'informations sur la configuration de l'accès à l' AWS SAM aide de[Contrôlez l'accès aux API avec votre AWS SAM modèle](serverless-controlling-access-to-apis.md). Pour un exemple montrant comment remplacer un autorisateur global, voir. [Remplacer un mécanisme d'autorisation global pour votre API REST Amazon API Gateway](sam-property-function-apifunctionauth.md#sam-property-function-apifunctionauth--examples--override)  
*Type :* [ApiAuth](sam-property-api-apiauth.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `BinaryMediaTypes`   <a name="sam-api-binarymediatypes"></a>
Liste des types MIME que votre API pourrait renvoyer. Utilisez-le pour activer le support binaire pourAPIs.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[BinaryMediaTypes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-binarymediatypes)` d'une `AWS::ApiGateway::RestApi` ressource. La liste des BinaryMediaTypes est ajoutée à la fois à la CloudFormation ressource et au document OpenAPI.

 `CacheClusterEnabled`   <a name="sam-api-cacheclusterenabled"></a>
Indique si la mise en cache est activée pour l'étape. Pour mettre en cache les réponses, vous devez également définir `CachingEnabled` sur `true` sous `MethodSettings`.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[CacheClusterEnabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclusterenabled)` propriété d'une `AWS::ApiGateway::Stage` ressource.

 `CacheClusterSize`   <a name="sam-api-cacheclustersize"></a>
Taille du cluster de cache de l'environnement.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[CacheClusterSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclustersize)` propriété d'une `AWS::ApiGateway::Stage` ressource.

 `CanarySetting`   <a name="sam-api-canarysetting"></a>
Configurez un paramètre Canary à une étape d'un déploiement régulier.  
*Type :* [CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[CanarySetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-canarysetting)` propriété d'une `AWS::ApiGateway::Stage` ressource.

 `Cors`   <a name="sam-api-cors"></a>
Gérez le partage de ressources entre origines (CORS) pour l'ensemble de votre API Gateway. APIs Spécifiez le domaine à autoriser en tant que chaîne ou spécifiez un dictionnaire avec une configuration Cors supplémentaire.   
CORS nécessite AWS SAM de modifier votre définition OpenAPI. Créez une définition OpenAPI intégrée dans `DefinitionBody` le pour activer CORS.
Pour plus d'informations, consultez [Activation de CORS pour une ressource API REST dans API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) dans le *Guide du développeur API Gateway*.  
*Type* : Chaîne \$1 [CorsConfiguration](sam-property-api-corsconfiguration.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `DefinitionBody`   <a name="sam-api-definitionbody"></a>
Spécification OpenAPI qui décrit votre API. Si ni `DefinitionUri`, ni `DefinitionBody` sont spécifiés, SAM générera un `DefinitionBody` pour vous en fonction de la configuration de votre modèle.  
Pour faire référence à un fichier OpenAPI local qui définit votre API, utilisez la macro `AWS::Include` transform. Pour en savoir plus, veuillez consulter la section [Comment AWS SAM télécharge les fichiers locaux](deploy-upload-local-files.md).  
*Type* : JSON  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body)` d'une `AWS::ApiGateway::RestApi` ressource. Si certaines propriétés sont fournies, le contenu peut être inséré ou modifié dans le DefinitionBody avant d'être transmis à CloudFormation. Les propriétés comprennent un `Auth`, `BinaryMediaTypes`, `Cors`, `GatewayResponses`, `Models`, et un `EventSource` de type Api activée pour une `AWS::Serverless::Function` correspondante.

 `DefinitionUri`   <a name="sam-api-definitionuri"></a>
Amazon S3 Uri, chemin d'accès au fichier local ou objet d'emplacement du document OpenAPI définissant l'API. L'objet Amazon S3 référencé par cette propriété doit être un fichier OpenAPI valide. Si ni `DefinitionUri`, ni `DefinitionBody` sont spécifiés, SAM générera un `DefinitionBody` pour vous en fonction de la configuration de votre modèle.  
Si un chemin d'accès de fichier local est fourni, le modèle doit passer par le flux comprenant la propriété `sam deploy` ou `sam package`, afin que la définition soit correctement transformée.   
Les fonctions intrinsèques ne sont pas prises en charge dans OpenApi les fichiers externes référencés par`DefinitionUri`. Utilisez plutôt la `DefinitionBody` propriété avec la [transformation Include](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) pour importer une OpenApi définition dans le modèle.  
*Type* : Chaîne \$1 [ApiDefinition](sam-property-api-apidefinition.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[BodyS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location)` d'une `AWS::ApiGateway::RestApi` ressource. Les propriétés imbriquées d'Amazon S3 sont nommées différemment.

 `Description`   <a name="sam-api-description"></a>
Une description de la ressource API.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-description)` propriété d'une `AWS::ApiGateway::RestApi` ressource.

 `DisableExecuteApiEndpoint`   <a name="sam-api-disableexecuteapiendpoint"></a>
Spécifie si les clients peuvent appeler votre API à l’aide du point de terminaison `execute-api` par défaut. Par défaut, les clients peuvent appeler votre API avec l'`https://{api_id}.execute-api.{region}.amazonaws.com` par défaut. Pour obliger les clients à utiliser un nom de domaine personnalisé pour appeler votre API, spécifiez `True`.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[ DisableExecuteApiEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-disableexecuteapiendpoint)` d'une `AWS::ApiGateway::RestApi` ressource. Il est transmis directement à la propriété `disableExecuteApiEndpoint` d'une extension `[ x-amazon-apigateway-endpoint-configuration](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-endpoint-configuration.html)`, qui est ajoutée à la propriété ` [ Body](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body)` d'une ressource `AWS::ApiGateway::RestApi`.

 `Domain`   <a name="sam-api-domain"></a>
Configure un domaine personnalisé pour cette API Gateway.  
*Type :* [DomainConfiguration](sam-property-api-domainconfiguration.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `EndpointConfiguration`   <a name="sam-api-endpointconfiguration"></a>
Type de point de terminaison d'une API REST.  
*Type :* [EndpointConfiguration](sam-property-api-endpointconfiguration.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[EndpointConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-endpointconfiguration)` d'une `AWS::ApiGateway::RestApi` ressource. Les propriétés de configuration imbriquées sont nommées différemment.

 `FailOnWarnings`   <a name="sam-api-failonwarnings"></a>
Indique si la création d'API doit être annulée (`true`) ou non (`false`) lorsqu'un avertissement est rencontré. La valeur par défaut est `false`.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[FailOnWarnings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-failonwarnings)` propriété d'une `AWS::ApiGateway::RestApi` ressource.

 `GatewayResponses`   <a name="sam-api-gatewayresponses"></a>
Configure les réponses de passerelle pour une API. Les réponses de passerelle sont des réponses renvoyées par API Gateway, directement ou via l'utilisation des mécanismes d'autorisation Lambda. Pour plus d'informations, consultez la documentation de l'[ OpenApi extension Api Gateway pour Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-gateway-responses.html).  
*Type*: carte (map)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `MergeDefinitions`   <a name="sam-api-mergedefinitions"></a>
AWS SAM génère une OpenAPI spécification à partir de la source d'événements de votre API. Spécifiez `true` de le AWS SAM fusionner dans la OpenAPI spécification en ligne définie dans votre `AWS::Serverless::Api` ressource. Spécifiez la valeur `false` pour ne pas fusionner.  
`MergeDefinitions` nécessite la propriété `DefinitionBody` pour que `AWS::Serverless::Api` soit définie. `MergeDefinitions` n'est pas compatible avec la propriété `DefinitionUri` pour `AWS::Serverless::Api`.  
*Valeur par défaut* : `false`  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `MethodSettings`   <a name="sam-api-methodsettings"></a>
Configure tous les paramètres de l'étape API, y compris la journalisation, les métriques, le CacheTL, la limitation.  
*Type* : liste de propriétés [ MethodSetting](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-stage-methodsetting.html)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[MethodSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings)` propriété d'une `AWS::ApiGateway::Stage` ressource.

 `MinimumCompressionSize`   <a name="sam-api-minimumcompressionsize"></a>
Autoriser la compression des corps de réponse en fonction de l'en-tête Accept-Encoding du client. La compression est déclenchée lorsque la taille du corps de la réponse est supérieure ou égale au seuil configuré. Le seuil de taille maximale du corps est de 10 Mo (10 485 760 octets). - Les types de compression suivants sont pris en charge : gzip, deflate et identity.  
*Type* : entier  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[MinimumCompressionSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-minimumcompressionsize)` propriété d'une `AWS::ApiGateway::RestApi` ressource.

 `Mode`   <a name="sam-api-mode"></a>
Cette propriété s'applique uniquement lorsque vous utilisez OpenAPI pour définir votre API REST. Le `Mode` détermine comment API Gateway gère les mises à jour des ressources. Pour plus d'informations, consultez la propriété [Mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode) du type de ressource [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html).  
*Valeurs valides* : `overwrite` ou `merge`  
*Type :* chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode)` propriété d'une `AWS::ApiGateway::RestApi` ressource.

 `Models`   <a name="sam-api-models"></a>
Les schémas à utiliser par vos méthodes d'API. Ces schémas peuvent être décrits avec JSON ou YAML. Consultez la section Exemples au bas de cette page pour obtenir des exemples de modèles.  
*Type*: carte (map)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `Name`   <a name="sam-api-name"></a>
Nom de la RestApi ressource API Gateway  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-name)` propriété d'une `AWS::ApiGateway::RestApi` ressource.

 `OpenApiVersion`   <a name="sam-api-openapiversion"></a>
Version de OpenApi à utiliser. Cela peut être soit `2.0` pour la spécification Swagger, soit pour l'une des versions OpenApi 3.0, comme. `3.0.1` Pour plus d'informations sur OpenAPI, consultez [Spécification OpenAPI](https://swagger.io/specification/).  
 AWS SAM crée une étape appelée `Stage` par défaut. La définition de cette propriété sur n'importe quelle valeur valide empêchera la création de l'étape `Stage`. 
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

`PropagateTags`  <a name="sam-api-propagatetags"></a>
Indiquez s'il faut ou non transmettre les balises de la propriété `Tags` aux ressources [AWS::Serverless::Api](sam-specification-generated-resources-api.md) que vous avez générées. Spécifiez `True` pour la propagation des balises dans vos ressources générées.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*Par défaut* : `False`  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

`Policy`  <a name="sam-api-policy"></a>
Document de politique qui contient les autorisations pour l'API. Pour définir l'ARN de la politique, utilisez la fonction `!Join` intrinsèque avec `""` comme délimiteur et les valeurs `"execute-api:/"` et `"*"`.  
*Type* : JSON  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la propriété [Policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-policy) d'une `AWS::ApiGateway::RestApi` ressource.

 `StageName`   <a name="sam-api-stagename"></a>
Le nom de l'étape qu'API Gateway utilise en tant que premier segment de chemin d'accès dans l'identificateur de ressource uniforme (URI) appelé.  
Pour référencer la ressource de l'étape, utilisez `<api-logical-id>.Stage`. Pour plus d'informations sur le référencement des ressources générées lorsqu'une [AWS::Serverless::Api](#sam-resource-api) est spécifiée, consultez [CloudFormation ressources générées lorsque cela AWS::Serverless::Api est spécifié](sam-specification-generated-resources-api.md). Pour des informations générales sur les CloudFormation ressources générées, consultez[CloudFormation Ressources générées pour AWS SAM](sam-specification-generated-resources.md).  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[StageName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-stagename)` d'une `AWS::ApiGateway::Stage` ressource. Elle est requise dans SAM, mais pas dans API Gateway  
*Informations complémentaires* : l'API implicite a un nom d'étape « Prod ».

 `Tags`   <a name="sam-api-tags"></a>
Un mappage (chaîne à chaîne) qui spécifie les balises à ajouter à cette étape API Gateway. Pour plus de détails sur les clés et les valeurs valides pour les étiquettes, voir l'[étiquette Ressource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) dans le *Guide de l'utilisateur AWS CloudFormation *.  
*Type*: carte (map)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tags)` d'une `AWS::ApiGateway::Stage` ressource. La propriété Tags dans SAM se compose de paires Key:Value ; CloudFormation elle consiste en une liste d'objets Tag.

 `TracingEnabled`   <a name="sam-api-tracingenabled"></a>
Indique si le suivi actif avec X-Ray est activé pour cette étape. Pour plus d'informations sur X-Ray, consultez la section [Suivi des demandes des utilisateurs vers REST à APIs l'aide de X-Ray](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-xray.html) dans le *guide du développeur d'API Gateway*.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[TracingEnabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-tracingenabled)` propriété d'une `AWS::ApiGateway::Stage` ressource.

 `Variables`   <a name="sam-api-variables"></a>
Un mappage (chaîne à chaîne) qui définit les variables de l'étape, où le nom de la variable correspond à la clé et où la valeur de la variable correspond à la valeur. Les noms de variables peuvent uniquement utiliser des caractères alphanumériques. Les valeurs doivent respecter l'expression régulière suivante : `[A-Za-z0-9._~:/?#&=,-]+`.  
*Type*: carte (map)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Variables](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-variables)` propriété d'une `AWS::ApiGateway::Stage` ressource.

## Valeurs renvoyées
<a name="sam-resource-api-return-values"></a>

### Réf
<a name="sam-resource-api-return-values-ref"></a>

Lorsque l'ID logique de cette ressource est fournie à la fonction intrinsèque `Ref`, elle renvoie l'ID de l'API API Gateway sous-jacente.

Pour plus d'informations sur l'utilisation de la fonction `Ref`, consultez [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) dans le *Guide de l'utilisateur AWS CloudFormation *. 

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

`Fn::GetAtt` renvoie une valeur pour un attribut de ce type indiqué. Voici les attributs disponibles et des exemples de valeurs de retour. 

Pour plus d'informations sur l'utilisation de `Fn::GetAtt`, consultez [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) dans le *Guide de l'utilisateur AWS CloudFormation *. 

`RootResourceId`  <a name="RootResourceId-fn::getatt"></a>
ID de ressource racine d'une ressource `RestApi`, comme `a0bc123d4e`.

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

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

Un fichier AWS SAM modèle Hello World qui contient une fonction Lambda avec un point de terminaison d'API. Il s'agit d'un fichier AWS SAM modèle complet pour une application sans serveur fonctionnelle.

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

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

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

Un extrait de AWS SAM modèle avec une API définie dans un fichier Swagger externe, ainsi que des intégrations Lambda et des configurations CORS. Il s'agit simplement d'une partie d'un fichier AWS SAM modèle présentant une [AWS::Serverless::Api](#sam-resource-api) définition.

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

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

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

Extrait de AWS SAM modèle avec une API qui utilise Amazon Cognito pour autoriser les requêtes adressées à l'API. Il s'agit simplement d'une partie d'un fichier AWS SAM modèle présentant une [AWS::Serverless::Api](#sam-resource-api) définition.

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

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

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

Extrait AWS SAM de modèle avec une API qui inclut un schéma Models. Il ne s'agit que d'une partie d'un fichier AWS SAM modèle présentant une [AWS::Serverless::Api](#sam-resource-api) définition avec deux schémas de modèle.

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

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

### Exemple de mise en cache
<a name="sam-resource-api--examples--caching-example"></a>

Un fichier AWS SAM modèle Hello World qui contient une fonction Lambda avec un point de terminaison d'API. La mise en cache de l'API est activée pour une ressource et une méthode. Pour plus d'informations sur la mise en cache, veuillez consulter [Activation de la mise en cache des API pour améliorer la réactivité](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) dans le *Guide du développeur API Gateway*.

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

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

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

### Exemple de domaine personnalisé avec une API privée
<a name="sam-resource-api--examples--custom-domain-example"></a>

Un fichier AWS SAM modèle Hello World qui contient une fonction Lambda avec un point de terminaison d'API mappé à un domaine privé. Le modèle crée une association d'accès au domaine entre un point de terminaison VPC et le domaine privé. Pour plus d'informations, consultez la section [Noms de domaine personnalisés pour le domaine privé APIs dans API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-custom-domains.html).

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

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

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

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

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

Configurez le mécanisme d'autorisation utilisé pour contrôler l'accès à votre API API Gateway.

Pour plus d'informations et des exemples de configuration de l'accès à l' AWS SAM aide de[Contrôlez l'accès aux API avec votre AWS SAM modèle](serverless-controlling-access-to-apis.md).

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

**Note**  
La `Authorizers` propriété inclut`AWS_IAM`, mais aucune configuration supplémentaire n'est nécessaire`AWS_IAM`. Pour obtenir un exemple, consultez [AWS IAM](#sam-property-api-apiauth--examples--aws_iam).

## Propriétés
<a name="sam-property-api-apiauth-properties"></a>

 `AddApiKeyRequiredToCorsPreflight`   <a name="sam-api-apiauth-addapikeyrequiredtocorspreflight"></a>
Si les propriétés `ApiKeyRequired` et `Cors` sont définies, alors le fait de définir `AddApiKeyRequiredToCorsPreflight` entraînera l'ajout la clé API à la propriété `Options`.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*Par défaut* : `True`  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `AddDefaultAuthorizerToCorsPreflight`   <a name="sam-api-apiauth-adddefaultauthorizertocorspreflight"></a>
Si les propriétés `DefaultAuthorizer` et `Cors` sont définies, alors le fait de définir `AddDefaultAuthorizerToCorsPreflight`entraînera l'ajout du mécanisme d'autorisation par défaut à la propriété `Options` dans la section OpenAPI.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*Valeur par défaut* : VRAI  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `ApiKeyRequired`   <a name="sam-api-apiauth-apikeyrequired"></a>
Si la valeur est définie sur « vrai », une clé d'API est requise pour tous les événements d'API. Pour plus d'informations sur les clés API, consultez [Création et utilisation de plans d'utilisation avec les clés API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) dans le *Guide du développeur API Gateway*.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `Authorizers`   <a name="sam-api-apiauth-authorizers"></a>
Le mécanisme d'autorisation utilisé pour contrôler l'accès à votre API API Gateway.  
Pour de plus amples informations, veuillez consulter [Contrôlez l'accès aux API avec votre AWS SAM modèle](serverless-controlling-access-to-apis.md).  
*Type* : [CognitoAuthorizer](sam-property-api-cognitoauthorizer.md)\$1 [LambdaTokenAuthorizer](sam-property-api-lambdatokenauthorizer.md)\$1 [LambdaRequestAuthorizer](sam-property-api-lambdarequestauthorizer.md)\$1 AWS\$1IAM  
*Obligatoire* : non  
*Par défaut* : aucun  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.  
*Remarques supplémentaires* : SAM ajoute les Autorisateurs à la OpenApi définition d'une API.

 `DefaultAuthorizer`   <a name="sam-api-apiauth-defaultauthorizer"></a>
Spécifiez un autorisateur par défaut pour une API API Gateway, qui sera utilisé pour autoriser les appels d'API par défaut.  
Si l'API EventSource de la fonction associée à cette API est configurée pour utiliser les autorisations IAM, cette propriété doit être définie sur`AWS_IAM`, sinon une erreur se produira.
*Type* : chaîne  
*Obligatoire* : non  
*Par défaut* : aucun  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `InvokeRole`   <a name="sam-api-apiauth-invokerole"></a>
Définit les informations d'identification d'intégration pour toutes les ressources et méthodes sur cette valeur.  
`CALLER_CREDENTIALS` mappe avec `arn:aws:iam:::<user>/`, qui utilise les informations d'identification de l'appelant pour appeler le point de terminaison.  
*Valeurs valides* : `CALLER_CREDENTIALS`, `NONE`, `IAMRoleArn`  
*Type* : chaîne  
*Obligatoire* : non  
*Par défaut* : `CALLER_CREDENTIALS`  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `ResourcePolicy`   <a name="sam-api-apiauth-resourcepolicy"></a>
Configurez la stratégie de ressources pour toutes les méthodes et chemins d'accès d'une API.  
*Type :* [ResourcePolicyStatement](sam-property-api-resourcepolicystatement.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.  
*Informations complémentaires* : ce paramètre peut également être défini sur `AWS::Serverless::Function` à l'aide de [ApiFunctionAuth](sam-property-function-apifunctionauth.md). Ceci est requis pour APIs avec`EndpointConfiguration: PRIVATE`.

 `UsagePlan`   <a name="sam-api-apiauth-usageplan"></a>
Configure un plan d'utilisation associé à cette API. Pour plus d'informations sur les plans d'utilisation, consultez [Création et utilisation de plans d'utilisation avec les clés API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) dans le *Guide du développeur API Gateway*.  
Cette AWS SAM propriété génère trois CloudFormation ressources supplémentaires lorsqu'elle est définie : an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), an et an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html). Pour plus d'informations sur ce scénario, consultez [UsagePlan la propriété est spécifiée](sam-specification-generated-resources-api.md#sam-specification-generated-resources-api-usage-plan). Pour des informations générales sur les CloudFormation ressources générées, consultez[CloudFormation Ressources générées pour AWS SAM](sam-specification-generated-resources.md).  
*Type :* [ApiUsagePlan](sam-property-api-apiusageplan.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

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

Exemple de Cognito Auth

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

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

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

AWS Exemple IAM

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

```
Auth:
  Authorizers: AWS_IAM
```

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

Configure un plan d'utilisation pour une API API Gateway. Pour plus d'informations sur les plans d'utilisation, consultez [Création et utilisation de plans d'utilisation avec les clés API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) dans le *Guide du développeur API Gateway*.

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-apiusageplan-properties"></a>

 `CreateUsagePlan`   <a name="sam-api-apiusageplan-createusageplan"></a>
Détermine comment ce plan d'utilisation est configuré. Les valeurs valides sont `PER_API`, `SHARED` et `NONE`.  
`PER_API` crée [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html),[https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), et des ressources [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html) propres à cette API. Ces ressources ont respectivement IDs une logique de `<api-logical-id>UsagePlan` `<api-logical-id>ApiKey``<api-logical-id>UsagePlanKey`, et.  
`SHARED`les [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html)créations et [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html)les [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)ressources qui sont partagées entre toutes les API figurant également `CreateUsagePlan: SHARED` dans le même AWS SAM modèle. Ces ressources ont respectivement IDs une logique de `ServerlessUsagePlan` `ServerlessApiKey``ServerlessUsagePlanKey`, et. Si vous utilisez cette option, nous vous recommandons d'ajouter une configuration supplémentaire pour ce plan d'utilisation sur une seule ressource API afin d'éviter des définitions conflictuelles et un état incertain.  
`NONE` désactive la création ou l'association d'un plan d'utilisation avec cette API. Ceci n'est nécessaire que si `SHARED` ou `PER_API` est spécifié dans le paramètre [Section « Globales » du modèle AWS SAM](sam-specification-template-anatomy-globals.md).  
*Valeurs valides*: `PER_API`, `SHARED`, et `NONE`  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `Description`   <a name="sam-api-apiusageplan-description"></a>
Description du plan d'utilisation.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-description)` propriété d'une `AWS::ApiGateway::UsagePlan` ressource.

 `Quota`   <a name="sam-api-apiusageplan-quota"></a>
Configure le nombre de demandes que les utilisateurs peuvent soumettre au cours d'un intervalle donné.  
*Type :* [QuotaSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Quota](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)` propriété d'une `AWS::ApiGateway::UsagePlan` ressource.

 `Tags`   <a name="sam-api-apiusageplan-tags"></a>
Tableau de balises arbitraires (paires clé-valeur) à associer au plan d'utilisation.  
Cette propriété utilise le [type de CloudFormation balise](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-tags)` propriété d'une `AWS::ApiGateway::UsagePlan` ressource.

 `Throttle`   <a name="sam-api-apiusageplan-throttle"></a>
Configure le taux de demandes global (nombre moyen de demandes par seconde), ainsi que la capacité de transmission en mode rafale.  
*Type :* [ThrottleSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Throttle](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)` propriété d'une `AWS::ApiGateway::UsagePlan` ressource.

 `UsagePlanName`   <a name="sam-api-apiusageplan-usageplanname"></a>
Nom pour le plan d'utilisation.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[UsagePlanName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-usageplanname)` propriété d'une `AWS::ApiGateway::UsagePlan` ressource.

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

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

Voici un exemple de plan d'utilisation.

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

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

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

Définissez un autorisation de groupe d'utilisateurs Amazon Cognito.

Pour plus d’informations et d’exemples, consultez [Contrôlez l'accès aux API avec votre AWS SAM modèle](serverless-controlling-access-to-apis.md).

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-cognitoauthorizer-properties"></a>

 `AuthorizationScopes`   <a name="sam-api-cognitoauthorizer-authorizationscopes"></a>
Liste des étendues d'autorisation pour cet autorisateur.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `Identity`   <a name="sam-api-cognitoauthorizer-identity"></a>
Cette propriété peut être utilisée pour spécifier une `IdentitySource` dans une demande d'autorisation entrante.  
*Type :* [CognitoAuthorizationIdentity](sam-property-api-cognitoauthorizationidentity.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `UserPoolArn`   <a name="sam-api-cognitoauthorizer-userpoolarn"></a>
Peut faire référence à un utilisateur, pool/specify un arn de groupe d'utilisateurs auquel vous souhaitez ajouter cet autorisateur cognito.  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

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

Exemple d'authentification Cognito

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

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

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

Cette propriété peut être utilisée pour spécifier un IdentitySource dans une demande entrante pour un autorisateur. Pour plus d'informations, IdentitySource consultez l'[ OpenApi extension ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-cognitoauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-cognitoauthorizationidentity-header"></a>
Spécifiez le nom de l'en-tête pour Authorization dans la OpenApi définition.  
*Type* : chaîne  
*Obligatoire* : non  
*Par défaut* : autorisation  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `ReauthorizeEvery`   <a name="sam-api-cognitoauthorizationidentity-reauthorizeevery"></a>
Période time-to-live (TTL), en secondes, qui indique la durée pendant laquelle API Gateway met en cache les résultats de l'autorisateur. Si vous définissez une valeur supérieure à 0, API Gateway met en cache les réponses du mécanisme d'autorisation. Par défaut, API Gateway définit cette propriété sur 300. La valeur maximale est 3 600 ou 1 heure.  
*Type* : entier  
*Obligatoire* : non  
*Par défaut *: 300  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `ValidationExpression`   <a name="sam-api-cognitoauthorizationidentity-validationexpression"></a>
Spécifiez une expression de validation pour valider l'identité entrante.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

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

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

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

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

Configurez un mécanisme d'autorisation Lambda pour contrôler l'accès à votre API à l'aide d'une fonction Lambda.

Pour plus d’informations et d’exemples, consultez [Contrôlez l'accès aux API avec votre AWS SAM modèle](serverless-controlling-access-to-apis.md).

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-lambdarequestauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdarequestauthorizer-disablefunctiondefaultpermissions"></a>
Spécifiez `true` pour AWS SAM empêcher la création automatique d'une `AWS::Lambda::Permissions` ressource afin de fournir des autorisations entre votre `AWS::Serverless::Api` ressource et la fonction Lambda de l'autorisateur.  
*Valeur par défaut* : `false`  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `FunctionArn`   <a name="sam-api-lambdarequestauthorizer-functionarn"></a>
Spécifiez la fonction ARN de la fonction Lambda qui fournit l'autorisation pour l'API.  
AWS SAM créera automatiquement une `AWS::Lambda::Permissions` ressource lorsque cela `FunctionArn` est spécifié pour`AWS::Serverless::Api`. La ressource `AWS::Lambda::Permissions` fournit des autorisations entre votre API et la fonction Lambda du mécanisme d'autorisation.
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `FunctionInvokeRole`   <a name="sam-api-lambdarequestauthorizer-functioninvokerole"></a>
Ajoute les informations d'identification de l'autorisateur à la OpenApi définition de l'autorisateur Lambda.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `FunctionPayloadType`   <a name="sam-api-lambdarequestauthorizer-functionpayloadtype"></a>
Cette propriété peut être utilisée pour définir le type de mécanisme d'autorisation Lambda pour une API.  
*Valeurs valides* : `TOKEN` ou `REQUEST`  
*Type :* chaîne  
*Obligatoire* : non  
*Par défaut* : `TOKEN`  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `Identity`   <a name="sam-api-lambdarequestauthorizer-identity"></a>
Cette propriété peut être utilisée pour spécifier une `IdentitySource` dans une demande d'autorisation entrante. Cette propriété n'est requise que si la propriété `FunctionPayloadType` est définie sur `REQUEST`.  
*Type :* [LambdaRequestAuthorizationIdentity](sam-property-api-lambdarequestauthorizationidentity.md)  
*Obligatoire* : Conditionnelle  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

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

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

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

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

Cette propriété peut être utilisée pour spécifier un IdentitySource dans une demande entrante pour un autorisateur. Pour plus d'informations, IdentitySource consultez l'[ OpenApi extension ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-lambdarequestauthorizationidentity-properties"></a>

 `Context`   <a name="sam-api-lambdarequestauthorizationidentity-context"></a>
Convertit les chaînes de contexte données en expressions de mappage de format `context.contextString`.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `Headers`   <a name="sam-api-lambdarequestauthorizationidentity-headers"></a>
Convertit les en-têtes en chaîne séparée par des virgules d'expressions de mappage de formats `method.request.header.name`.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `QueryStrings`   <a name="sam-api-lambdarequestauthorizationidentity-querystrings"></a>
Convertit les chaînes de requête données en chaîne séparée par des virgules d'expressions de mappage de format `method.request.querystring.queryString`.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `ReauthorizeEvery`   <a name="sam-api-lambdarequestauthorizationidentity-reauthorizeevery"></a>
Période time-to-live (TTL), en secondes, qui indique la durée pendant laquelle API Gateway met en cache les résultats de l'autorisateur. Si vous définissez une valeur supérieure à 0, API Gateway met en cache les réponses du mécanisme d'autorisation. Par défaut, API Gateway définit cette propriété sur 300. La valeur maximale est 3 600 ou 1 heure.  
*Type* : entier  
*Obligatoire* : non  
*Par défaut *: 300  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `StageVariables`   <a name="sam-api-lambdarequestauthorizationidentity-stagevariables"></a>
Convertit les variables d'une étape donnée en chaîne séparée par des virgules d'expressions de mappage de format `stageVariables.stageVariable`.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

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

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

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

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

Configurez un mécanisme d'autorisation Lambda pour contrôler l'accès à votre API à l'aide d'une fonction Lambda.

Pour plus d’informations et d’exemples, consultez [Contrôlez l'accès aux API avec votre AWS SAM modèle](serverless-controlling-access-to-apis.md).

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-lambdatokenauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdatokenauthorizer-disablefunctiondefaultpermissions"></a>
Spécifiez `true` pour AWS SAM empêcher la création automatique d'une `AWS::Lambda::Permissions` ressource afin de fournir des autorisations entre votre `AWS::Serverless::Api` ressource et la fonction Lambda de l'autorisateur.  
*Valeur par défaut* : `false`  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `FunctionArn`   <a name="sam-api-lambdatokenauthorizer-functionarn"></a>
Spécifiez la fonction ARN de la fonction Lambda qui fournit l'autorisation pour l'API.  
AWS SAM créera automatiquement une `AWS::Lambda::Permissions` ressource lorsque cela `FunctionArn` est spécifié pour`AWS::Serverless::Api`. La ressource `AWS::Lambda::Permissions` fournit des autorisations entre votre API et la fonction Lambda du mécanisme d'autorisation.
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `FunctionInvokeRole`   <a name="sam-api-lambdatokenauthorizer-functioninvokerole"></a>
Ajoute les informations d'identification de l'autorisateur à la OpenApi définition de l'autorisateur Lambda.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `FunctionPayloadType`   <a name="sam-api-lambdatokenauthorizer-functionpayloadtype"></a>
Cette propriété peut être utilisée pour définir le type de mécanisme d'autorisation Lambda pour une Api.  
*Valeurs valides* : `TOKEN` ou `REQUEST`  
*Type :* chaîne  
*Obligatoire* : non  
*Par défaut* : `TOKEN`  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `Identity`   <a name="sam-api-lambdatokenauthorizer-identity"></a>
Cette propriété peut être utilisée pour spécifier une `IdentitySource` dans une demande d'autorisation entrante. Cette propriété n'est requise que si la propriété `FunctionPayloadType` est définie sur `REQUEST`.  
*Type :* [LambdaTokenAuthorizationIdentity](sam-property-api-lambdatokenauthorizationidentity.md)  
*Obligatoire* : Conditionnelle  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

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

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

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

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

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

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

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

Cette propriété peut être utilisée pour spécifier un IdentitySource dans une demande entrante pour un autorisateur. Pour plus d'informations, IdentitySource consultez l'[ OpenApi extension ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

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

 Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante. 

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

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

## Propriétés
<a name="sam-property-api-lambdatokenauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-lambdatokenauthorizationidentity-header"></a>
Spécifiez le nom de l'en-tête pour Authorization dans la OpenApi définition.  
*Type* : chaîne  
*Obligatoire* : non  
*Par défaut* : autorisation  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `ReauthorizeEvery`   <a name="sam-api-lambdatokenauthorizationidentity-reauthorizeevery"></a>
Période time-to-live (TTL), en secondes, qui indique la durée pendant laquelle API Gateway met en cache les résultats de l'autorisateur. Si vous définissez une valeur supérieure à 0, API Gateway met en cache les réponses du mécanisme d'autorisation. Par défaut, API Gateway définit cette propriété sur 300. La valeur maximale est 3 600 ou 1 heure.  
*Type* : entier  
*Obligatoire* : non  
*Par défaut *: 300  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `ValidationExpression`   <a name="sam-api-lambdatokenauthorizationidentity-validationexpression"></a>
Spécifiez une expression de validation pour valider l'identité entrante.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

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

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

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

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

Configure une stratégie de ressource pour toutes les méthodes et chemins d'accès d'une API. Pour plus d'informations sur les stratégies de ressources, consultez [Contrôle de l'accès à une API avec des stratégies de ressources API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies.html) dans le *Guide du développeur API*.

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-resourcepolicystatement-properties"></a>

 `AwsAccountBlacklist`   <a name="sam-api-resourcepolicystatement-awsaccountblacklist"></a>
Les AWS comptes à bloquer.  
*Type* : liste de chaînes  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `AwsAccountWhitelist`   <a name="sam-api-resourcepolicystatement-awsaccountwhitelist"></a>
Les AWS comptes à autoriser. Pour obtenir un exemple d'utilisation de cette propriété, consultez la section Exemples en bas de cette page.  
*Type* : liste de chaînes  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `CustomStatements`   <a name="sam-api-resourcepolicystatement-customstatements"></a>
Une liste des instructions de stratégie de ressource personnalisées à appliquer à cette API. Pour obtenir un exemple d'utilisation de cette propriété, consultez la section Exemples en bas de cette page.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `IntrinsicVpcBlacklist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcblacklist"></a>
La liste des clouds privés virtuels (VPCs) à bloquer, où chaque VPC est spécifié comme référence, telle qu'une [référence dynamique](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou une fonction `Ref` [intrinsèque](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Pour obtenir un exemple d'utilisation de cette propriété, consultez la section Exemples en bas de cette page.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `IntrinsicVpcWhitelist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcwhitelist"></a>
La liste des VPCs à autoriser, où chaque VPC est spécifié comme référence, telle qu'une [référence dynamique](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou une fonction `Ref` [intrinsèque](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `IntrinsicVpceBlacklist`   <a name="sam-api-resourcepolicystatement-intrinsicvpceblacklist"></a>
Liste des points de terminaison VPC à bloquer, où chaque point de terminaison VPC est spécifié comme une référence telle qu'une [Référence dynamique](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou la [fonction intrinsèque](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) `Ref`.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `IntrinsicVpceWhitelist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcewhitelist"></a>
Liste des points de terminaison VPC à autoriser, où chaque point de terminaison VPC est spécifié en tant que référence telle qu'une [Référence dynamique](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou la [fonction intrinsèque](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) `Ref`. Pour obtenir un exemple d'utilisation de cette propriété, consultez la section Exemples en bas de cette page.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `IpRangeBlacklist`   <a name="sam-api-resourcepolicystatement-iprangeblacklist"></a>
L'adresse IP ou les plages d'adresses à bloquer. Pour obtenir un exemple d'utilisation de cette propriété, consultez la section Exemples en bas de cette page.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `IpRangeWhitelist`   <a name="sam-api-resourcepolicystatement-iprangewhitelist"></a>
L'adresse IP ou les plages d'adresses à autoriser.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `SourceVpcBlacklist`   <a name="sam-api-resourcepolicystatement-sourcevpcblacklist"></a>
Les points de terminaison VPC ou VPC source à bloquer. Les noms de VPC source doivent commencer par `"vpc-"` et les noms de point de terminaison VPC source doivent commencer par `"vpce-"`. Pour obtenir un exemple d'utilisation de cette propriété, consultez la section Exemples en bas de cette page.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `SourceVpcWhitelist`   <a name="sam-api-resourcepolicystatement-sourcevpcwhitelist"></a>
Les points de terminaison VPC ou VPC source à autoriser. Les noms de VPC source doivent commencer par `"vpc-"` et les noms de point de terminaison VPC source doivent commencer par `"vpce-"`.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

### Exemples de stratégie basée sur les ressources
<a name="sam-property-api-resourcepolicystatement--examples--resource-policy-example"></a>

L'exemple suivant bloque deux adresses IP et un VPC source, et autorise un AWS compte.

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

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

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

Un document OpenAPI définissant l'API.

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-apidefinition-properties"></a>

 `Bucket`   <a name="sam-api-apidefinition-bucket"></a>
Nom du compartiment Amazon S3 dans lequel le fichier OpenAPI est stocké.  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-bucket)` propriété du type de `AWS::ApiGateway::RestApi` `S3Location` données.

 `Key`   <a name="sam-api-apidefinition-key"></a>
La clé Amazon S3 du fichier OpenAPI.  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Key](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-key)` propriété du type de `AWS::ApiGateway::RestApi` `S3Location` données.

 `Version`   <a name="sam-api-apidefinition-version"></a>
Pour les objets versionnés, la version du fichier OpenAPI.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Version](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-s3location.html#cfn-apigateway-restapi-s3location-version)` propriété du type de `AWS::ApiGateway::RestApi` `S3Location` données.

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

### Exemple de définition d'Uri
<a name="sam-property-api-apidefinition--examples--definition-uri-example"></a>

Exemple de définition d'API

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

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

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

Gérez le partage de ressources entre origines (CORS) pour votre API Gateway. APIs Spécifiez le domaine à autoriser en tant que chaîne ou spécifiez un dictionnaire avec une configuration Cors supplémentaire.

**Note**  
CORS nécessite AWS SAM de modifier votre définition OpenAPI. Créez une définition OpenAPI intégrée dans `DefinitionBody` le pour activer CORS. Si le `CorsConfiguration` est défini dans la définition d'OpenAPI et également au niveau de la propriété, il les AWS SAM fusionne. Le niveau de propriété est prioritaire sur la définition d'OpenAPI.

Pour plus d'informations, consultez [Activation de CORS pour une ressource API REST dans API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html) dans le *Guide du développeur API Gateway*.

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-corsconfiguration-properties"></a>

 `AllowCredentials`   <a name="sam-api-corsconfiguration-allowcredentials"></a>
Booléen indiquant si la requête est autorisée à contenir des informations d'identification.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `AllowHeaders`   <a name="sam-api-corsconfiguration-allowheaders"></a>
Chaîne d'en-têtes à autoriser.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `AllowMethods`   <a name="sam-api-corsconfiguration-allowmethods"></a>
Chaîne contenant les méthodes HTTP à autoriser.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `AllowOrigin`   <a name="sam-api-corsconfiguration-alloworigin"></a>
Chaîne d'origine à autoriser. Il peut s'agir d'une liste séparée par des virgules au format chaîne.  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `MaxAge`   <a name="sam-api-corsconfiguration-maxage"></a>
Chaîne contenant le nombre de secondes requises pour mettre en cache la demande CORS Preflight.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

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

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

Exemple de configuration CORS. Il ne s'agit que d'une partie d'un fichier AWS SAM modèle présentant une [AWS::Serverless::Api](sam-resource-api.md) définition avec CORS configuré et un[AWS::Serverless::Function](sam-resource-function.md). Si vous utilisez une intégration de proxy Lambda ou une intégration de proxy HTTP, votre backend doit renvoyer les en-têtes `Access-Control-Allow-Origin``Access-Control-Allow-Methods`, et. `Access-Control-Allow-Headers`

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

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

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

Configure un domaine personnalisé pour une API.

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-domainconfiguration-properties"></a>

 `AccessAssociation`   <a name="sam-api-domainconfiguration-domainaccessassociation"></a>
Configuration requise pour générer une ` AWS::ApiGateway::DomainNameAccessAssociation` ressource.  
AWS SAM génère une [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html)ressource lorsque cette propriété est définie. Pour plus d'informations sur CloudFormation les ressources générées, consultez[CloudFormation Ressources générées pour AWS SAM](sam-specification-generated-resources.md).  
*Type :* [DomainAccessAssociation](sam-property-api-domainaccessassociation.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `BasePath`   <a name="sam-api-domainconfiguration-basepath"></a>
Une liste des chemins de base à configurer avec le nom de domaine Amazon API Gateway.  
*Type* : liste  
*Obligatoire* : non  
*Par défaut* : /  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[BasePath](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-basepath)` d'une `AWS::ApiGateway::BasePathMapping` ressource. AWS SAM crée plusieurs `AWS::ApiGateway::BasePathMapping` ressources, une par ressource `BasePath` spécifiée dans cette propriété.

 `CertificateArn`   <a name="sam-api-domainconfiguration-certificatearn"></a>
Le nom de ressource Amazon (ARN) d'un certificat AWS géré est le point de terminaison de ce nom de domaine. AWS Certificate Manager est la seule source prise en charge.  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[CertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn)` d'une `AWS::ApiGateway::DomainName` ressource. S'il `EndpointConfiguration` est défini sur `REGIONAL` (valeur par défaut), il est `CertificateArn` mappé sur [RegionalCertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-regionalcertificatearn)in`AWS::ApiGateway::DomainName`. Si le `EndpointConfiguration` est défini sur`EDGE`, `CertificateArn` correspond à [CertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn)in`AWS::ApiGateway::DomainName`. Si elle `EndpointConfiguration` est définie sur`PRIVATE`, cette propriété est transmise à la ressource [AWS::ApiGateway::DomainNameV2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2).  
*Remarques supplémentaires* : Pour un `EDGE` point de terminaison, vous devez créer le certificat dans la `us-east-1` AWS région.

 `DomainName`   <a name="sam-api-domainconfiguration-domainname"></a>
Le nom de domaine personnalisé pour votre API dans Amazon API Gateway. Les majuscules ne sont pas prises en charge.  
AWS SAM génère une [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html)ressource lorsque cette propriété est définie. Pour plus d'informations sur ce scénario, consultez [DomainName la propriété est spécifiée](sam-specification-generated-resources-api.md#sam-specification-generated-resources-api-domain-name). Pour plus d'informations sur CloudFormation les ressources générées, consultez[CloudFormation Ressources générées pour AWS SAM](sam-specification-generated-resources.md).  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-domainname)` propriété d'une `AWS::ApiGateway::DomainName` ressource, ou à [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2)when EndpointConfiguration est définie sur`PRIVATE`.

 `EndpointConfiguration`   <a name="sam-api-domainconfiguration-endpointconfiguration"></a>
Définit le type de point de terminaison API Gateway à mapper au domaine personnalisé. La valeur de cette propriété détermine la manière dont la `CertificateArn` propriété est mappée CloudFormation.  
*Valeurs valides* : `EDGE`, `REGIONAL` ou `PRIVATE`  
*Type* : chaîne  
*Obligatoire* : non  
*Par défaut* : `REGIONAL`  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `MutualTlsAuthentication`   <a name="sam-api-domainconfiguration-mutualtlsauthentication"></a>
La configuration d'authentification de protocole TLS (Transport Layer Security) mutuelle pour un nom de domaine personnalisé.  
*Type :* [MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[MutualTlsAuthentication](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-mutualtlsauthentication)` propriété d'une `AWS::ApiGateway::DomainName` ressource.

 `NormalizeBasePath`   <a name="sam-api-domainconfiguration-normalizebasepath"></a>
Indique si les caractères non alphanumériques sont autorisés dans les chemins de base définis par la propriété `BasePath`. Lorsque ce paramètre est défini sur `True`, les caractères non alphanumériques sont supprimés des chemins de base.  
Utilisez `NormalizeBasePath` avec la propriété `BasePath`.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*Valeur par défaut* : VRAI  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `OwnershipVerificationCertificateArn`   <a name="sam-api-domainconfiguration-ownershipverificationcertificatearn"></a>
 ARN du certificat public que vous avez généré dans pour valider la propriété de votre domaine personnalisé. Obligatoire uniquement lorsque vous configurez le protocole TLS mutuel et que vous précisez un ARN de certificat d'autorité de certification privé ou importé ACM pour le `CertificateArn`.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[OwnershipVerificationCertificateArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-ownershipverificationcertificatearn)` propriété d'une `AWS::ApiGateway::DomainName` ressource.

 `Policy`   <a name="sam-api-domainconfiguration-policy"></a>
La politique IAM à associer au nom de domaine API Gateway. Applicable uniquement lorsque `EndpointConfiguration` ce paramètre est défini sur`PRIVATE`.  
*Type* : Json  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `Policy` propriété d'une `AWS::ApiGateway::DomainNameV2` ressource lorsqu'elle `EndpointConfiguration` est définie sur`PRIVATE`. Pour des exemples de documents de politique valides, voir [AWS::ApiGateway::DomainNameV2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2).

 `Route53`   <a name="sam-api-domainconfiguration-route53"></a>
Définit une configuration Amazon Route 53.  
*Type* : [Route53Configuration](sam-property-api-route53configuration.md)  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `SecurityPolicy`   <a name="sam-api-domainconfiguration-securitypolicy"></a>
Version du protocole TLS plus suite de chiffrement pour ce nom de domaine.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[SecurityPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-securitypolicy)` propriété d'une `AWS::ApiGateway::DomainName` ressource, ou à [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2)when `EndpointConfiguration` est définie sur`PRIVATE`. Pour les `PRIVATE` points de terminaison, seul le TLS\$11\$12 est pris en charge.

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

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

DomainName exemple

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

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

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

Configure une association d'accès au domaine entre une source d'association d'accès et un nom de domaine personnalisé privé. La seule source d'association d'accès prise en charge est un identifiant de point de terminaison VPC. Pour plus d'informations, consultez la section [Noms de domaine personnalisés pour le domaine privé APIs dans API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-custom-domains.html).

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

```
 VpcEndpointId: String
```

## Propriétés
<a name="sam-property-api-domainaccessassociation-properties"></a>

 `VpcEndpointId`   <a name="sam-api-domainaccessassociation-vpcendpointid"></a>
ID de point de terminaison du point de terminaison de l'interface VPC associé au service VPC API Gateway.  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[ AccessAssociationSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html#cfn-apigateway-domainnameaccessassociation-accessassociationsource)` propriété d'une `AWS::ApiGateway::DomainNameAccessAssociation` ressource.

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

Configure les ensembles d'enregistrements Route53 pour une API.

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-route53configuration-properties"></a>

 `DistributionDomainName`   <a name="sam-api-route53configuration-distributiondomainname"></a>
Configure une distribution personnalisée du nom de domaine personnalisé de l'API.  
*Type* : chaîne  
*Obligatoire* : non  
*Par défaut* : utilisez la distribution API Gateway.  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[DNSName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget-1.html#cfn-route53-aliastarget-dnshostname)` propriété d'une `AWS::Route53::RecordSetGroup AliasTarget` ressource.  
*Remarques supplémentaires* : nom de domaine d'une [CloudFrontdistribution](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html).

 `EvaluateTargetHealth`   <a name="sam-api-route53configuration-evaluatetargethealth"></a>
Lorsque cela EvaluateTargetHealth est vrai, un enregistrement d'alias hérite de l'état de la AWS ressource référencée, comme un équilibreur de charge Elastic Load Balancing ou un autre enregistrement de la zone hébergée.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[EvaluateTargetHealth](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth)` propriété d'une `AWS::Route53::RecordSetGroup AliasTarget` ressource.  
*Remarques supplémentaires* : vous ne pouvez pas EvaluateTargetHealth définir la valeur true lorsque l'alias cible est une CloudFront distribution.

 `HostedZoneId`   <a name="sam-api-route53configuration-hostedzoneid"></a>
ID de la zone hébergée dans laquelle vous souhaitez créer des enregistrements.  
Spécifiez `HostedZoneName` ou `HostedZoneId`, mais pas les deux. Si plusieurs zones hébergées portent le même nom de domaine, vous devez spécifier la zone hébergée à l'aide de la valeur `HostedZoneId`.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[HostedZoneId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzoneid)` propriété d'une `AWS::Route53::RecordSetGroup RecordSet` ressource.

 `HostedZoneName`   <a name="sam-api-route53configuration-hostedzonename"></a>
Nom de la zone hébergée dans laquelle vous souhaitez créer des enregistrements.  
Spécifiez `HostedZoneName` ou `HostedZoneId`, mais pas les deux. Si plusieurs zones hébergées portent le même nom de domaine, vous devez spécifier la zone hébergée à l'aide de la valeur `HostedZoneId`.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[HostedZoneName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-hostedzonename)` propriété d'une `AWS::Route53::RecordSetGroup RecordSet` ressource.

 `IpV6`   <a name="sam-api-route53configuration-ipv6"></a>
Lorsque cette propriété est définie, elle AWS SAM crée une `AWS::Route53::RecordSet` ressource et attribue à [Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type) `AAAA` la valeur fournie HostedZone.  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

`Region`  <a name="sam-api-route53configuration-region"></a>
*Ensembles d'enregistrements de ressources basés sur la latence uniquement* : EC2 région Amazon dans laquelle vous avez créé la ressource à laquelle ce jeu d'enregistrements de ressources fait référence. La ressource est généralement une AWS ressource, telle qu'une EC2 instance ou un équilibreur de charge ELB, à laquelle il est fait référence par une adresse IP ou un nom de domaine DNS, selon le type d'enregistrement.  
Lorsqu'Amazon Route 53 reçoit une requête DNS pour un nom et un type de domaine pour lesquels vous avez créé des ensembles d'enregistrements de ressources de latence, Route 53 sélectionne le jeu d'enregistrements de ressources de latence présentant la latence la plus faible entre l'utilisateur final et la EC2 région Amazon associée. Route 53 renvoie ensuite la valeur associée à l'ensemble d'enregistrements de ressource sélectionné.  
Notez ce qui suit :  
+ Vous pouvez uniquement spécifier un `ResourceRecord` par ensemble d'enregistrements de ressource de latence.
+ Vous ne pouvez créer qu'un seul ensemble d'enregistrements de ressources de latence pour chaque EC2 région Amazon.
+ Vous n'êtes pas obligé de créer des ensembles d'enregistrements de ressources de latence pour toutes les EC2 régions Amazon. Route 53 choisit la région dotée de la meilleure latence parmi les régions pour lesquelles vous créez des ensembles d'enregistrements de ressource de latence.
+ Vous ne pouvez pas créer des ensembles d'enregistrements de ressource sans latence ayant les mêmes valeurs pour les éléments `Name` et `Type` que celles des ensembles d'enregistrements de ressource de latence.
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[ Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-region)` propriété d'un type de `AWS::Route53::RecordSetGroup` `RecordSet` données.

`SetIdentifier`  <a name="sam-api-route53configuration-setidentifier"></a>
*Ensembles d'enregistrements de ressource ayant une politique de routage autre que simple :* un identificateur qui se différencie parmi plusieurs ensembles d'enregistrements de ressource ayant la même combinaison de nom et de type, comme plusieurs ensembles d'enregistrements de ressource pondérés nommés acme.example.com ayant un type A. Dans un groupe d'ensembles d'enregistrements de ressource ayant les mêmes nom et type, la valeur `SetIdentifier` doit être unique pour chaque ensemble d'enregistrements de ressource.  
Pour de plus amples informations sur les politiques de routage, veuillez consulter [Choix d'une politique de routage](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) dans le *Guide du développeur Amazon Route 53*.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[ SetIdentifier](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-1.html#cfn-route53-recordset-setidentifier)` propriété d'un type de `AWS::Route53::RecordSetGroup` `RecordSet` données.

`VpcEndpointDomainName`  <a name="sam-api-route53configuration-vpcendpointdomainname"></a>
Nom DNS du point de terminaison de l'interface VPC associé au service VPC API Gateway. Cette propriété est requise uniquement pour les domaines privés.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[DNSName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-aliastarget.html)` propriété d'un `AWS::Route53::RecordSet` `AliasTarget` champ.

`VpcEndpointHostedZoneId`  <a name="sam-api-route53configuration-vpcendpointhostedzoneid"></a>
ID de zone hébergée du point de terminaison de l'interface VPC associé au service VPC API Gateway. Cette propriété est requise uniquement pour les domaines privés.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : Cette propriété est transmise directement à la `[HostedZoneId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-aliastarget.html)` propriété d'un `AWS::Route53::RecordSet` `AliasTarget` champ.

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

### Exemple de base
<a name="sam-property-api-route53configuration--examples--route-53-configuration-example"></a>

Dans cet exemple, nous configurons un domaine personnalisé et des ensembles d'enregistrements Route 53 pour notre API.

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

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

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

Type de point de terminaison d'une API REST.

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

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

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

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

## Propriétés
<a name="sam-property-api-endpointconfiguration-properties"></a>

 `IpAddressType`   <a name="sam-api-endpointconfiguration-ipaddresstype"></a>
Les types d'adresses IP qui peuvent appeler une API (RestApi).  
*Valeurs valides* : `ipv4` ou `dualstack`  
*Type :* chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[IpAddressType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-ipaddresstype)` propriété du type de `AWS::ApiGateway::RestApi` `EndpointConfiguration` données.

 `Type`   <a name="sam-api-endpointconfiguration-type"></a>
Type de point de terminaison d'une API REST.  
*Valeurs valides* : `EDGE`, `REGIONAL` ou `PRIVATE`  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Types](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-types)` propriété du type de `AWS::ApiGateway::RestApi` `EndpointConfiguration` données.

 `VPCEndpointIds`   <a name="sam-api-endpointconfiguration-vpcendpointids"></a>
Liste des points de terminaison VPC IDs d'une API REST par rapport auxquels créer des alias Route53.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[VpcEndpointIds](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-restapi-endpointconfiguration.html#cfn-apigateway-restapi-endpointconfiguration-vpcendpointids)` propriété du type de `AWS::ApiGateway::RestApi` `EndpointConfiguration` données.

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

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

Exemple de configuration de point de terminaison

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

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