View a markdown version of this page

Contoh HTTP dan API Gateway WebSocket API menggunakan AWS CLI - AWS Command Line Interface

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Contoh HTTP dan API Gateway WebSocket API menggunakan AWS CLI

Contoh kode berikut menunjukkan cara melakukan tindakan dan mengimplementasikan skenario umum dengan menggunakan AWS Command Line Interface dengan API Gateway HTTP dan WebSocket API.

Tindakan merupakan kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.

Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.

Tindakan

Contoh kode berikut menunjukkan cara menggunakancreate-api-mapping.

AWS CLI

Untuk membuat pemetaan API untuk API

create-api-mappingContoh berikut memet test akan tahap API ke /myApi jalur nama domain ku regional.example.com stom.

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

Output:

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

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakancreate-api.

AWS CLI

Untuk membuat API HTTP

create-apiContoh berikut membuat HTTP API dengan menggunakan quick create. Anda dapat menggunakan quick create untuk membuat API dengan integrasi AWS Lambda atau HTTP, rute catch-all default, dan tahap default yang dikonfigurasi untuk menerapkan perubahan secara otomatis. Perintah berikut menggunakan quick create untuk membuat HTTP API yang terintegrasi dengan fungsi Lambda.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengembangkan API HTTP di API Gateway di Panduan Pengembang Amazon API Gateway.

Untuk membuat WebSocket API

create-apiContoh berikut membuat WebSocket API dengan nama yang ditentukan.

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

Output:

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

Untuk informasi selengkapnya, lihat Membuat WebSocket API di API Gateway di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat CreateApi di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakancreate-authorizer.

AWS CLI

Untuk membuat otorisasi JWT untuk API HTTP

create-authorizerContoh berikut membuat otorisasi JWT yang menggunakan Amazon Cognito sebagai penyedia identitas.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengontrol akses ke API HTTP dengan otorisasi JWT di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakancreate-deployment.

AWS CLI

Untuk membuat penerapan untuk API

create-deploymentContoh berikut membuat penerapan untuk API dan mengaitkan penerapan tersebut dengan dev tahap API.

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

Output:

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

Untuk informasi selengkapnya, lihat Penerapan API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakancreate-domain-name.

AWS CLI

Untuk membuat nama domain khusus

create-domain-nameContoh berikut membuat nama domain kustom regional untuk API.

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

Output:

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

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakancreate-integration.

AWS CLI

Untuk membuat integrasi WebSocket API

create-integrationContoh berikut membuat integrasi tiruan untuk WebSocket API.

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

Output:

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

Untuk informasi selengkapnya, lihat Menyi apkan permintaan integrasi WebSocket API di API Gateway di Panduan Pengembang Amazon API Gateway.

Untuk membuat integrasi API HTTP

create-integrationContoh berikut membuat integrasi AWS Lambda untuk API HTTP.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengonfigurasi integrasi untuk API HTTP di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakancreate-route.

AWS CLI

Untuk membuat rute $default untuk API WebSocket atau HTTP

create-routeContoh berikut membuat $default rute untuk API WebSocket atau HTTP.

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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan rute untuk WebSocket API di Panduan Pengembang Amazon API Gateway

Untuk membuat rute untuk API HTTP

create-routeContoh berikut membuat rute bernama signup yang menerima permintaan POST.

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

Output:

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

Untuk informasi selengkapnya, lihat Bek erja dengan rute untuk API HTTP di Panduan Pengembang Amazon API Gateway

  • Untuk detail API, lihat CreateRoute di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakancreate-routing-rule.

AWS CLI

Untuk membuat aturan perutean

create-routing-ruleContoh berikut membuat aturan routing dengan prioritas50.

aws apigatewayv2 create-routing-rule \ --domain-name 'regional.example.com' \ --priority 50 \ --conditions '[ \ { \ "MatchBasePaths": { \ "AnyOf": [ \ "PetStoreShopper" \ ] \ } \ } \ ]' \ --actions '[ \ { \ "InvokeApi": { \ "ApiId": "abcd1234", \ "Stage": "prod" \ } \ } \ ]'

Output:

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

Untuk informasi selengkapnya, lihat Aturan perutean untuk menghubungkan tahapan API ke nama domain khusus untuk REST API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakancreate-stage.

AWS CLI

Untuk membuat panggung

create-stageContoh berikut membuat tahap bernama dev untuk API.

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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan tahapan untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat CreateStage di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakancreate-vpc-link.

AWS CLI

Untuk membuat tautan VPC untuk API HTTP

create-vpc-linkContoh berikut membuat tautan VPC untuk API HTTP.

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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan tautan VPC untuk API HTTP di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-access-log-settings.

AWS CLI

