API Gateway HTTP et exemples WebSocket d'API utilisant AWS CLI - AWS Command Line Interface

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.

API Gateway HTTP et exemples WebSocket d'API utilisant AWS CLI

Les exemples de code suivants vous montrent comment effectuer des actions et implémenter des scénarios courants à l'aide du protocole HTTP et de l'API AWS Command Line Interface with WebSocket API Gateway.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la façon de configurer et d'exécuter le code en contexte.

Rubriques

Actions

L'exemple de code suivant montre comment utilisercreate-api-mapping.

AWS CLI

Pour créer un mappage d'API pour une API

L'create-api-mappingexemple suivant fait correspondre le test stage d'une API au /myApi chemin du nom de domaine regional.example.com personnalisé.

aws apigatewayv2 create-api-mapping \ --domain-name regional.example.com \ --api-mapping-key myApi \ --api-id a1b2c3d4 \ --stage test

Sortie :

{ "ApiId": "a1b2c3d4", "ApiMappingId": "0qzs2sy7bh", "ApiMappingKey": "myApi" "Stage": "test" }

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous CreateApiMappingà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-api.

AWS CLI

Pour créer une API HTTP

L'create-apiexemple suivant crée une API HTTP à l'aide de la création rapide. Vous pouvez utiliser la création rapide pour créer une API avec une intégration AWS Lambda ou HTTP, une route fourre-tout par défaut et une étape par défaut configurée pour déployer automatiquement les modifications. La commande suivante utilise la création rapide pour créer une API HTTP qui s'intègre à une fonction Lambda.

aws apigatewayv2 create-api \ --name my-http-api \ --protocol-type HTTP \ --target arn:aws:lambda:us-west-2:123456789012:function:my-lambda-function

Sortie :

{ "ApiEndpoint": "https://a1b2c3d4.execute-api.us-west-2.amazonaws.com", "ApiId": "a1b2c3d4", "ApiKeySelectionExpression": "$request.header.x-api-key", "CreatedDate": "2020-04-08T19:05:45+00:00", "Name": "my-http-api", "ProtocolType": "HTTP", "RouteSelectionExpression": "$request.method $request.path" }

Pour plus d'informations, consultez la section Développement d'une API HTTP dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

Pour créer une WebSocket API

L'create-apiexemple suivant crée une WebSocket API portant le nom spécifié.

aws apigatewayv2 create-api \ --name "myWebSocketApi" \ --protocol-type WEBSOCKET \ --route-selection-expression '$request.body.action'

Sortie :

{ "ApiKeySelectionExpression": "$request.header.x-api-key", "Name": "myWebSocketApi", "CreatedDate": "2018-11-15T06:23:51Z", "ProtocolType": "WEBSOCKET", "RouteSelectionExpression": "'$request.body.action'", "ApiId": "aabbccddee" }

Pour plus d'informations, consultez la section Créer une WebSocket API dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous CreateApià la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-authorizer.

AWS CLI

Pour créer un autorisateur JWT pour une API HTTP

L'create-authorizerexemple suivant crée un autorisateur JWT qui utilise Amazon Cognito comme fournisseur d'identité.

aws apigatewayv2 create-authorizer \ --name my-jwt-authorizer \ --api-id a1b2c3d4 \ --authorizer-type JWT \ --identity-source '$request.header.Authorization' \ --jwt-configuration Audience=123456abc,Issuer=https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc123

Sortie :

{ "AuthorizerId": "a1b2c3", "AuthorizerType": "JWT", "IdentitySource": [ "$request.header.Authorization" ], "JwtConfiguration": { "Audience": [ "123456abc" ], "Issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc123" }, "Name": "my-jwt-authorizer" }

Pour plus d'informations, consultez la section Contrôle de l'accès au protocole HTTP APIs avec les autorisateurs JWT dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous CreateAuthorizerà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-deployment.

AWS CLI

Pour créer un déploiement pour une API

L'create-deploymentexemple suivant crée un déploiement pour une API et associe ce déploiement à l'devétape de l'API.

aws apigatewayv2 create-deployment \ --api-id a1b2c3d4 \ --stage-name dev

Sortie :

{ "AutoDeployed": false, "CreatedDate": "2020-04-06T23:38:08Z", "DeploymentId": "53lz9l", "DeploymentStatus": "DEPLOYED" }

Pour plus d'informations, consultez la section Déploiement d'API dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous CreateDeploymentà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-domain-name.

AWS CLI

Pour créer un nom de domaine personnalisé

L'create-domain-nameexemple suivant crée un nom de domaine personnalisé régional pour une API.

aws apigatewayv2 create-domain-name \ --domain-name regional.example.com \ --domain-name-configurations CertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678

Sortie :

{ "ApiMappingSelectionExpression": "$request.basepath", "DomainName": "regional.example.com", "DomainNameConfigurations": [ { "ApiGatewayDomainName": "d-id.execute-api.us-west-2.amazonaws.com", "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678", "EndpointType": "REGIONAL", "HostedZoneId": "123456789111", "SecurityPolicy": "TLS_1_2", "DomainNameStatus": "AVAILABLE" } ] }

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous CreateDomainNameà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-integration.

AWS CLI

Pour créer une intégration WebSocket d'API

L'create-integrationexemple suivant crée une intégration fictive pour une WebSocket API.

