APIGateway HTTP y WebSocket API ejemplos de uso AWS CLI - AWS Command Line Interface

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

APIGateway HTTP y WebSocket API ejemplos de uso AWS CLI

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el AWS Command Line Interface uso de API Gateway HTTP y WebSocket API.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.

Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.

Acciones

En el siguiente ejemplo de código se muestra cómo usarlocreate-api-mapping.

AWS CLI

Para crear un API mapeo para un API

El siguiente create-api-mapping ejemplo asigna la test etapa de an API a la /myApi ruta del nombre de dominio regional.example.com personalizado.

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

Salida:

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

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte CreateApiMappingla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-api.

AWS CLI

Para crear un HTTP API

En el siguiente create-api ejemplo se crea un HTTP API mediante la creación rápida. Puede usar Quick Create para crear una API con una AWS Lambda o una HTTP integración, una ruta global predeterminada y una etapa predeterminada que esté configurada para implementar los cambios automáticamente. El siguiente comando usa quick create para crear una HTTP API que se integre con una función Lambda.

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

Salida:

{ "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" }

Para obtener más información, consulte Desarrollo de un HTTP API in API Gateway en la Guía para desarrolladores de Amazon API Gateway.

Para crear un WebSocket API

En el siguiente create-api ejemplo, se crea un WebSocket API con el nombre especificado.

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

Salida:

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

Para obtener más información, consulte Create a WebSocket API in API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte CreateApila Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-authorizer.

AWS CLI

Para crear un JWT autorizador para un HTTP API

En el siguiente create-authorizer ejemplo, se crea un JWT autorizador que utiliza Amazon Cognito como proveedor de identidad.

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

Salida:

{ "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" }

Para obtener más información, consulte Control del acceso HTTP APIs con JWT autorizadores en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte CreateAuthorizerla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-deployment.

AWS CLI

Para crear una implementación para un API

El siguiente create-deployment ejemplo crea un despliegue para un API y lo asocia a la dev etapa delAPI.

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

Salida:

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

Para obtener más información, consulte la APIimplementación en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte CreateDeploymentla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-domain-name.

AWS CLI

Para crear un nombre de dominio personalizado

El siguiente create-domain-name ejemplo crea un nombre de dominio regional personalizado para unAPI.

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

Salida:

{ "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" } ] }

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte CreateDomainNamela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-integration.

AWS CLI

Para crear una WebSocket API integración

El siguiente create-integration ejemplo crea una integración simulada para un WebSocket API.

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

Salida:

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

Para obtener más información, consulte Configurar una solicitud de WebSocket API integración en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

Para crear una HTTP API integración

El siguiente create-integration ejemplo crea una integración de AWS Lambda para un. HTTP API

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

Salida:

