Exemplos de HTTP do API Gateway e API de WebSocket usando a AWS CLI
Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com HTTP do API Gateway e API de WebSocket.
Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.
Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.
Tópicos
Ações
O código de exemplo a seguir mostra como usar create-api-mapping.
- AWS CLI
-
Para criar um mapeamento de API para uma API
O exemplo
create-api-mappinga seguir mapeia o estágiotestde uma API para o caminho/myApido nome de domínio personalizadoregional.example.com.aws apigatewayv2 create-api-mapping \ --domain-nameregional.example.com\ --api-mapping-keymyApi\ --api-ida1b2c3d4\ --stagetestSaída:
{ "ApiId": "a1b2c3d4", "ApiMappingId": "0qzs2sy7bh", "ApiMappingKey": "myApi" "Stage": "test" }Para obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte CreateApiMapping
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-api.
- AWS CLI
-
Para criar uma API HTTP
O exemplo
create-apia seguir cria uma API HTTP usando a criação rápida. É possível usar a criação rápida para criar uma API com uma integração do AWS Lambda ou HTTP, uma rota padrão genérica e um estágio padrão configurado para implantar alterações automaticamente. O comando a seguir usa criação rápida para criar uma API HTTP que se integra com uma função do Lambda.aws apigatewayv2 create-api \ --namemy-http-api\ --protocol-typeHTTP\ --targetarn:aws:lambda:us-west-2:123456789012:function:my-lambda-functionSaída:
{ "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 obter mais informações, consulte Desenvolver uma API HTTP no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
Para criar uma API de WebSocket
O exemplo
create-apia seguir cria uma API de WebSocket com o nome especificado.aws apigatewayv2 create-api \ --name"myWebSocketApi"\ --protocol-typeWEBSOCKET\ --route-selection-expression '$request.body.action'Saída:
{ "ApiKeySelectionExpression": "$request.header.x-api-key", "Name": "myWebSocketApi", "CreatedDate": "2018-11-15T06:23:51Z", "ProtocolType": "WEBSOCKET", "RouteSelectionExpression": "'$request.body.action'", "ApiId": "aabbccddee" }Para obter mais informações, consulte Criar uma API de WebSocket no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte CreateApi
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-authorizer.
- AWS CLI
-
Para criar um autorizador JWT para uma API HTTP
O exemplo
create-authorizera seguir cria um autorizador JWT que usa o Amazon Cognito como um provedor de identidade.aws apigatewayv2 create-authorizer \ --namemy-jwt-authorizer\ --api-ida1b2c3d4\ --authorizer-typeJWT\ --identity-source '$request.header.Authorization' \ --jwt-configurationAudience=123456abc,Issuer=https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc123Saída:
{ "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 obter mais informações, consulte Controlar o acesso a APIs HTTP com autorizadores JWT no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte CreateAuthorizer
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-deployment.
- AWS CLI
-
Para criar uma implantação para uma API
O exemplo
create-deploymenta seguir cria uma implantação para uma API e a associa ao estágiodevda API.aws apigatewayv2 create-deployment \ --api-ida1b2c3d4\ --stage-namedevSaída:
{ "AutoDeployed": false, "CreatedDate": "2020-04-06T23:38:08Z", "DeploymentId": "53lz9l", "DeploymentStatus": "DEPLOYED" }Para obter mais informações, consulte Implantação da API no Guia do desenvolvedor do Amazon API Gateway.
-
Para obter detalhes da API, consulte CreateDeployment
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-domain-name.
- AWS CLI
-
Para criar um nome de domínio personalizado
O exemplo
create-domain-namea seguir cria um domínio personalizado regional para uma API.aws apigatewayv2 create-domain-name \ --domain-nameregional.example.com\ --domain-name-configurationsCertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678Saída:
{ "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 obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte CreateDomainName
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-integration.
- AWS CLI
-
Para criar uma integração com a API de WebSocket
O exemplo
create-integrationa seguir cria uma integração simulada para uma API de WebSocket.aws apigatewayv2 create-integration \ --api-idaabbccddee\ --passthrough-behaviorWHEN_NO_MATCH\ --timeout-in-millis29000\ --connection-typeINTERNET\ --integration-typeMOCKSaída:
{ "ConnectionType": "INTERNET", "IntegrationId": "0abcdef", "IntegrationResponseSelectionExpression": "${integration.response.statuscode}", "IntegrationType": "MOCK", "PassthroughBehavior": "WHEN_NO_MATCH", "PayloadFormatVersion": "1.0", "TimeoutInMillis": 29000 }Para obter mais informações, consulte Configurar uma solicitação de integração da API de WebSocket no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
Para criar uma integração da API HTTP
O exemplo
create-integrationa seguir cria uma integração do AWS Lambda para uma API HTTP.aws apigatewayv2 create-integration \ --api-ida1b2c3d4\ --integration-typeAWS_PROXY\ --integration-uriarn:aws:lambda:us-west-2:123456789012:function:my-function\ --payload-format-version2.0Saída:
{ "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 obter mais informações, consulte Configurar o integrações para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte CreateIntegration
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-route.
- AWS CLI
-
Para criar uma rota $default para uma API de WebSocket ou HTTP
O exemplo
create-routea seguir cria uma rota$defaultpara uma API de WebSocket ou HTTP.aws apigatewayv2 create-route \ --api-idaabbccddee\ --route-key '$default'Saída:
{ "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteKey": "$default", "RouteId": "1122334" }Para obter mais informações, consulte Trabalhar com rotas para APIs de WebSocket no Guia do desenvolvedor do Amazon API Gateway.
Para criar uma rota para uma API HTTP
O exemplo
create-routea seguir cria uma rota chamadasignupque aceita solicitações POST.aws apigatewayv2 create-route \ --api-idaabbccddee\ --route-key 'POST /signup'Saída:
{ "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteKey": "POST /signup", "RouteId": "1122334" }Para obter mais informações, consulte Trabalhar com rotas para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway
-
Para ver detalhes da API, consulte CreateRoute
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-routing-rule.
- AWS CLI
-
Como criar uma regra de roteamento
O exemplo
create-routing-rulea seguir cria uma regra de roteamento com uma prioridade de50.aws apigatewayv2 create-routing-rule \ --domain-name 'regional.example.com' \ --priority50\ --conditions '[ \ { \ "MatchBasePaths": { \ "AnyOf": [ \ "PetStoreShopper" \ ] \ } \ } \ ]' \ --actions '[ \ { \ "InvokeApi": { \ "ApiId": "abcd1234", \ "Stage": "prod" \ } \ } \ ]'Saída:
{ "Actions": [ { "InvokeApi": { "ApiId": "abcd1234", "Stage": "prod", "StripBasePath": false } } ], "Conditions": [ { "MatchBasePaths": { "AnyOf": [ "PetStoreShopper" ] } } ], "Priority": 50, "RoutingRuleArn": "arn:aws:apigateway:us-east-2:123456789012:/domainnames/regional.example.com/routingrules/aaa111", "RoutingRuleId": "aaa111" }Para ter mais informações, consulte Regras de roteamento para associar estágios da API a um nome de domínio personalizado para APIs REST no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte CreateRoutingRule
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-stage.
- AWS CLI
-
Para criar um estágio
O exemplo
create-stagea seguir cria um estágio chamado dev para uma API.aws apigatewayv2 create-stage \ --api-ida1b2c3d4\ --stage-namedevSaída:
{ "CreatedDate": "2020-04-06T23:23:46Z", "DefaultRouteSettings": { "DetailedMetricsEnabled": false }, "LastUpdatedDate": "2020-04-06T23:23:46Z", "RouteSettings": {}, "StageName": "dev", "StageVariables": {}, "Tags": {} }Para obter mais informações, consulte Trabalhar com estágios para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte CreateStage
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-vpc-link.
- AWS CLI
-
Para criar um link da VPC para uma API HTTP
O exemplo
create-vpc-linka seguir cria um link da VPC para APIs HTTP.aws apigatewayv2 create-vpc-link \ --nameMyVpcLink\ --subnet-idssubnet-aaaasubnet-bbbb\ --security-group-idssg1234sg5678Saída:
{ "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 obter mais informações, consulte Trabalhar com links da VPC para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte CreateVpcLink
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-access-log-settings.
- AWS CLI
-
Para desativar o registro em log de acesso para uma API
O exemplo
delete-access-log-settingsa seguir exclui as configurações do registro em log de acesso do estágio$defaultde uma API. Para desabilitar o registro de acesso em log de um estágio, exclua as configurações do log de acesso.aws apigatewayv2 delete-access-log-settings \ --api-ida1b2c3d4\ --stage-name '$default'Este comando não produz saída.
Para obter mais informações, consulte Configurar o registros em log para uma API HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteAccessLogSettings
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-api-mapping.
- AWS CLI
-
Para excluir um mapeamento de API
O exemplo
delete-api-mappinga seguir exclui um mapeamento de API do nome de domínio personalizadoapi.example.com.aws apigatewayv2 delete-api-mapping \ --api-mapping-ida1b2c3\ --domain-nameapi.example.comEste comando não produz saída.
Para obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteApiMapping
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-api.
- AWS CLI
-
Como excluir uma API
O exemplo
delete-apia seguir exclui uma API.aws apigatewayv2 delete-api \ --api-ida1b2c3d4Este comando não produz saída.
Para obter mais informações, consulte Trabalhar com APIs HTTP e Trabalhar com APIs de WebSocket no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteApi
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-authorizer.
- AWS CLI
-
Para excluir um autorizador
O exemplo
delete-authorizera seguir exclui um autorizador.aws apigatewayv2 delete-authorizer \ --api-ida1b2c3d4\ --authorizer-ida1b2c3Este comando não produz saída.
Para obter mais informações, consulte Controlar o acesso a APIs HTTP com autorizadores JWT no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteAuthorizer
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-cors-configuration.
- AWS CLI
-
Para excluir a configuração CORS de uma API HTTP
O exemplo
delete-cors-configurationa seguir desabilita o CORS para uma API HTTP excluindo sua configuração de CORS.aws apigatewayv2 delete-cors-configuration \ --api-ida1b2c3d4Este comando não produz saída.
Para obter mais informações, consulte Configurar o CORS para uma API HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteCorsConfiguration
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-deployment.
- AWS CLI
-
Para excluir uma implantação
O exemplo
delete-deploymenta seguir exclui uma implantação de uma API.aws apigatewayv2 delete-deployment \ --api-ida1b2c3d4\ --deployment-ida1b2c3Este comando não produz saída.
Para obter mais informações, consulte Implantação da API no Guia do desenvolvedor do Amazon API Gateway.
-
Para obter detalhes da API, consulte DeleteDeployment
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-domain-name.
- AWS CLI
-
Para excluir um nome de domínio personalizado
O exemplo
delete-domain-namea seguir exclui um nome de domínio personalizado.aws apigatewayv2 delete-domain-name \ --domain-nameapi.example.comEste comando não produz saída.
Para obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteDomainName
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-integration.
- AWS CLI
-
Para excluir uma integração
O exemplo
delete-integrationa seguir exclui uma integração de API.aws apigatewayv2 delete-integration \ --api-ida1b2c3d4\ --integration-ida1b2c3Este comando não produz saída.
Para obter mais informações, consulte Configurar integrações para APIs HTTP e Configurar integrações de APIs de WebSocket no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteIntegration
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-route-settings.
- AWS CLI
-
Para excluir as configurações de rota
O exemplo
delete-route-settingsa seguir exclui as configurações de rota para a rota especificada.aws apigatewayv2 delete-route-settings \ --api-ida1b2c3d4\ --stage-namedev\ --route-key 'GET /pets'Este comando não produz saída.
Para obter mais informações, consulte Trabalhar com rotas para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteRouteSettings
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-route.
- AWS CLI
-
Para excluir uma rota
O exemplo
delete-routea seguir exclui uma rota da API.aws apigatewayv2 delete-route \ --api-ida1b2c3d4\ --route-ida1b2c3Este comando não produz saída.
Para obter mais informações, consulte Trabalhar com rotas para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteRoute
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-routing-rule.
- AWS CLI
-
Como excluir uma regra de roteamento
O exemplo
delete-routing-rulea seguir exclui uma regra de roteamento para um nome de domínio personalizado.aws apigatewayv2 delete-routing-rule \ --domain-name 'regional.example.com' \ --routing-rule-idaaa111Este comando não produz saída.
Para ter mais informações, consulte Regras de roteamento para associar estágios da API a um nome de domínio personalizado para APIs REST no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteRoutingRule
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-stage.
- AWS CLI
-
Para excluir uma estágio
O exemplo
delete-stagea seguir exclui o estágiotestde uma API.aws apigatewayv2 delete-stage \ --api-ida1b2c3d4\ --stage-nametestEste comando não produz saída.
Para obter mais informações, consulte Trabalhar com estágios para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteStage
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-vpc-link.
- AWS CLI
-
Para excluir um link da VPC para uma API HTTP
O exemplo
delete-vpc-linka seguir exclui um link da VPC.aws apigatewayv2 delete-vpc-link \ --vpc-link-idabcd123Este comando não produz saída.
Para obter mais informações, consulte Trabalhar com links da VPC para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte DeleteVpcLink
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar export-api.
- AWS CLI
-
Para exportar uma definição do OpenAPI de uma API HTTP
O exemplo
export-apia seguir exporta uma definição do OpenAPI 3.0 de um estágio de API chamadoprodpara um arquivo YAML denominadostage-definition.yaml. O arquivo de definição exportado inclui extensões do API Gateway por padrão.aws apigatewayv2 export-api \ --api-ida1b2c3d4\ --output-typeYAML\ --specificationOAS30\ --stage-nameprod\stage-definition.yamlEste comando não produz saída.
Para obter mais informações, consulte Exportar uma API HTTP do API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte ExportApi
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-api-mapping.
- AWS CLI
-
Para obter informações sobre um mapeamento de API para um nome de domínio personalizado
O exemplo
get-api-mappinga seguir exibe informações sobre um mapeamento de API para o nome de domínio personalizadoapi.example.com.aws apigatewayv2 get-api-mapping \ --api-mapping-ida1b2c3\ --domain-nameapi.example.comSaída:
{ "ApiId": "a1b2c3d4", "ApiMappingId": "a1b2c3d5", "ApiMappingKey": "myTestApi" "Stage": "test" }Para obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetApiMapping
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-api-mappings.
- AWS CLI
-
Para obter mapeamentos de API para um nome de domínio personalizado
O exemplo
get-api-mappingsa seguir exibe uma lista de todos os mapeamentos de API para o nome de domínio personalizadoapi.example.com.aws apigatewayv2 get-api-mappings \ --domain-nameapi.example.comSaída:
{ "Items": [ { "ApiId": "a1b2c3d4", "ApiMappingId": "a1b2c3d5", "ApiMappingKey": "myTestApi" "Stage": "test" }, { "ApiId": "a5b6c7d8", "ApiMappingId": "a1b2c3d6", "ApiMappingKey": "myDevApi" "Stage": "dev" }, ] }Para obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetApiMappings
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-api.
- AWS CLI
-
Para recuperar informações sobre uma API
O exemplo
get-apia seguir exibe informações sobre uma API.aws apigatewayv2 get-api \ --api-ida1b2c3d4Saída:
{ "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 ver detalhes da API, consulte GetApi
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-apis.
- AWS CLI
-
Para recuperar uma lista de APIs
O exemplo
get-apisa seguir lista todas as APIs do usuário atual.aws apigatewayv2 get-apisSaída:
{ "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 obter mais informações, consulte Trabalhar com APIs HTTP e Trabalhar com APIs de WebSocket no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetApis
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-authorizer.
- AWS CLI
-
Para recuperar informações sobre um autorizador
O exemplo
get-authorizera seguir exibe informações detalhadas sobre um autorizador.aws apigatewayv2 get-authorizer \ --api-ida1b2c3d4\ --authorizer-ida1b2c3Saída:
{ "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 obter mais informações, consulte Controlar o acesso a APIs HTTP com autorizadores JWT no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetAuthorizer
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-authorizers.
- AWS CLI
-
Para recuperar uma lista de autorizadores de uma API
O exemplo
get-authorizersa seguir exibe uma lista de todos os autorizadores de uma API.aws apigatewayv2 get-authorizers \ --api-ida1b2c3d4Saída:
{ "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 obter mais informações, consulte Controlar o acesso a APIs HTTP com autorizadores JWT no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetAuthorizers
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-deployment.
- AWS CLI
-
Para recuperar informações sobre uma implantação
O exemplo
get-deploymenta seguir exibe informações sobre uma implantação.aws apigatewayv2 get-deployment \ --api-ida1b2c3d4\ --deployment-idabcdefSaída:
{ "AutoDeployed": true, "CreatedDate": "2020-04-07T23:58:40Z", "DeploymentId": "abcdef", "DeploymentStatus": "DEPLOYED", "Description": "Automatic deployment triggered by changes to the Api configuration" }Para obter mais informações, consulte Implantação da API no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetDeployment
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-deployments.
- AWS CLI
-
Para recuperar uma lista de implantações
O exemplo
get-deploymentsa seguir exibe uma lista de todas as implantações de uma API.aws apigatewayv2 get-deployments \ --api-ida1b2c3d4Saída:
{ "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 obter mais informações, consulte Implantação da API no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetDeployments
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-domain-name.
- AWS CLI
-
Para recuperar informações sobre um nome de domínio personalizado
O exemplo
get-domain-namea seguir exibe informações sobre um nome de domínio personalizado.aws apigatewayv2 get-domain-name \ --domain-nameapi.example.comSaída:
{ "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 obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetDomainName
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-domain-names.
- AWS CLI
-
Para recuperar uma lista de nomes de domínio personalizados
O exemplo
get-domain-namesa seguir exibe uma lista de todos os nomes de domínio personalizados do usuário atual.aws apigatewayv2 get-domain-namesSaída:
{ "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 obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetDomainNames
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-integration.
- AWS CLI
-
Para recuperar informações sobre uma integração
O exemplo
get-integrationa seguir mostra informações sobre uma integração.aws apigatewayv2 get-integration \ --api-ida1b2c3d4\ --integration-ida1b2c3Saída:
{ "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 obter mais informações, consulte Configurar integrações para APIs HTTP e Configurar integrações de APIs de WebSocket no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetIntegration
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-integrations.
- AWS CLI
-
Para recuperar uma lista de integrações
O exemplo
get-integrationsa seguir exibe uma lista de todas as integrações de uma API.aws apigatewayv2 get-integrations \ --api-ida1b2c3d4Saída:
{ "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 obter mais informações, consulte Configurar integrações para APIs HTTP e Configurar integrações de APIs de WebSocket no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetIntegrations
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-route.
- AWS CLI
-
Para recuperar informações sobre uma rota
O exemplo
get-routea seguir exibe informações sobre uma rota.aws apigatewayv2 get-route \ --api-ida1b2c3d4\ --route-id72jz1wkSaída:
{ "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteId": "72jz1wk", "RouteKey": "ANY /pets", "Target": "integrations/a1b2c3" }Para obter mais informações, consulte Trabalhar com rotas para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway
-
Para ver detalhes da API, consulte GetRoute
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-routes.
- AWS CLI
-
Para recuperar uma lista de rotas
O exemplo
get-routesa seguir exibe uma lista de todas as rotas de uma API.aws apigatewayv2 get-routes \ --api-ida1b2c3d4Saída:
{ "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 obter mais informações, consulte Trabalhar com rotas para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway
-
Para ver detalhes da API, consulte GetRoutes
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-routing-rule.
- AWS CLI
-
Como obter uma regra de roteamento
O exemplo
get-routing-rulea seguir obtém uma regra de roteamento para um nome de domínio.aws apigatewayv2 get-routing-rule \ --domain-name 'regional.example.com' \ --routing-rule-idaaa111Saída:
{ "Actions": [ { "InvokeApi": { "ApiId": "abcd1234", "Stage": "prod", "StripBasePath": false } } ], "Conditions": [ { "MatchBasePaths": { "AnyOf": [ "PetStoreShopper" ] } } ], "Priority": 50, "RoutingRuleArn": "arn:aws:apigateway:us-east-2:123456789012:/domainnames/regional.example.com/routingrules/aaa111", "RoutingRuleId": "aaa111" }Para ter mais informações, consulte Regras de roteamento para associar estágios da API a um nome de domínio personalizado para APIs REST no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetRoutingRule
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-stage.
- AWS CLI
-
Para recuperar informações sobre um estágio
O exemplo
get-stagea seguir mostra informações sobre o estágioprodde uma API.aws apigatewayv2 get-stage \ --api-ida1b2c3d4\ --stage-nameprodSaída:
{ "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 obter mais informações, consulte Trabalhar com estágios para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetStage
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-stages.
- AWS CLI
-
Para recuperar uma lista de estágios
O exemplo
get-stagesa seguir lista todos os estágios de uma API.aws apigatewayv2 get-stages \ --api-ida1b2c3d4Saída:
{ "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 obter mais informações, consulte Trabalhar com estágios para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetStages
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-tags.
- AWS CLI
-
Para recuperar uma lista de tags de um recurso
O exemplo
get-tagsa seguir lista todas as tags de uma API.aws apigatewayv2 get-tags \ --resource-arnarn:aws:apigateway:us-west-2::/apis/a1b2c3d4Saída:
{ "Tags": { "owner": "dev-team", "environment": "prod" } }Para obter mais informações, consulte Marcar recursos do API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetTags
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-vpc-link.
- AWS CLI
-
Para recuperar informações sobre um link da VPC
O exemplo
get-vpc-linka seguir exibe informações sobre um link da VPC.aws apigatewayv2 get-vpc-link \ --vpc-link-idabcd123Saída:
{ "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 obter mais informações, consulte Trabalhar com links da VPC para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetVpcLink
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-vpc-links.
- AWS CLI
-
Para recuperar uma lista de links da VPC
O exemplo
get-vpc-linksa seguir exibe uma lista de todos os links da VPC do usuário atual.aws apigatewayv2 get-vpc-linksSaída:
{ "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 obter mais informações, consulte Trabalhar com links da VPC para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte GetVpcLinks
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar import-api.
- AWS CLI
-
Para importar uma API HTTP
O exemplo
import-apia seguir cria uma API HTTP a partir de um arquivo de definição da OpenAPI 3.0 denominadoapi-definition.yaml.aws apigatewayv2 import-api \ --bodyfile://api-definition.yamlConteúdo 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: INTERNETSaída:
{ "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 obter mais informações, consulte Trabalhar com definições da OpenAPI para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte ImportApi
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar list-routing-rules.
- AWS CLI
-
Como listar regras de roteamento
O exemplo
list-routing-rulesa seguir lista as regras de roteamento para um nome de domínio.aws apigatewayv2 list-routing-rules \ --domain-name 'regional.example.com'Saída:
{ "RoutingRules": [ { "Actions": [ { "InvokeApi": { "ApiId": "abcd1234", "Stage": "prod", "StripBasePath": false } } ], "Conditions": [ { "MatchBasePaths": { "AnyOf": [ "PetStoreShopper" ] } } ], "Priority": 150, "RoutingRuleArn": "arn:aws:apigateway:us-east-1:123456789012:/domainnames/regional.example.com/routingrules/aaa111", "RoutingRuleId": "aaa111" } ] }Para ter mais informações, consulte Regras de roteamento para associar estágios da API a um nome de domínio personalizado para APIs REST no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte ListRoutingRules
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar put-routing-rule.
- AWS CLI
-
Como atualizar uma regra de roteamento
O exemplo
put-routing-rulea seguir atualiza a prioridade de uma regra de roteamento.aws apigatewayv2 put-routing-rule \ --domain-name 'regional.example.com' \ --priority150\ --conditions '[ \ { \ "MatchBasePaths": { \ "AnyOf": [ \ "PetStoreShopper" \ ] \ } \ } \ ]' \ --actions '[ \ { \ "InvokeApi": { \ "ApiId": "abcd1234", \ "Stage": "prod" \ } \ } \ ]'Saída:
{ "Actions": [ { "InvokeApi": { "ApiId": "abcd1234", "Stage": "prod", "StripBasePath": false } } ], "Conditions": [ { "MatchBasePaths": { "AnyOf": [ "PetStoreShopper" ] } } ], "Priority": 150, "RoutingRuleArn": "arn:aws:apigateway:us-east-2:123456789012:/domainnames/regional.example.com/routingrules/aaa111", "RoutingRuleId": "aaa111" }Para ter mais informações, consulte Regras de roteamento para associar estágios da API a um nome de domínio personalizado para APIs REST no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte PutRoutingRule
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar reimport-api.
- AWS CLI
-
Para reimportar uma API HTTP
O exemplo
reimport-apia seguir atualiza uma API HTTP existente para usar a definição da OpenAPI 3.0 especificada emapi-definition.yaml.aws apigatewayv2 reimport-api \ --bodyfile://api-definition.yaml\ --api-ida1b2c3d4Conteúdo 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: INTERNETSaída:
{ "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 obter mais informações, consulte Trabalhar com definições da OpenAPI para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte ReimportApi
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar tag-resource.
- AWS CLI
-
Como marcar um recurso
O exemplo
tag-resourcea seguir adiciona uma tag com o nome de chaveDepartmente um valor deAccountingà API especificada.aws apigatewayv2 tag-resource \ --resource-arnarn:aws:apigateway:us-west-2::/apis/a1b2c3d4\ --tagsDepartment=AccountingEste comando não produz saída.
Para obter mais informações, consulte Marcar recursos do API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para obter detalhes da API, consulte TagResource
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar untag-resource.
- AWS CLI
-
Como remover as tags de um recurso
O exemplo
untag-resourcea seguir remove as tags com os nomes das chavesProjecteOwnerda API especificada.aws apigatewayv2 untag-resource \ --resource-arnarn:aws:apigateway:us-west-2::/apis/a1b2c3d4\ --tag-keysProjectOwnerEste comando não produz saída.
Para obter mais informações, consulte Marcar recursos do API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para obter detalhes sobre a API, consulte UntagResource
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-api-mapping.
- AWS CLI
-
Para criar um mapeamento de API
O exemplo
update-api-mappinga seguir altera um mapeamento de API de um nome de domínio personalizado. Como resultado, a URL base usando o nome de domínio personalizado para a API e estágio especificados se tornahttps://api.example.com/dev.aws apigatewayv2 update-api-mapping \ --api-ida1b2c3d4\ --stagedev\ --domain-nameapi.example.com\ --api-mapping-id0qzs2sy7bh\ --api-mapping-keydevSaída:
{ "ApiId": "a1b2c3d4", "ApiMappingId": "0qzs2sy7bh", "ApiMappingKey": "dev" "Stage": "dev" }Para obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateApiMapping
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-api.
- AWS CLI
-
Para habilitar o CORS para uma API HTTP
O exemplo
update-apia seguir atualiza a configuração CORS da API especificada para permitir solicitações dehttps://www.example.com.aws apigatewayv2 update-api \ --api-ida1b2c3d4\ --cors-configurationAllowOrigins=https://www.example.comSaída:
{ "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 obter mais informações, consulte Configurar o CORS para uma API HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateApi
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-authorizer.
- AWS CLI
-
Para atualizar um autorizador
O exemplo
update-authorizera seguir altera a fonte de identidade de um autorizador do JWT para um cabeçalho chamadoAuthorization.aws apigatewayv2 update-authorizer \ --api-ida1b2c3d4\ --authorizer-ida1b2c3\ --identity-source '$request.header.Authorization'Saída:
{ "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 obter mais informações, consulte Controlar o acesso a APIs HTTP com autorizadores JWT no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateAuthorizer
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-deployment.
- AWS CLI
-
Para alterar a descrição de uma implantação
O exemplo
update-deploymenta seguir atualiza a descrição de uma implantação.aws apigatewayv2 update-deployment \ --api-ida1b2c3d4\ --deployment-idabcdef\ --description 'Manual deployment to fix integration test failures.'Saída:
{ "AutoDeployed": false, "CreatedDate": "2020-02-05T16:21:48+00:00", "DeploymentId": "abcdef", "DeploymentStatus": "DEPLOYED", "Description": "Manual deployment to fix integration test failures." }Para obter mais informações, consulte Desenvolver uma API HTTP no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateDeployment
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-domain-name.
- AWS CLI
-
Para atualizar um nome de domínio personalizado
O exemplo
update-domain-namea seguir especifica um novo certificado ACM para o nome de domínio personalizadoapi.example.com.aws apigatewayv2 update-domain-name \ --domain-nameapi.example.com\ --domain-name-configurationsCertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/123456789012-1234-1234-1234-12345678Saída:
{ "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 obter mais informações, consulte Configurar um nome de domínio personalizado regional no API Gateway no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateDomainName
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-integration.
- AWS CLI
-
Para atualizar uma integração com o Lambda
O exemplo
update-integrationa seguir atualiza uma integração existente do AWS Lambda para usar a função do Lambda especificada.aws apigatewayv2 update-integration \ --api-ida1b2c3d4\ --integration-ida1b2c3\ --integration-uriarn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:my-new-function/invocationsSaída:
{ "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 obter mais informações, consulte Configurar integrações para APIs HTTP e Configurar integrações de APIs de WebSocket no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateIntegration
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-route.
- AWS CLI
-
Exemplo 1: atualizar a integração de uma rota
O exemplo
update-routea seguir atualiza a integração de uma rota especificada.aws apigatewayv2 update-route \ --api-ida1b2c3d4\ --route-ida1b2c3\ --targetintegrations/a1b2c6Saída:
{ "ApiKeyRequired": false, "AuthorizationType": "NONE", "RouteId": "a1b2c3", "RouteKey": "ANY /pets", "Target": "integrations/a1b2c6" }Exemplo 2: adicionar um autorizador a uma rota
O exemplo
update-routea seguir atualiza uma rota para usar um autorizador JWT.aws apigatewayv2 update-route \ --api-ida1b2c3d4\ --route-ida1b2c3\ --authorization-typeJWT\ --authorizer-ida1b2c5\ --authorization-scopesuser.iduser.emailSaída:
{ "ApiKeyRequired": false, "AuthorizationScopes": [ "user.id", "user.email" ], "AuthorizationType": "JWT", "AuthorizerId": "a1b2c5", "OperationName": "GET HTTP", "RequestParameters": {}, "RouteId": "a1b2c3", "RouteKey": "GET /pets", "Target": "integrations/a1b2c6" }Para obter mais informações, consulte Controlar o acesso a APIs HTTP com autorizadores JWT no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateRoute
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-stage.
- AWS CLI
-
Como configurar o controle de utilização personalizado
O exemplo
update-stagea seguir configura o controle de utilização personalizado para o estágio especificado e a rota de uma API.aws apigatewayv2 update-stage \ --api-ida1b2c3d4\ --stage-namedev\ --route-settings '{"GET /pets":{"ThrottlingBurstLimit":100,"ThrottlingRateLimit":2000}}'Saída:
{ "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 obter mais informações, consulte Proteger sua API HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateStage
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-vpc-link.
- AWS CLI
-
Para atualizar um link da VPC
O exemplo
update-vpc-linka seguir atualiza o nome de um link da VPC. Depois de criar um link de VPC, você não pode alterar seus grupos de segurança ou sub-redes.aws apigatewayv2 update-vpc-link \ --vpc-link-idabcd123\ --nameMyUpdatedVpcLinkSaída:
{ "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 obter mais informações, consulte Trabalhar com links da VPC para APIs HTTP no Guia do desenvolvedor do Amazon API Gateway.
-
Para ver detalhes da API, consulte UpdateVpcLink
na Referência de comandos da AWS CLI.
-