aws apigatewayv2 create-integration \ --api-id aabbccddee \ --passthrough-behavior WHEN_NO_MATCH \ --timeout-in-millis 29000 \ --connection-type INTERNET \ --integration-type MOCK

Sortie :

{ "ConnectionType": "INTERNET", "IntegrationId": "0abcdef", "IntegrationResponseSelectionExpression": "${integration.response.statuscode}", "IntegrationType": "MOCK", "PassthroughBehavior": "WHEN_NO_MATCH", "PayloadFormatVersion": "1.0", "TimeoutInMillis": 29000 }

Pour plus d'informations, consultez Configurer une demande d'intégration d' WebSocket API dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

Pour créer une intégration d'API HTTP

L'create-integrationexemple suivant crée une intégration AWS Lambda pour une API HTTP.

aws apigatewayv2 create-integration \ --api-id a1b2c3d4 \ --integration-type AWS_PROXY \ --integration-uri arn:aws:lambda:us-west-2:123456789012:function:my-function \ --payload-format-version 2.0

Sortie :

{ "ConnectionType": "INTERNET", "IntegrationId": "0abcdef", "IntegrationMethod": "POST", "IntegrationType": "AWS_PROXY", "IntegrationUri": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "PayloadFormatVersion": "2.0", "TimeoutInMillis": 30000 }

Pour plus d'informations, consultez la section Configuration des intégrations pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous CreateIntegrationà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-route.

AWS CLI

Pour créer une route $default pour une WebSocket ou une API HTTP

L'create-routeexemple suivant crée un $default itinéraire pour une API WebSocket ou HTTP.

aws apigatewayv2 create-route \ --api-id aabbccddee \ --route-key '$default'

Sortie :

{ "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteKey": "$default", "RouteId": "1122334" }

Pour plus d'informations, consultez la section Travailler avec des routes pour WebSocket APIs dans le manuel Amazon API Gateway Developer Guide.

Pour créer un itinéraire pour une API HTTP

L'create-routeexemple suivant crée une route nommée signup qui accepte les requêtes POST.

aws apigatewayv2 create-route \ --api-id aabbccddee \ --route-key 'POST /signup'

Sortie :

{ "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteKey": "POST /signup", "RouteId": "1122334" }

Pour plus d'informations, consultez la section Travailler avec des routes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide

  • Pour plus de détails sur l'API, reportez-vous CreateRouteà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-stage.

AWS CLI

Pour créer une scène

L'create-stageexemple suivant crée une étape nommée dev pour une API.

aws apigatewayv2 create-stage \ --api-id a1b2c3d4 \ --stage-name dev

Sortie :

{ "CreatedDate": "2020-04-06T23:23:46Z", "DefaultRouteSettings": { "DetailedMetricsEnabled": false }, "LastUpdatedDate": "2020-04-06T23:23:46Z", "RouteSettings": {}, "StageName": "dev", "StageVariables": {}, "Tags": {} }

Pour plus d'informations, consultez la section Travailler avec des étapes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous CreateStageà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-vpc-link.

AWS CLI

Pour créer un lien VPC pour une API HTTP

L'create-vpc-linkexemple suivant crée un lien VPC pour HTTP. APIs

aws apigatewayv2 create-vpc-link \ --name MyVpcLink \ --subnet-ids subnet-aaaa subnet-bbbb \ --security-group-ids sg1234 sg5678

Sortie :

{ "CreatedDate": "2020-04-07T00:11:46Z", "Name": "MyVpcLink", "SecurityGroupIds": [ "sg1234", "sg5678" ], "SubnetIds": [ "subnet-aaaa", "subnet-bbbb" ], "Tags": {}, "VpcLinkId": "abcd123", "VpcLinkStatus": "PENDING", "VpcLinkStatusMessage": "VPC link is provisioning ENIs", "VpcLinkVersion": "V2" }

Pour plus d'informations, consultez la section Utilisation de liens VPC pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous CreateVpcLinkà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-access-log-settings.

AWS CLI

Pour désactiver la journalisation des accès pour une API

L'delete-access-log-settingsexemple suivant supprime les paramètres du journal d'accès pour l'$defaultétape d'une API. Pour désactiver la journalisation des accès pour une étape, supprimez ses paramètres de journal d'accès.

aws apigatewayv2 delete-access-log-settings \ --api-id a1b2c3d4 \ --stage-name '$default'

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Configuration de la journalisation pour une API HTTP dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteAccessLogSettingsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-api-mapping.

AWS CLI

Pour supprimer un mappage d'API

L'delete-api-mappingexemple suivant supprime un mappage d'API pour le nom de domaine api.example.com personnalisé.

aws apigatewayv2 delete-api-mapping \ --api-mapping-id a1b2c3 \ --domain-name api.example.com

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteApiMappingà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-api.

AWS CLI

Pour supprimer une API

L'delete-apiexemple suivant supprime une API.

aws apigatewayv2 delete-api \ --api-id a1b2c3d4

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez les sections Working with HTTP APIs et Working with WebSocket APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteApià la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-authorizer.

AWS CLI

Pour supprimer un autorisateur

L'delete-authorizerexemple suivant supprime un autorisateur.