Untuk menonaktifkan logging akses untuk API

delete-access-log-settingsContoh berikut menghapus pengaturan log akses untuk $default tahap API. Untuk menonaktifkan logging akses untuk tahap, hapus pengaturan log aksesnya.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Mengonfigurasi logging untuk API HTTP di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-api-mapping.

AWS CLI

Untuk menghapus pemetaan API

delete-api-mappingContoh berikut menghapus pemetaan API untuk nama domain ku api.example.com stom.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-api.

AWS CLI

Untuk menghapus API

delete-apiContoh berikut menghapus API.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Bekerja dengan API HTTP dan Bekerja dengan WebSocket API di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat DeleteApi di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakandelete-authorizer.

AWS CLI

Untuk menghapus otorisasi

delete-authorizerContoh berikut menghapus otorizer.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Mengontrol akses ke API HTTP dengan otorisasi JWT di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-cors-configuration.

AWS CLI

Untuk menghapus konfigurasi CORS untuk API HTTP

delete-cors-configurationContoh berikut menonaktifkan CORS untuk HTTP API dengan menghapus konfigurasi CORS-nya.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Mengonfigurasi CORS untuk API HTTP di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-deployment.

AWS CLI

Untuk menghapus penerapan

delete-deploymentContoh berikut menghapus penerapan API.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Penerapan API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-domain-name.

AWS CLI

Untuk menghapus nama domain khusus

delete-domain-nameContoh berikut menghapus nama domain khusus.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-integration.

AWS CLI

Untuk menghapus integrasi

delete-integrationContoh berikut menghapus integrasi API.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Mengonfigurasi integrasi untuk API HTTP dan Menyiapkan integrasi WebSocket API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-route-settings.

AWS CLI

Untuk menghapus pengaturan rute

delete-route-settingsContoh berikut menghapus pengaturan rute untuk rute yang ditentukan.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Bek erja dengan rute untuk API HTTP di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-route.

AWS CLI

Untuk menghapus rute

delete-routeContoh berikut menghapus rute API.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Bek erja dengan rute untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat DeleteRoute di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakandelete-routing-rule.

AWS CLI

Untuk menghapus aturan perutean

delete-routing-ruleContoh berikut menghapus aturan routing untuk nama domain kustom.

aws apigatewayv2 delete-routing-rule \ --domain-name 'regional.example.com' \ --routing-rule-id aaa111

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Aturan perutean untuk menghubungkan tahapan API ke nama domain khusus untuk REST API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakandelete-stage.

AWS CLI

Untuk menghapus panggung

delete-stageContoh berikut menghapus test tahap API.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Bekerja dengan tahapan untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat DeleteStage di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakandelete-vpc-link.

AWS CLI

Untuk menghapus tautan VPC untuk API HTTP

delete-vpc-linkContoh berikut menghapus tautan VPC.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Bekerja dengan tautan VPC untuk API HTTP di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanexport-api.

AWS CLI

Untuk mengekspor definisi OpenAPI dari API HTTP

export-apiContoh berikut mengekspor definisi OpenAPI 3.0 dari tahap API bernama prod ke file YAML bernama. stage-definition.yaml File definisi yang diekspor menyertakan ekstensi API Gateway secara default.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Meng ekspor API HTTP dari API Gateway di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat ExportApi di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-api-mapping.

AWS CLI

Untuk mendapatkan informasi tentang pemetaan API untuk nama domain khusus

get-api-mappingContoh berikut menampilkan informasi tentang pemetaan API untuk nama domain api.example.com kustom.

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

Output:

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

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-api-mappings.

AWS CLI

Untuk mendapatkan pemetaan API untuk nama domain khusus

get-api-mappingsContoh berikut menampilkan daftar semua pemetaan API untuk nama domain ku api.example.com stom.

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

Output:

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

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-api.

AWS CLI

Untuk mengambil informasi tentang API

get-apiContoh berikut menampilkan informasi tentang API.

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

Output:

{ "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" } }
  • Untuk detail API, lihat GetApi di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-apis.

AWS CLI

Untuk mengambil daftar API

get-apisContoh berikut mencantumkan semua API untuk pengguna saat ini.

aws apigatewayv2 get-apis

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan API HTTP dan Bekerja dengan WebSocket API di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat GetApis di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-authorizer.

AWS CLI

Untuk mengambil informasi tentang otorisasi

get-authorizerContoh berikut menampilkan informasi tentang otorizer.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengontrol akses ke API HTTP dengan otorisasi JWT di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-authorizers.

AWS CLI

Untuk mengambil daftar otorisasi untuk API

get-authorizersContoh berikut menampilkan daftar semua otorisasi untuk API.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengontrol akses ke API HTTP dengan otorisasi JWT di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-deployment.