{ "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 }

Para obtener más información, consulte Configuración de integraciones HTTP APIs en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte CreateIntegrationla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-route.

AWS CLI

Para crear una ruta $default para un WebSocket o HTTP API

El siguiente create-route ejemplo crea una $default ruta para un WebSocket o HTTPAPI.

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

Salida:

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

Para obtener más información, consulte Trabajar con rutas WebSocket APIs en la Guía para desarrolladores de Amazon API Gateway

Para crear una ruta para un HTTP API

En el siguiente create-route ejemplo, se crea una ruta con un nombre signup que acepta POST solicitudes.

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

Salida:

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

Para obtener más información, consulte Trabajar con rutas HTTP APIs en la Guía para desarrolladores de Amazon API Gateway

  • Para API obtener más información, consulte CreateRoutela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-stage.

AWS CLI

Para crear un escenario

El siguiente create-stage ejemplo crea un escenario denominado dev para unAPI.

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

Salida:

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

Para obtener más información, consulte Trabajar con las etapas de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte CreateStagela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-vpc-link.

AWS CLI

Para crear un VPC enlace para un HTTP API

En el siguiente create-vpc-link ejemplo se crea un VPC enlace para HTTPAPIs.

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

Salida:

{ "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" }

Para obtener más información, consulte Cómo trabajar con VPC los enlaces de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte CreateVpcLinkla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-access-log-settings.

AWS CLI

Para deshabilitar el registro de acceso de un API

En el siguiente delete-access-log-settings ejemplo, se elimina la configuración del registro de acceso de la $default etapa de unAPI. Para deshabilitar el registro de acceso de una etapa, elimine su configuración del registro de acceso.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Configuración del registro para un HTTP API en la Guía para desarrolladores de Amazon API Gateway.

El siguiente ejemplo de código muestra cómo usarlodelete-api-mapping.

AWS CLI

Para eliminar un API mapeo

En el siguiente delete-api-mapping ejemplo, se elimina una API asignación del nombre de dominio api.example.com personalizado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteApiMappingla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-api.

AWS CLI

Para eliminar un API

En el delete-api ejemplo siguiente se elimina unAPI.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Trabajar con HTTP APIs y trabajar con WebSocket APIs en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteApila Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-authorizer.

AWS CLI

Para eliminar un autorizador

En el siguiente delete-authorizer ejemplo, se elimina un autorizador.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Control del acceso HTTP APIs con JWT autorizadores en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteAuthorizerla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-cors-configuration.

AWS CLI

Para eliminar la CORS configuración de un HTTP API

En el siguiente delete-cors-configuration ejemplo, se deshabilita CORS para un HTTP API mediante la eliminación de su CORS configuración.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Configuración de un HTTP API en la Guía CORS para desarrolladores de Amazon API Gateway.

El siguiente ejemplo de código muestra cómo usarlodelete-deployment.

AWS CLI

Para eliminar una implementación

En el siguiente delete-deployment ejemplo, se elimina el despliegue de unAPI.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte la APIimplementación en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteDeploymentla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-domain-name.

AWS CLI

Para eliminar un nombre de dominio personalizado

En el siguiente delete-domain-name ejemplo, se elimina un nombre de dominio personalizado.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteDomainNamela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-integration.

AWS CLI

Para eliminar una integración

En el siguiente delete-integration ejemplo, se elimina una API integración.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Configuración HTTP APIs y configuración de WebSocket API integraciones en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte la Referencia DeleteIntegrationde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-route-settings.

AWS CLI

Para eliminar la configuración de la ruta

En el siguiente delete-route-settings ejemplo, se eliminan los ajustes de ruta de la ruta especificada.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Trabajar con rutas HTTP APIs en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteRouteSettingsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-route.

AWS CLI

Para eliminar una ruta

En el siguiente delete-route ejemplo, se elimina una API ruta.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Trabajar con rutas HTTP APIs en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteRoutela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-stage.

AWS CLI

Para eliminar una etapa

En el delete-stage ejemplo siguiente se elimina la test etapa de unAPI.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Trabajar con las etapas de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteStagela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-vpc-link.

AWS CLI

Para eliminar un VPC enlace de un HTTP API

En el siguiente delete-vpc-link ejemplo, se elimina un VPC enlace.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Cómo trabajar con VPC los enlaces de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte DeleteVpcLinkla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloexport-api.

AWS CLI

Para exportar una API definición abierta de un HTTP API

En el siguiente export-api ejemplo, se exporta una definición de Open API 3.0 de una API etapa denominada prod a un YAML archivo denominadostage-definition.yaml. El archivo de definición exportado incluye las extensiones API Gateway de forma predeterminada.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Exportación y HTTP API desde API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte ExportApila Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-api-mapping.

AWS CLI

Para obtener información sobre la API asignación de un nombre de dominio personalizado

En el siguiente get-api-mapping ejemplo, se muestra información sobre una API asignación para el nombre de dominio api.example.com personalizado.

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

Salida:

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

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetApiMappingla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-api-mappings.

AWS CLI

Para obtener API las asignaciones de un nombre de dominio personalizado

En el siguiente get-api-mappings ejemplo, se muestra una lista de todas las API asignaciones del nombre de dominio personalizado. api.example.com

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

Salida:

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

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetApiMappingsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-api.

AWS CLI

Para recuperar información sobre un API

El siguiente get-api ejemplo muestra información sobre unAPI.

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

Salida:

{ "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" } }
  • Para API obtener más información, consulte GetApila Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-apis.

AWS CLI

Para recuperar una lista de APIs

En el siguiente get-apis ejemplo, se enumeran todos APIs los del usuario actual.

aws apigatewayv2 get-apis

Salida:

{ "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": {} } ] }

Para obtener más información, consulte Trabajar con HTTP APIs y trabajar con WebSocket APIs en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetApisla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-authorizer.

AWS CLI

Para recuperar información sobre un autorizador

En el siguiente get-authorizer ejemplo, se muestra información sobre un autorizador.

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

Salida:

{ "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" }

Para obtener más información, consulte Control del acceso HTTP APIs con JWT autorizadores en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetAuthorizerla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-authorizers.

AWS CLI

Para recuperar una lista de autorizadores de un API