aws apigatewayv2 delete-authorizer \ --api-id a1b2c3d4 \ --authorizer-id a1b2c3

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Contrôle de l'accès au protocole HTTP APIs avec les autorisateurs JWT dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteAuthorizerà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-cors-configuration.

AWS CLI

Pour supprimer la configuration CORS d'une API HTTP

L'delete-cors-configurationexemple suivant désactive le CORS pour une API HTTP en supprimant sa configuration CORS.

aws apigatewayv2 delete-cors-configuration \ --api-id a1b2c3d4

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Configuration de CORS pour une API HTTP dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteCorsConfigurationà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-deployment.

AWS CLI

Pour supprimer un déploiement

L'delete-deploymentexemple suivant supprime le déploiement d'une API.

aws apigatewayv2 delete-deployment \ --api-id a1b2c3d4 \ --deployment-id a1b2c3

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Déploiement d'API dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteDeploymentà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-domain-name.

AWS CLI

Pour supprimer un nom de domaine personnalisé

L'delete-domain-nameexemple suivant supprime un nom de domaine personnalisé.

aws apigatewayv2 delete-domain-name \ --domain-name api.example.com

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteDomainNameà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-integration.

AWS CLI

Pour supprimer une intégration

L'delete-integrationexemple suivant supprime une intégration d'API.

aws apigatewayv2 delete-integration \ --api-id a1b2c3d4 \ --integration-id a1b2c3

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez les sections Configuration des intégrations pour le protocole HTTP APIs et Configuration des intégrations d' WebSocket API dans le manuel du développeur Amazon API Gateway.

  • Pour plus de détails sur l'API, reportez-vous DeleteIntegrationà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-route-settings.

AWS CLI

Pour supprimer les paramètres d'itinéraire

L'delete-route-settingsexemple suivant supprime les paramètres d'itinéraire pour l'itinéraire spécifié.

aws apigatewayv2 delete-route-settings \ --api-id a1b2c3d4 \ --stage-name dev \ --route-key 'GET /pets'

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Travailler avec des routes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteRouteSettingsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-route.

AWS CLI

Pour supprimer un itinéraire

L'delete-routeexemple suivant supprime une route d'API.

aws apigatewayv2 delete-route \ --api-id a1b2c3d4 \ --route-id a1b2c3

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Travailler avec des routes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteRouteà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-stage.

AWS CLI

Pour supprimer une étape

L'delete-stageexemple suivant supprime le test stage d'une API.

aws apigatewayv2 delete-stage \ --api-id a1b2c3d4 \ --stage-name test

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Travailler avec des étapes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteStageà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-vpc-link.

AWS CLI

Pour supprimer un lien VPC pour une API HTTP

L'delete-vpc-linkexemple suivant supprime un lien VPC.

aws apigatewayv2 delete-vpc-link \ --vpc-link-id abcd123

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Utilisation de liens VPC pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous DeleteVpcLinkà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserexport-api.

AWS CLI

Pour exporter la définition OpenAPI d'une API HTTP

L'export-apiexemple suivant exporte une définition OpenAPI 3.0 d'un stage d'API nommé prod vers un fichier YAML nommé. stage-definition.yaml Le fichier de définition exporté inclut les extensions API Gateway par défaut.

aws apigatewayv2 export-api \ --api-id a1b2c3d4 \ --output-type YAML \ --specification OAS30 \ --stage-name prod \ stage-definition.yaml

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez Exporter une API HTTP depuis API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous ExportApià la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-api-mapping.

AWS CLI

Pour obtenir des informations sur un mappage d'API pour un nom de domaine personnalisé

L'get-api-mappingexemple suivant affiche des informations sur un mappage d'API pour le nom de domaine api.example.com personnalisé.

aws apigatewayv2 get-api-mapping \ --api-mapping-id a1b2c3 \ --domain-name api.example.com

Sortie :

{ "ApiId": "a1b2c3d4", "ApiMappingId": "a1b2c3d5", "ApiMappingKey": "myTestApi" "Stage": "test" }

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetApiMappingà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-api-mappings.

AWS CLI

Pour obtenir des mappages d'API pour un nom de domaine personnalisé

L'get-api-mappingsexemple suivant affiche une liste de tous les mappages d'API pour le nom de domaine api.example.com personnalisé.

aws apigatewayv2 get-api-mappings \ --domain-name api.example.com

Sortie :

{ "Items": [ { "ApiId": "a1b2c3d4", "ApiMappingId": "a1b2c3d5", "ApiMappingKey": "myTestApi" "Stage": "test" }, { "ApiId": "a5b6c7d8", "ApiMappingId": "a1b2c3d6", "ApiMappingKey": "myDevApi" "Stage": "dev" }, ] }

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetApiMappingsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-api.

AWS CLI

Pour récupérer des informations sur une API

L'get-apiexemple suivant affiche des informations sur une API.

aws apigatewayv2 get-api \ --api-id a1b2c3d4

Sortie :

{ "ApiEndpoint": "https://a1b2c3d4.execute-api.us-west-2.amazonaws.com", "ApiId": "a1b2c3d4", "ApiKeySelectionExpression": "$request.header.x-api-key", "CreatedDate": "2020-03-28T00:32:37Z", "Name": "my-api", "ProtocolType": "HTTP", "RouteSelectionExpression": "$request.method $request.path", "Tags": { "department": "finance" } }
  • Pour plus de détails sur l'API, reportez-vous GetApià la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-apis.