AWS CLI

Untuk mengambil informasi tentang penerapan

get-deploymentContoh berikut menampilkan informasi tentang penerapan.

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

Output:

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

Untuk informasi selengkapnya, lihat Penerapan API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-deployments.

AWS CLI

Untuk mengambil daftar penerapan

get-deploymentsContoh berikut menampilkan daftar semua penerapan API.

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

Output:

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

Untuk informasi selengkapnya, lihat Penerapan API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-domain-name.

AWS CLI

Untuk mengambil informasi tentang nama domain khusus

get-domain-nameContoh berikut menampilkan informasi tentang nama domain kustom.

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

Output:

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

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-domain-names.

AWS CLI

Untuk mengambil daftar nama domain khusus

get-domain-namesContoh berikut menampilkan daftar semua nama domain kustom untuk pengguna saat ini.

aws apigatewayv2 get-domain-names

Output:

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

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-integration.

AWS CLI

Untuk mengambil informasi tentang integrasi

get-integrationContoh berikut menampilkan informasi tentang integrasi.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengonfigurasi integrasi untuk API HTTP dan Menyiapkan integrasi WebSocket API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-integrations.

AWS CLI

Untuk mengambil daftar integrasi

get-integrationsContoh berikut menampilkan daftar semua integrasi API.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengonfigurasi integrasi untuk API HTTP dan Menyiapkan integrasi WebSocket API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-route.

AWS CLI

Untuk mengambil informasi tentang rute

get-routeContoh berikut menampilkan informasi tentang rute.

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

Output:

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

Untuk informasi selengkapnya, lihat Bek erja dengan rute untuk API HTTP di Panduan Pengembang Amazon API Gateway

  • Untuk detail API, lihat GetRoute di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-routes.

AWS CLI

Untuk mengambil daftar rute

get-routesContoh berikut menampilkan daftar semua rute API.

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

Output:

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

Untuk informasi selengkapnya, lihat Bek erja dengan rute untuk API HTTP di Panduan Pengembang Amazon API Gateway

  • Untuk detail API, lihat GetRoutes di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-routing-rule.

AWS CLI

Untuk mendapatkan aturan perutean

get-routing-ruleContoh berikut mendapatkan aturan routing untuk nama domain.

aws apigatewayv2 get-routing-rule \ --domain-name 'regional.example.com' \ --routing-rule-id aaa111

Output:

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

Untuk informasi selengkapnya, lihat Aturan perutean untuk menghubungkan tahapan API ke nama domain khusus untuk REST API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanget-stage.

AWS CLI

Untuk mengambil informasi tentang panggung

get-stageContoh berikut menampilkan informasi tentang prod tahap API.

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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan tahapan untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat GetStage di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-stages.

AWS CLI

Untuk mengambil daftar tahapan

get-stagesContoh berikut mencantumkan semua tahapan API.

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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan tahapan untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat GetStages di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-tags.

AWS CLI

Untuk mengambil daftar tag untuk sumber daya

get-tagsContoh berikut mencantumkan semua tag API.

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

Output:

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

Untuk informasi selengkapnya, lihat Menandai sumber daya API Gateway Anda di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat GetTags di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-vpc-link.

AWS CLI

Untuk mengambil informasi tentang tautan VPC

get-vpc-linkContoh berikut menampilkan informasi tentang tautan VPC.

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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan tautan VPC untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat GetVpcLink di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanget-vpc-links.

AWS CLI

Untuk mengambil daftar tautan VPC

get-vpc-linksContoh berikut menampilkan daftar semua tautan VPC untuk pengguna saat ini.

aws apigatewayv2 get-vpc-links

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan tautan VPC untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat GetVpcLinks di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanimport-api.

AWS CLI

Untuk mengimpor API HTTP

import-apiContoh berikut membuat HTTP API dari file definisi OpenAPI 3.0 bernamaapi-definition.yaml.

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

Isi dari 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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan definisi OpenAPI untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat ImportApi di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanlist-routing-rules.

AWS CLI

Untuk membuat daftar aturan perutean

list-routing-rulesContoh berikut mencantumkan aturan routing untuk nama domain.

aws apigatewayv2 list-routing-rules \ --domain-name 'regional.example.com'

Output:

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

Untuk informasi selengkapnya, lihat Aturan perutean untuk menghubungkan tahapan API ke nama domain khusus untuk REST API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanput-routing-rule.

AWS CLI

Untuk memperbarui aturan perutean

put-routing-ruleContoh berikut memperbarui prioritas aturan routing.