En el siguiente get-authorizers ejemplo, se muestra una lista de todos los autorizadores de un. API

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

Salida:

{ "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" } ] }

Para obtener más información, consulte Control del acceso HTTP APIs con JWT autorizadores en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetAuthorizersla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-deployment.

AWS CLI

Para recuperar información sobre una implementación

En el siguiente get-deployment ejemplo, se muestra información sobre una implementación.

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

Salida:

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

Para obtener más información, consulte la APIimplementación en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetDeploymentla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-deployments.

AWS CLI

Para recuperar una lista de despliegues

En el siguiente get-deployments ejemplo, se muestra una lista de todas las implementaciones API de un usuario.

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

Salida:

{ "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" } ] }

Para obtener más información, consulte la APIimplementación en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetDeploymentsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-domain-name.

AWS CLI

Para recuperar información sobre un nombre de dominio personalizado

En el siguiente get-domain-name ejemplo, se muestra información sobre un nombre de dominio personalizado.

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

Salida:

{ "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": {} }

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetDomainNamela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-domain-names.

AWS CLI

Para recuperar una lista de nombres de dominio personalizados

En el siguiente get-domain-names ejemplo, se muestra una lista de todos los nombres de dominio personalizados del usuario actual.

aws apigatewayv2 get-domain-names

Salida:

{ "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" } ] } ] }

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetDomainNamesla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-integration.

AWS CLI

Para recuperar información sobre una integración

En el siguiente get-integration ejemplo, se muestra información sobre una integración.

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

Salida:

{ "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 }

Para obtener más información, consulte Configuración HTTP APIs y configuración de WebSocket API integraciones en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte la Referencia GetIntegrationde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-integrations.

AWS CLI

Para recuperar una lista de integraciones

En el siguiente get-integrations ejemplo, se muestra una lista de todas las integraciones API de una persona.

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

Salida:

{ "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 } ] }

Para obtener más información, consulte Configuración HTTP APIs y configuración de WebSocket API integraciones en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte la Referencia GetIntegrationsde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-route.

AWS CLI

Para recuperar información sobre una ruta

En el siguiente get-route ejemplo, se muestra información sobre una ruta.

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

Salida:

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

Para obtener más información, consulte Trabajar con rutas HTTP APIs en la Guía para desarrolladores de Amazon API Gateway

  • Para API obtener más información, consulte GetRoutela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-routes.

AWS CLI

Para recuperar una lista de rutas

En el siguiente get-routes ejemplo, se muestra una lista de todas las rutas API de un usuario.

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

Salida:

{ "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" } ] }

Para obtener más información, consulte Trabajar con rutas HTTP APIs en la Guía para desarrolladores de Amazon API Gateway

  • Para API obtener más información, consulte GetRoutesla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-stage.

AWS CLI

Para recuperar información sobre una etapa

En el siguiente get-stage ejemplo se muestra información sobre la prod etapa de unaAPI.

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

Salida:

{ "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": {} }

Para obtener más información, consulte Trabajar con las etapas de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetStagela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-stages.

AWS CLI

Para recuperar una lista de etapas

En el siguiente get-stages ejemplo, se enumeran todas las etapas API de una.

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

Salida:

{ "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": {} } ] }

Para obtener más información, consulte Trabajar con las etapas de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetStagesla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-tags.

AWS CLI

Para recuperar una lista de etiquetas de un recurso

En el siguiente get-tags ejemplo, se enumeran todas las etiquetas API de un usuario.

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

Salida:

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

Para obtener más información, consulte Etiquetar los recursos de API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetTagsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-vpc-link.

AWS CLI

Para recuperar información sobre un VPC enlace

En el siguiente get-vpc-link ejemplo, se muestra información acerca de un VPC enlace.

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

Salida:

{ "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" }

Para obtener más información, consulte Cómo trabajar con VPC los enlaces de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetVpcLinkla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-vpc-links.

AWS CLI

Para recuperar una lista de VPC enlaces

En el siguiente get-vpc-links ejemplo, se muestra una lista de todos los VPC enlaces del usuario actual.

aws apigatewayv2 get-vpc-links

Salida:

{ "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" } ] }

Para obtener más información, consulte Cómo trabajar con VPC los enlaces de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte GetVpcLinksla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloimport-api.

AWS CLI

Para importar un HTTP API

En el siguiente import-api ejemplo, se crea una HTTP API a partir de un archivo de definición de Open API 3.0 denominadoapi-definition.yaml.

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

Contenidos 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

Salida:

{ "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" }