AWS CLI

Pour récupérer une liste de APIs

L'get-apisexemple suivant répertorie toutes les informations APIs pour l'utilisateur actuel.

aws apigatewayv2 get-apis

Sortie :

{ "Items": [ { "ApiEndpoint": "wss://a1b2c3d4.execute-api.us-west-2.amazonaws.com", "ApiId": "a1b2c3d4", "ApiKeySelectionExpression": "$request.header.x-api-key", "CreatedDate": "2020-04-07T20:21:59Z", "Name": "my-websocket-api", "ProtocolType": "WEBSOCKET", "RouteSelectionExpression": "$request.body.message", "Tags": {} }, { "ApiEndpoint": "https://a1b2c3d5.execute-api.us-west-2.amazonaws.com", "ApiId": "a1b2c3d5", "ApiKeySelectionExpression": "$request.header.x-api-key", "CreatedDate": "2020-04-07T20:23:50Z", "Name": "my-http-api", "ProtocolType": "HTTP", "RouteSelectionExpression": "$request.method $request.path", "Tags": {} } ] }

Pour plus d'informations, consultez les sections Working with HTTP APIs et Working with WebSocket APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetApisà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-authorizer.

AWS CLI

Pour récupérer des informations sur un autorisateur

L'get-authorizerexemple suivant affiche des informations sur un autorisateur.

aws apigatewayv2 get-authorizer \ --api-id a1b2c3d4 \ --authorizer-id a1b2c3

Sortie :

{ "AuthorizerId": "a1b2c3", "AuthorizerType": "JWT", "IdentitySource": [ "$request.header.Authorization" ], "JwtConfiguration": { "Audience": [ "123456abc" ], "Issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc123" }, "Name": "my-jwt-authorizer" }

Pour plus d'informations, consultez la section Contrôle de l'accès au protocole HTTP APIs avec les autorisateurs JWT dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetAuthorizerà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-authorizers.

AWS CLI

Pour récupérer la liste des autorisateurs pour une API

L'get-authorizersexemple suivant affiche la liste de tous les autorisateurs pour une API.

aws apigatewayv2 get-authorizers \ --api-id a1b2c3d4

Sortie :

{ "Items": [ { "AuthorizerId": "a1b2c3", "AuthorizerType": "JWT", "IdentitySource": [ "$request.header.Authorization" ], "JwtConfiguration": { "Audience": [ "123456abc" ], "Issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc123" }, "Name": "my-jwt-authorizer" }, { "AuthorizerId": "a1b2c4", "AuthorizerType": "JWT", "IdentitySource": [ "$request.header.Authorization" ], "JwtConfiguration": { "Audience": [ "6789abcde" ], "Issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc234" }, "Name": "new-jwt-authorizer" } ] }

Pour plus d'informations, consultez la section Contrôle de l'accès au protocole HTTP APIs avec les autorisateurs JWT dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetAuthorizersà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-deployment.

AWS CLI

Pour récupérer des informations relatives à un déploiement

L'get-deploymentexemple suivant affiche les informations relatives à un déploiement.

aws apigatewayv2 get-deployment \ --api-id a1b2c3d4 \ --deployment-id abcdef

Sortie :

{ "AutoDeployed": true, "CreatedDate": "2020-04-07T23:58:40Z", "DeploymentId": "abcdef", "DeploymentStatus": "DEPLOYED", "Description": "Automatic deployment triggered by changes to the Api configuration" }

Pour plus d'informations, consultez la section Déploiement d'API dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetDeploymentà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-deployments.

AWS CLI

Pour récupérer la liste des déploiements

L'get-deploymentsexemple suivant affiche la liste de tous les déploiements d'une API.

aws apigatewayv2 get-deployments \ --api-id a1b2c3d4

Sortie :

{ "Items": [ { "AutoDeployed": true, "CreatedDate": "2020-04-07T23:58:40Z", "DeploymentId": "abcdef", "DeploymentStatus": "DEPLOYED", "Description": "Automatic deployment triggered by changes to the Api configuration" }, { "AutoDeployed": true, "CreatedDate": "2020-04-06T00:33:00Z", "DeploymentId": "bcdefg", "DeploymentStatus": "DEPLOYED", "Description": "Automatic deployment triggered by changes to the Api configuration" } ] }

Pour plus d'informations, consultez la section Déploiement d'API dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetDeploymentsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-domain-name.

AWS CLI

Pour récupérer des informations sur un nom de domaine personnalisé

L'get-domain-nameexemple suivant affiche les informations relatives à un nom de domaine personnalisé.

aws apigatewayv2 get-domain-name \ --domain-name api.example.com

Sortie :

{ "ApiMappingSelectionExpression": "$request.basepath", "DomainName": "api.example.com", "DomainNameConfigurations": [ { "ApiGatewayDomainName": "d-1234.execute-api.us-west-2.amazonaws.com", "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678", "EndpointType": "REGIONAL", "HostedZoneId": "123456789111", "SecurityPolicy": "TLS_1_2", "DomainNameStatus": "AVAILABLE" } ], "Tags": {} }

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetDomainNameà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-domain-names.

AWS CLI

Pour récupérer une liste de noms de domaine personnalisés

L'get-domain-namesexemple suivant affiche une liste de tous les noms de domaine personnalisés pour l'utilisateur actuel.