aws apigatewayv2 put-routing-rule \ --routing-rule-id 'aaa111' \ --domain-name 'regional.example.com' \ --priority 150 \ --conditions '[ \ { \ "MatchBasePaths": { \ "AnyOf": [ \ "PetStoreShopper" \ ] \ } \ } \ ]' \ --actions '[ \ { \ "InvokeApi": { \ "ApiId": "abcd1234", \ "Stage": "prod" \ } \ } \ ]'

Output:

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

Untuk informasi selengkapnya, lihat Aturan perutean untuk menghubungkan tahapan API ke nama domain khusus untuk REST API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanreimport-api.

AWS CLI

Untuk mengimpor ulang API HTTP

reimport-apiContoh berikut memperbarui HTTP API yang ada untuk menggunakan definisi OpenAPI 3.0 yang ditentukan dalamapi-definition.yaml.

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

Isi dari 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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan definisi OpenAPI untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat ReimportApi di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakantag-resource.

AWS CLI

Untuk menandai sumber daya

tag-resourceContoh berikut menambahkan tag dengan nama kunci Department dan nilai Accounting ke API yang ditentukan.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Menandai sumber daya API Gateway Anda di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat TagResource di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanuntag-resource.

AWS CLI

Untuk menghapus tag dari sumber daya

untag-resourceContoh berikut menghapus tag dengan nama kunci Project dan Owner dari API yang ditentukan.

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

Perintah ini tidak menghasilkan output.

Untuk informasi selengkapnya, lihat Menandai sumber daya API Gateway Anda di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanupdate-api-mapping.

AWS CLI

Untuk memperbarui pemetaan API

update-api-mappingContoh berikut mengubah pemetaan API untuk nama domain kustom. Akibatnya, URL dasar menggunakan nama domain khusus untuk API dan tahap yang ditentukan menjadihttps://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

Output:

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

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanupdate-api.

AWS CLI

Untuk mengaktifkan CORS untuk API HTTP

update-apiContoh berikut memperbarui konfigurasi CORS API yang ditentukan untuk mengizinkan permintaan darihttps://www.example.com.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengonfigurasi CORS untuk API HTTP di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat UpdateApi di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanupdate-authorizer.

AWS CLI

Untuk memperbarui otorisasi

update-authorizerContoh berikut mengubah sumber identitas otorizer JWT menjadi header bernama. Authorization

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

Output:

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

Untuk informasi selengkapnya, lihat Mengontrol akses ke API HTTP dengan otorisasi JWT di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanupdate-deployment.

AWS CLI

Untuk mengubah deskripsi penerapan

update-deploymentContoh berikut memperbarui deskripsi penerapan.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengembangkan API HTTP di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanupdate-domain-name.

AWS CLI

Untuk memperbarui nama domain khusus

update-domain-nameContoh berikut menentukan sertifikat ACM baru untuk nama domain ku api.example.com stom.

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

Output:

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

Untuk informasi selengkapnya, lihat Men yiapkan nama domain kustom regional di API Gateway di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanupdate-integration.

AWS CLI

Untuk memperbarui integrasi Lambda

update-integrationContoh berikut memperbarui integrasi AWS Lambda yang ada untuk menggunakan fungsi Lambda yang ditentukan.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengonfigurasi integrasi untuk API HTTP dan Menyiapkan integrasi WebSocket API di Panduan Pengembang Amazon API Gateway.

Contoh kode berikut menunjukkan cara menggunakanupdate-route.

AWS CLI

Contoh 1: Untuk memperbarui integrasi rute

update-routeContoh berikut memperbarui integrasi rute tertentu.

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

Output:

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

Contoh 2: Untuk menambahkan otorisasi ke rute

update-routeContoh berikut memperbarui rute yang ditentukan untuk menggunakan otorizer JWT.

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

Output:

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

Untuk informasi selengkapnya, lihat Mengontrol akses ke API HTTP dengan otorisasi JWT di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat UpdateRoute di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanupdate-stage.

AWS CLI

Untuk mengkonfigurasi pelambatan khusus

update-stageContoh berikut mengonfigurasi pelambatan khusus untuk tahap dan rute API yang ditentukan.

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

Output:

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

Untuk informasi selengkapnya, lihat Melindungi HTTP API Anda di Panduan Pengembang Amazon API Gateway.

  • Untuk detail API, lihat UpdateStage di Refer AWS CLI ensi Perintah.

Contoh kode berikut menunjukkan cara menggunakanupdate-vpc-link.

AWS CLI

Untuk memperbarui tautan VPC

update-vpc-linkContoh berikut memperbarui nama tautan VPC. Setelah membuat tautan VPC, Anda tidak dapat mengubah grup keamanan atau subnetnya.

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

Output:

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

Untuk informasi selengkapnya, lihat Bekerja dengan tautan VPC untuk API HTTP di Panduan Pengembang Amazon API Gateway.