Para obtener más información, consulte Trabajar con API definiciones abiertas HTTP APIs en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte ImportApila Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloreimport-api.

AWS CLI

Para volver a importar un HTTP API

En el siguiente reimport-api ejemplo se actualiza un elemento existente HTTP API para utilizar la definición de Open API 3.0 especificada enapi-definition.yaml.

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

Contenidos 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

Salida:

{ "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" }

Para obtener más información, consulte Trabajar con API definiciones abiertas HTTP APIs en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte ReimportApila Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlotag-resource.

AWS CLI

Para etiquetar un recurso

En el siguiente tag-resource ejemplo, se agrega una etiqueta con el nombre de la clave Department y un valor de Accounting al especificadoAPI.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Etiquetar los recursos de API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte TagResourcela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlountag-resource.

AWS CLI

Cómo eliminar etiquetas de un recurso

En el siguiente untag-resource ejemplo, se quitan las etiquetas con los nombres de las claves Project y Owner de las especificadasAPI.

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

Este comando no genera ninguna salida.

Para obtener más información, consulte Etiquetar los recursos de API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UntagResourcela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-api-mapping.

AWS CLI

Para actualizar un API mapeo

En el siguiente update-api-mapping ejemplo, se cambia la API asignación de un nombre de dominio personalizado. Como resultado, la base que URL utiliza el nombre de dominio personalizado para la etapa API y especificada pasa a serhttps://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

Salida:

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

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UpdateApiMappingla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-api.

AWS CLI

CORSPara habilitar un HTTP API

El siguiente update-api ejemplo actualiza la CORS configuración API de la especificación para permitir las solicitudes dehttps://www.example.com.

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

Salida:

{ "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" }

Para obtener más información, consulte Configuración de un HTTP API en la Guía CORS para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UpdateApila Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-authorizer.

AWS CLI

Para actualizar un autorizador

En el siguiente update-authorizer ejemplo, se cambia la fuente de identidad de un JWT autorizador por un encabezado denominado. Authorization

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

Salida:

{ "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" }

Para obtener más información, consulte Control del acceso HTTP APIs con JWT autorizadores en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UpdateAuthorizerla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-deployment.

AWS CLI

Para cambiar la descripción de una implementación

En el siguiente update-deployment ejemplo, se actualiza la descripción de una implementación.

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

Salida:

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

Para obtener más información, consulte Desarrollo de un HTTP API in API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UpdateDeploymentla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-domain-name.

AWS CLI

Para actualizar un nombre de dominio personalizado

El siguiente update-domain-name ejemplo especifica un ACM certificado nuevo para el nombre de dominio api.example.com personalizado.

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

Salida:

{ "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" } ] }

Para obtener más información, consulte Configuración de un nombre de dominio personalizado regional en API Gateway en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UpdateDomainNamela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-integration.

AWS CLI

Para actualizar una integración de Lambda

El siguiente update-integration ejemplo actualiza una integración AWS Lambda existente para usar la función Lambda especificada.

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

Salida:

{ "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 }

Para obtener más información, consulte Configuración HTTP APIs y configuración de WebSocket API integraciones en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte la Referencia UpdateIntegrationde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-route.

AWS CLI

Ejemplo 1: Para actualizar la integración de una ruta

El siguiente update-route ejemplo actualiza la integración de una ruta específica.

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

Salida:

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

Ejemplo 2: Para añadir un autorizador a una ruta

El siguiente update-route ejemplo actualiza la ruta especificada para usar un JWT autorizador.

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

Salida:

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

Para obtener más información, consulte Control del acceso HTTP APIs con JWT autorizadores en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UpdateRoutela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-stage.

AWS CLI

Para configurar una regulación personalizada

El siguiente update-stage ejemplo configura la regulación personalizada para la etapa y la ruta especificadas de un. API

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

Salida:

{ "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": {} }

Para obtener más información, consulte Cómo protegerse HTTP API en la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UpdateStagela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-vpc-link.

AWS CLI

Para actualizar un VPC enlace

En el siguiente update-vpc-link ejemplo, se actualiza el nombre de un VPC enlace. Una vez creado un VPC enlace, no puede cambiar sus grupos de seguridad ni sus subredes.

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

Salida:

{ "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" }

Para obtener más información, consulte Cómo trabajar con VPC los enlaces de HTTP APIs la Guía para desarrolladores de Amazon API Gateway.

  • Para API obtener más información, consulte UpdateVpcLinkla Referencia de AWS CLI comandos.