aws apigatewayv2 get-domain-names

Sortie :

{ "Items": [ { "ApiMappingSelectionExpression": "$request.basepath", "DomainName": "api.example.com", "DomainNameConfigurations": [ { "ApiGatewayDomainName": "d-1234.execute-api.us-west-2.amazonaws.com", "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678", "EndpointType": "REGIONAL", "HostedZoneId": "123456789111", "SecurityPolicy": "TLS_1_2", "DomainNameStatus": "AVAILABLE" } ] }, { "ApiMappingSelectionExpression": "$request.basepath", "DomainName": "newApi.example.com", "DomainNameConfigurations": [ { "ApiGatewayDomainName": "d-5678.execute-api.us-west-2.amazonaws.com", "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678", "EndpointType": "REGIONAL", "HostedZoneId": "123456789222", "SecurityPolicy": "TLS_1_2", "DomainNameStatus": "AVAILABLE" } ] } ] }

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetDomainNamesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-integration.

AWS CLI

Pour récupérer des informations sur une intégration

L'get-integrationexemple suivant affiche les informations relatives à une intégration.

aws apigatewayv2 get-integration \ --api-id a1b2c3d4 \ --integration-id a1b2c3

Sortie :

{ "ApiGatewayManaged": true, "ConnectionType": "INTERNET", "IntegrationId": "a1b2c3", "IntegrationMethod": "POST", "IntegrationType": "AWS_PROXY", "IntegrationUri": "arn:aws:lambda:us-west-2:12356789012:function:hello12", "PayloadFormatVersion": "2.0", "TimeoutInMillis": 30000 }

Pour plus d'informations, consultez les sections Configuration des intégrations pour le protocole HTTP APIs et Configuration des intégrations d' WebSocket API dans le manuel du développeur Amazon API Gateway.

  • Pour plus de détails sur l'API, reportez-vous GetIntegrationà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-integrations.

AWS CLI

Pour récupérer une liste d'intégrations

L'get-integrationsexemple suivant affiche la liste de toutes les intégrations d'une API.

aws apigatewayv2 get-integrations \ --api-id a1b2c3d4

Sortie :

{ "Items": [ { "ApiGatewayManaged": true, "ConnectionType": "INTERNET", "IntegrationId": "a1b2c3", "IntegrationMethod": "POST", "IntegrationType": "AWS_PROXY", "IntegrationUri": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "PayloadFormatVersion": "2.0", "TimeoutInMillis": 30000 }, { "ConnectionType": "INTERNET", "IntegrationId": "a1b2c4", "IntegrationMethod": "ANY", "IntegrationType": "HTTP_PROXY", "IntegrationUri": "https://www.example.com", "PayloadFormatVersion": "1.0", "TimeoutInMillis": 30000 } ] }

Pour plus d'informations, consultez les sections Configuration des intégrations pour le protocole HTTP APIs et Configuration des intégrations d' WebSocket API dans le manuel du développeur Amazon API Gateway.

  • Pour plus de détails sur l'API, reportez-vous GetIntegrationsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-route.

AWS CLI

Pour récupérer des informations sur un itinéraire

L'get-routeexemple suivant affiche les informations relatives à un itinéraire.

aws apigatewayv2 get-route \ --api-id a1b2c3d4 \ --route-id 72jz1wk

Sortie :

{ "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteId": "72jz1wk", "RouteKey": "ANY /pets", "Target": "integrations/a1b2c3" }

Pour plus d'informations, consultez la section Travailler avec des routes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide

  • Pour plus de détails sur l'API, reportez-vous GetRouteà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-routes.

AWS CLI

Pour récupérer une liste d'itinéraires

L'get-routesexemple suivant affiche une liste de toutes les routes d'une API.

aws apigatewayv2 get-routes \ --api-id a1b2c3d4

Sortie :

{ "Items": [ { "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteId": "72jz1wk", "RouteKey": "ANY /admin", "Target": "integrations/a1b2c3" }, { "ApiGatewayManaged": true, "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteId": "go65gqi", "RouteKey": "$default", "Target": "integrations/a1b2c4" } ] }

Pour plus d'informations, consultez la section Travailler avec des routes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide

  • Pour plus de détails sur l'API, reportez-vous GetRoutesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-stage.

AWS CLI

Pour récupérer des informations sur une étape

L'get-stageexemple suivant affiche des informations sur le prod stade d'une API.

aws apigatewayv2 get-stage \ --api-id a1b2c3d4 \ --stage-name prod

Sortie :

{ "CreatedDate": "2020-04-08T00:36:05Z", "DefaultRouteSettings": { "DetailedMetricsEnabled": false }, "DeploymentId": "x1zwyv", "LastUpdatedDate": "2020-04-08T00:36:13Z", "RouteSettings": {}, "StageName": "prod", "StageVariables": { "function": "my-prod-function" }, "Tags": {} }

Pour plus d'informations, consultez la section Travailler avec des étapes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetStageà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-stages.

AWS CLI

Pour récupérer la liste des étapes

L'get-stagesexemple suivant répertorie toutes les étapes d'une API.

aws apigatewayv2 get-stages \ --api-id a1b2c3d4

Sortie :

{ "Items": [ { "ApiGatewayManaged": true, "AutoDeploy": true, "CreatedDate": "2020-04-08T00:08:44Z", "DefaultRouteSettings": { "DetailedMetricsEnabled": false }, "DeploymentId": "dty748", "LastDeploymentStatusMessage": "Successfully deployed stage with deployment ID 'dty748'", "LastUpdatedDate": "2020-04-08T00:09:49Z", "RouteSettings": {}, "StageName": "$default", "StageVariables": {}, "Tags": {} }, { "AutoDeploy": true, "CreatedDate": "2020-04-08T00:35:06Z", "DefaultRouteSettings": { "DetailedMetricsEnabled": false }, "LastUpdatedDate": "2020-04-08T00:35:48Z", "RouteSettings": {}, "StageName": "dev", "StageVariables": { "function": "my-dev-function" }, "Tags": {} }, { "CreatedDate": "2020-04-08T00:36:05Z", "DefaultRouteSettings": { "DetailedMetricsEnabled": false }, "DeploymentId": "x1zwyv", "LastUpdatedDate": "2020-04-08T00:36:13Z", "RouteSettings": {}, "StageName": "prod", "StageVariables": { "function": "my-prod-function" }, "Tags": {} } ] }

Pour plus d'informations, consultez la section Travailler avec des étapes pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetStagesà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-tags.

AWS CLI

Pour récupérer une liste de balises pour une ressource

L'get-tagsexemple suivant répertorie toutes les balises d'une API.

aws apigatewayv2 get-tags \ --resource-arn arn:aws:apigateway:us-west-2::/apis/a1b2c3d4

Sortie :

{ "Tags": { "owner": "dev-team", "environment": "prod" } }

Pour plus d'informations, consultez la section Marquage de vos ressources API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetTagsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-vpc-link.

AWS CLI

Pour récupérer des informations sur un lien VPC

L'get-vpc-linkexemple suivant affiche des informations sur un lien VPC.

aws apigatewayv2 get-vpc-link \ --vpc-link-id abcd123

Sortie :

{ "CreatedDate": "2020-04-07T00:27:47Z", "Name": "MyVpcLink", "SecurityGroupIds": [ "sg1234", "sg5678" ], "SubnetIds": [ "subnet-aaaa", "subnet-bbbb" ], "Tags": {}, "VpcLinkId": "abcd123", "VpcLinkStatus": "AVAILABLE", "VpcLinkStatusMessage": "VPC link is ready to route traffic", "VpcLinkVersion": "V2" }

Pour plus d'informations, consultez la section Utilisation de liens VPC pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetVpcLinkà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-vpc-links.

AWS CLI

Pour récupérer une liste de liens VPC

L'get-vpc-linksexemple suivant affiche une liste de tous les liens VPC pour l'utilisateur actuel.

aws apigatewayv2 get-vpc-links

Sortie :

{ "Items": [ { "CreatedDate": "2020-04-07T00:27:47Z", "Name": "MyVpcLink", "SecurityGroupIds": [ "sg1234", "sg5678" ], "SubnetIds": [ "subnet-aaaa", "subnet-bbbb" ], "Tags": {}, "VpcLinkId": "abcd123", "VpcLinkStatus": "AVAILABLE", "VpcLinkStatusMessage": "VPC link is ready to route traffic", "VpcLinkVersion": "V2" } { "CreatedDate": "2020-04-07T00:27:47Z", "Name": "MyOtherVpcLink", "SecurityGroupIds": [ "sg1234", "sg5678" ], "SubnetIds": [ "subnet-aaaa", "subnet-bbbb" ], "Tags": {}, "VpcLinkId": "abcd456", "VpcLinkStatus": "AVAILABLE", "VpcLinkStatusMessage": "VPC link is ready to route traffic", "VpcLinkVersion": "V2" } ] }

Pour plus d'informations, consultez la section Utilisation de liens VPC pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous GetVpcLinksà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserimport-api.

AWS CLI

Pour importer une API HTTP

L'import-apiexemple suivant crée une API HTTP à partir d'un fichier de définition OpenAPI 3.0 nommé. api-definition.yaml

aws apigatewayv2 import-api \ --body file://api-definition.yaml

Contenu de api-definition.yaml :

openapi: 3.0.1 info: title: My Lambda API version: v1.0 paths: /hello: x-amazon-apigateway-any-method: x-amazon-apigateway-integration: payloadFormatVersion: 2.0 type: aws_proxy httpMethod: POST uri: arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:hello/invocations connectionType: INTERNET

Sortie :

{ "ApiEndpoint": "https://a1b2c3d4.execute-api.us-west-2.amazonaws.com", "ApiId": "a1b2c3d4", "ApiKeySelectionExpression": "$request.header.x-api-key", "CreatedDate": "2020-04-08T17:19:38+00:00", "Name": "My Lambda API", "ProtocolType": "HTTP", "RouteSelectionExpression": "$request.method $request.path", "Tags": {}, "Version": "v1.0" }

Pour plus d'informations, consultez la section Travailler avec les définitions OpenAPI pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous ImportApià la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserreimport-api.

AWS CLI

Pour réimporter une API HTTP

L'reimport-apiexemple suivant met à jour une API HTTP existante afin d'utiliser la définition OpenAPI 3.0 spécifiée dans. api-definition.yaml

aws apigatewayv2 reimport-api \ --body file://api-definition.yaml \ --api-id a1b2c3d4

Contenu de api-definition.yaml :

openapi: 3.0.1 info: title: My Lambda API version: v1.0 paths: /hello: x-amazon-apigateway-any-method: x-amazon-apigateway-integration: payloadFormatVersion: 2.0 type: aws_proxy httpMethod: POST uri: arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:12356789012:function:hello/invocations connectionType: INTERNET

Sortie :

{ "ApiEndpoint": "https://a1b2c3d4.execute-api.us-west-2.amazonaws.com", "ApiId": "a1b2c3d4", "ApiKeySelectionExpression": "$request.header.x-api-key", "CreatedDate": "2020-04-08T17:19:38+00:00", "Name": "My Lambda API", "ProtocolType": "HTTP", "RouteSelectionExpression": "$request.method $request.path", "Tags": {}, "Version": "v1.0" }

Pour plus d'informations, consultez la section Travailler avec les définitions OpenAPI pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous ReimportApià la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisertag-resource.

AWS CLI

Pour étiqueter une ressource

L'tag-resourceexemple suivant ajoute une balise avec le nom de la clé Department et une valeur de Accounting à l'API spécifiée.

aws apigatewayv2 tag-resource \ --resource-arn arn:aws:apigateway:us-west-2::/apis/a1b2c3d4 \ --tags Department=Accounting

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Marquage de vos ressources API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous TagResourceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliseruntag-resource.

AWS CLI

Pour supprimer des balises d'une ressource

L'untag-resourceexemple suivant supprime les balises portant les noms des clés Project et Owner de l'API spécifiée.

aws apigatewayv2 untag-resource \ --resource-arn arn:aws:apigateway:us-west-2::/apis/a1b2c3d4 \ --tag-keys Project Owner

Cette commande ne produit aucun résultat.

Pour plus d'informations, consultez la section Marquage de vos ressources API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UntagResourceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-api-mapping.

AWS CLI

Pour mettre à jour un mappage d'API

L'update-api-mappingexemple suivant modifie un mappage d'API pour un nom de domaine personnalisé. Par conséquent, l'URL de base utilisant le nom de domaine personnalisé pour l'API et le stage spécifiés devienthttps://api.example.com/dev.

aws apigatewayv2 update-api-mapping \ --api-id a1b2c3d4 \ --stage dev \ --domain-name api.example.com \ --api-mapping-id 0qzs2sy7bh \ --api-mapping-key dev

Sortie :

{ "ApiId": "a1b2c3d4", "ApiMappingId": "0qzs2sy7bh", "ApiMappingKey": "dev" "Stage": "dev" }

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UpdateApiMappingà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-api.

AWS CLI

Pour activer CORS pour une API HTTP

L'update-apiexemple suivant met à jour la configuration CORS de l'API spécifiée pour autoriser les demandes provenant dehttps://www.example.com.

aws apigatewayv2 update-api \ --api-id a1b2c3d4 \ --cors-configuration AllowOrigins=https://www.example.com

Sortie :

{ "ApiEndpoint": "https://a1b2c3d4.execute-api.us-west-2.amazonaws.com", "ApiId": "a1b2c3d4", "ApiKeySelectionExpression": "$request.header.x-api-key", "CorsConfiguration": { "AllowCredentials": false, "AllowHeaders": [ "header1", "header2" ], "AllowMethods": [ "GET", "OPTIONS" ], "AllowOrigins": [ "https://www.example.com" ] }, "CreatedDate": "2020-04-08T18:39:37+00:00", "Name": "my-http-api", "ProtocolType": "HTTP", "RouteSelectionExpression": "$request.method $request.path", "Tags": {}, "Version": "v1.0" }

Pour plus d'informations, consultez la section Configuration de CORS pour une API HTTP dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UpdateApià la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-authorizer.

AWS CLI

Pour mettre à jour un autorisateur

L'update-authorizerexemple suivant remplace la source d'identité d'un autorisateur JWT par un en-tête nommé. Authorization

aws apigatewayv2 update-authorizer \ --api-id a1b2c3d4 \ --authorizer-id a1b2c3 \ --identity-source '$request.header.Authorization'

Sortie :

{ "AuthorizerId": "a1b2c3", "AuthorizerType": "JWT", "IdentitySource": [ "$request.header.Authorization" ], "JwtConfiguration": { "Audience": [ "123456abc" ], "Issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc123" }, "Name": "my-jwt-authorizer" }

Pour plus d'informations, consultez la section Contrôle de l'accès au protocole HTTP APIs avec les autorisateurs JWT dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UpdateAuthorizerà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-deployment.

AWS CLI

Pour modifier la description d'un déploiement

L'update-deploymentexemple suivant met à jour la description d'un déploiement.

aws apigatewayv2 update-deployment \ --api-id a1b2c3d4 \ --deployment-id abcdef \ --description 'Manual deployment to fix integration test failures.'

Sortie :

{ "AutoDeployed": false, "CreatedDate": "2020-02-05T16:21:48+00:00", "DeploymentId": "abcdef", "DeploymentStatus": "DEPLOYED", "Description": "Manual deployment to fix integration test failures." }

Pour plus d'informations, consultez la section Développement d'une API HTTP dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UpdateDeploymentà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-domain-name.

AWS CLI

Pour mettre à jour un nom de domaine personnalisé

L'update-domain-nameexemple suivant indique un nouveau certificat ACM pour le nom de domaine api.example.com personnalisé.

aws apigatewayv2 update-domain-name \ --domain-name api.example.com \ --domain-name-configurations CertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678

Sortie :

{ "ApiMappingSelectionExpression": "$request.basepath", "DomainName": "regional.example.com", "DomainNameConfigurations": [ { "ApiGatewayDomainName": "d-id.execute-api.us-west-2.amazonaws.com", "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678", "EndpointType": "REGIONAL", "HostedZoneId": "123456789111", "SecurityPolicy": "TLS_1_2", "DomainNameStatus": "AVAILABLE" } ] }

Pour plus d'informations, consultez Configuration d'un nom de domaine personnalisé régional dans API Gateway dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UpdateDomainNameà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-integration.

AWS CLI

Pour mettre à jour une intégration Lambda

L'update-integrationexemple suivant met à jour une intégration AWS Lambda existante pour utiliser la fonction Lambda spécifiée.

aws apigatewayv2 update-integration \ --api-id a1b2c3d4 \ --integration-id a1b2c3 \ --integration-uri arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:my-new-function/invocations

Sortie :

{ "ConnectionType": "INTERNET", "IntegrationId": "a1b2c3", "IntegrationMethod": "POST", "IntegrationType": "AWS_PROXY", "IntegrationUri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:my-new-function/invocations", "PayloadFormatVersion": "2.0", "TimeoutInMillis": 5000 }

Pour plus d'informations, consultez les sections Configuration des intégrations pour le protocole HTTP APIs et Configuration des intégrations d' WebSocket API dans le manuel du développeur Amazon API Gateway.

  • Pour plus de détails sur l'API, reportez-vous UpdateIntegrationà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-route.

AWS CLI

Exemple 1 : Pour mettre à jour l'intégration d'un itinéraire

L'update-routeexemple suivant met à jour l'intégration d'un itinéraire spécifié.

aws apigatewayv2 update-route \ --api-id a1b2c3d4 \ --route-id a1b2c3 \ --target integrations/a1b2c6

Sortie :

{ "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteId": "a1b2c3", "RouteKey": "ANY /pets", "Target": "integrations/a1b2c6" }

Exemple 2 : pour ajouter un autorisateur à un itinéraire

L'update-routeexemple suivant met à jour l'itinéraire spécifié pour utiliser un autorisateur JWT.

aws apigatewayv2 update-route \ --api-id a1b2c3d4 \ --route-id a1b2c3 \ --authorization-type JWT \ --authorizer-id a1b2c5 \ --authorization-scopes user.id user.email

Sortie :

{ "ApiKeyRequired": false, "AuthorizationScopes": [ "user.id", "user.email" ], "AuthorizationType": "JWT", "AuthorizerId": "a1b2c5", "OperationName": "GET HTTP", "RequestParameters": {}, "RouteId": "a1b2c3", "RouteKey": "GET /pets", "Target": "integrations/a1b2c6" }

Pour plus d'informations, consultez la section Contrôle de l'accès au protocole HTTP APIs avec les autorisateurs JWT dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UpdateRouteà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-stage.

AWS CLI

Pour configurer la régulation personnalisée

L'update-stageexemple suivant configure une régulation personnalisée pour l'étape et l'itinéraire spécifiés d'une API.

aws apigatewayv2 update-stage \ --api-id a1b2c3d4 \ --stage-name dev \ --route-settings '{"GET /pets":{"ThrottlingBurstLimit":100,"ThrottlingRateLimit":2000}}'

Sortie :

{ "CreatedDate": "2020-04-05T16:21:16+00:00", "DefaultRouteSettings": { "DetailedMetricsEnabled": false }, "DeploymentId": "shktxb", "LastUpdatedDate": "2020-04-08T22:23:17+00:00", "RouteSettings": { "GET /pets": { "ThrottlingBurstLimit": 100, "ThrottlingRateLimit": 2000.0 } }, "StageName": "dev", "StageVariables": {}, "Tags": {} }

Pour plus d'informations, consultez la section Protection de votre API HTTP dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UpdateStageà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-vpc-link.

AWS CLI

Pour mettre à jour un lien VPC

L'update-vpc-linkexemple suivant met à jour le nom d'un lien VPC. Une fois que vous avez créé un lien VPC, vous ne pouvez pas modifier ses groupes de sécurité ou ses sous-réseaux.

aws apigatewayv2 update-vpc-link \ --vpc-link-id abcd123 \ --name MyUpdatedVpcLink

Sortie :

{ "CreatedDate": "2020-04-07T00:27:47Z", "Name": "MyUpdatedVpcLink", "SecurityGroupIds": [ "sg1234", "sg5678" ], "SubnetIds": [ "subnet-aaaa", "subnet-bbbb" ], "Tags": {}, "VpcLinkId": "abcd123", "VpcLinkStatus": "AVAILABLE", "VpcLinkStatusMessage": "VPC link is ready to route traffic", "VpcLinkVersion": "V2" }

Pour plus d'informations, consultez la section Utilisation de liens VPC pour HTTP APIs dans le manuel Amazon API Gateway Developer Guide.

  • Pour plus de détails sur l'API, reportez-vous UpdateVpcLinkà la section Référence des AWS CLI commandes.