APIEsempi di gateway che utilizzano AWS CLI - Esempi di codice dell'AWS SDK

Ci sono altri AWS SDK esempi disponibili nel repository AWS Doc SDK Examples GitHub .

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

APIEsempi di gateway che utilizzano AWS CLI

I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface with API Gateway.

Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni di servizio, è possibile visualizzare le azioni nel contesto negli scenari correlati.

Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Azioni

Il seguente esempio di codice mostra come utilizzarecreate-api-key.

AWS CLI

Per creare una API chiave abilitata per uno Stage esistente API

Comando:

aws apigateway create-api-key --name 'Dev API Key' --description 'Used for development' --enabled --stage-keys restApiId='a1b2c3d4e5',stageName='dev'
  • Per API i dettagli, vedere CreateApiKeyin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarecreate-authorizer.

AWS CLI

Esempio 1: creare un API Gateway Custom Authorizer basato su token per API

L'create-authorizeresempio seguente crea un autorizzatore basato su token.

aws apigateway create-authorizer \ --rest-api-id 1234123412 \ --name 'First_Token_Custom_Authorizer' \ --type TOKEN \ --authorizer-uri 'arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:customAuthFunction/invocations' \ --identity-source 'method.request.header.Authorization' \ --authorizer-result-ttl-in-seconds 300

Output:

{ "authType": "custom", "name": "First_Token_Custom_Authorizer", "authorizerUri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:customAuthFunction/invocations", "authorizerResultTtlInSeconds": 300, "identitySource": "method.request.header.Authorization", "type": "TOKEN", "id": "z40xj0" }

Esempio 2: creare un API Gateway Custom Authorizer basato su Cognito User Pools per API

L'create-authorizeresempio seguente crea un API Gateway Custom Authorizer basato su Cognito User Pools.

aws apigateway create-authorizer \ --rest-api-id 1234123412 \ --name 'First_Cognito_Custom_Authorizer' \ --type COGNITO_USER_POOLS \ --provider-arns 'arn:aws:cognito-idp:us-east-1:123412341234:userpool/us-east-1_aWcZeQbuD' \ --identity-source 'method.request.header.Authorization'

Output:

{ "authType": "cognito_user_pools", "identitySource": "method.request.header.Authorization", "name": "First_Cognito_Custom_Authorizer", "providerARNs": [ "arn:aws:cognito-idp:us-east-1:342398297714:userpool/us-east-1_qWbZzQhzE" ], "type": "COGNITO_USER_POOLS", "id": "5yid1t" }

Esempio 3: creare un API Gateway Custom Authorizer basato su richiesta per API

L'create-authorizeresempio seguente crea un autorizzatore basato su richiesta.

aws apigateway create-authorizer \ --rest-api-id 1234123412 \ --name 'First_Request_Custom_Authorizer' \ --type REQUEST \ --authorizer-uri 'arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:customAuthFunction/invocations' \ --identity-source 'method.request.header.Authorization,context.accountId' \ --authorizer-result-ttl-in-seconds 300

Output:

{ "id": "z40xj0", "name": "First_Request_Custom_Authorizer", "type": "REQUEST", "authType": "custom", "authorizerUri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:customAuthFunction/invocations", "identitySource": "method.request.header.Authorization,context.accountId", "authorizerResultTtlInSeconds": 300 }

Il seguente esempio di codice mostra come utilizzarecreate-base-path-mapping.

AWS CLI

Per creare la mappatura del percorso di base per un nome di dominio personalizzato

Comando:

aws apigateway create-base-path-mapping --domain-name subdomain.domain.tld --rest-api-id 1234123412 --stage prod --base-path v1

Il seguente esempio di codice mostra come utilizzarecreate-deployment.

AWS CLI

Per distribuire le risorse configurate per An API in un nuovo Stage

Comando:

aws apigateway create-deployment --rest-api-id 1234123412 --stage-name dev --stage-description 'Development Stage' --description 'First deployment to the dev stage'

Per distribuire le risorse configurate API per una fase esistente

Comando:

aws apigateway create-deployment --rest-api-id 1234123412 --stage-name dev --description 'Second deployment to the dev stage'

Per distribuire le risorse configurate per an API su una fase esistente con Stage Variables

aws apigateway create-deployment -- rest-api-id 1234123412 --stage-name dev --description 'Terza implementazione alla fase di sviluppo' --variables key='value', =' 'otherKeyotherValue

Il seguente esempio di codice mostra come utilizzarecreate-domain-name.

AWS CLI

Per creare il nome di dominio personalizzato

Comando:

aws apigateway create-domain-name --domain-name 'my.domain.tld' --certificate-name 'my.domain.tld cert' --certificate-arn 'arn:aws:acm:us-east-1:012345678910:certificate/fb1b9770-a305-495d-aefb-27e5e101ff3'

Il seguente esempio di codice mostra come utilizzarecreate-model.

AWS CLI

Per creare un modello per un API

Comando:

aws apigateway create-model --rest-api-id 1234123412 --name 'firstModel' --description 'The First Model' --content-type 'application/json' --schema '{ "$schema": "http://json-schema.org/draft-04/schema#", "title": "firstModel", "type": "object", "properties": { "firstProperty" : { "type": "object", "properties": { "key": { "type": "string" } } } } }'

Output:

{ "contentType": "application/json", "description": "The First Model", "name": "firstModel", "id": "2rzg0l", "schema": "{ \"$schema\": \"http://json-schema.org/draft-04/schema#\", \"title\": \"firstModel\", \"type\": \"object\", \"properties\": { \"firstProperty\" : { \"type\": \"object\", \"properties\": { \"key\": { \"type\": \"string\" } } } } }" }
  • Per API i dettagli, vedere CreateModelin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarecreate-resource.

AWS CLI

Per creare una risorsa in un API

Comando:

aws apigateway create-resource --rest-api-id 1234123412 --parent-id a1b2c3 --path-part 'new-resource'
  • Per API i dettagli, vedere CreateResourcein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarecreate-rest-api.

AWS CLI

Per creare un API

Comando:

aws apigateway create-rest-api --name 'My First API' --description 'This is my first API'

Per creare un duplicato API da un file esistente API

Comando:

aws apigateway create-rest-api --name 'Copy of My First API' --description 'This is a copy of my first API' --clone-from 1234123412
  • Per API i dettagli, vedere CreateRestApiin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarecreate-stage.

AWS CLI

Creare una fase in un ambiente API che contenga una distribuzione esistente

Comando:

aws apigateway create-stage --rest-api-id 1234123412 --stage-name 'dev' --description 'Development stage' --deployment-id a1b2c3

Per creare una fase in un ambiente API che conterrà una distribuzione esistente e variabili di fase personalizzate

Comando:

aws apigateway create-stage --rest-api-id 1234123412 --stage-name 'dev' --description 'Development stage' --deployment-id a1b2c3 --variables key='value',otherKey='otherValue'
  • Per API i dettagli, vedere CreateStagein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarecreate-usage-plan-key.

AWS CLI

Associa una API chiave esistente a un piano di utilizzo

Comando:

aws apigateway create-usage-plan-key --usage-plan-id a1b2c3 --key-type "API_KEY" --key-id 4vq3yryqm5

Il seguente esempio di codice mostra come utilizzarecreate-usage-plan.

AWS CLI

Per creare un piano di utilizzo con limiti di limitazione e quota che si ripristini all'inizio del mese

Comando:

aws apigateway create-usage-plan --name "New Usage Plan" --description "A new usage plan" --throttle burstLimit=10,rateLimit=5 --quota limit=500,offset=0,period=MONTH

Il seguente esempio di codice mostra come utilizzaredelete-api-key.

AWS CLI

Per eliminare una API chiave

Comando:

aws apigateway delete-api-key --api-key 8bklk8bl1k3sB38D9B3l0enyWT8c09B30lkq0blk
  • Per API i dettagli, vedere DeleteApiKeyin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredelete-authorizer.

AWS CLI

Per eliminare un Autorizzatore personalizzato in un API

Comando:

aws apigateway delete-authorizer --rest-api-id 1234123412 --authorizer-id 7gkfbo

Il seguente esempio di codice mostra come utilizzaredelete-base-path-mapping.

AWS CLI

Per eliminare una mappatura del percorso di base per un nome di dominio personalizzato

Comando:

aws apigateway delete-base-path-mapping --domain-name 'api.domain.tld' --base-path 'dev'

Il seguente esempio di codice mostra come utilizzaredelete-client-certificate.

AWS CLI

Per eliminare un certificato client

Comando:

aws apigateway delete-client-certificate --client-certificate-id a1b2c3

Il seguente esempio di codice mostra come utilizzaredelete-deployment.

AWS CLI

Per eliminare una distribuzione in un API

Comando:

aws apigateway delete-deployment --rest-api-id 1234123412 --deployment-id a1b2c3

Il seguente esempio di codice mostra come utilizzaredelete-domain-name.

AWS CLI

Per eliminare un nome di dominio personalizzato

Comando:

aws apigateway delete-domain-name --domain-name 'api.domain.tld'

Il seguente esempio di codice mostra come utilizzaredelete-integration-response.

AWS CLI

Per eliminare una risposta di integrazione per una determinata risorsa, metodo e codice di stato in un API

Comando:

aws apigateway delete-integration-response --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --status-code 200

Il seguente esempio di codice mostra come utilizzaredelete-integration.

AWS CLI

Per eliminare un'integrazione per una determinata risorsa e metodo in un API

Comando:

aws apigateway delete-integration --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET

Il seguente esempio di codice mostra come utilizzaredelete-method-response.

AWS CLI

Per eliminare una risposta al metodo per la risorsa, il metodo e il codice di stato specificati in un API

Comando:

aws apigateway delete-method-response --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --status-code 200

Il seguente esempio di codice mostra come utilizzaredelete-method.

AWS CLI

Per eliminare un metodo per una determinata risorsa in un API

Comando:

aws apigateway delete-method --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET
  • Per API i dettagli, vedere DeleteMethodin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredelete-model.

AWS CLI

Per eliminare un modello nel dato API

Comando:

aws apigateway delete-model --rest-api-id 1234123412 --model-name 'customModel'
  • Per API i dettagli, vedere DeleteModelin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredelete-resource.

AWS CLI

Per eliminare una risorsa in un API

Comando:

aws apigateway delete-resource --rest-api-id 1234123412 --resource-id a1b2c3
  • Per API i dettagli, vedere DeleteResourcein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredelete-rest-api.

AWS CLI

Per eliminare un API

Comando:

aws apigateway delete-rest-api --rest-api-id 1234123412
  • Per API i dettagli, vedere DeleteRestApiin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredelete-stage.

AWS CLI

Per eliminare una fase in un API

Comando:

aws apigateway delete-stage --rest-api-id 1234123412 --stage-name 'dev'
  • Per API i dettagli, vedere DeleteStagein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredelete-usage-plan-key.

AWS CLI

Per rimuovere una API chiave da un piano di utilizzo

Comando:

aws apigateway delete-usage-plan-key --usage-plan-id a1b2c3 --key-id 1NbjQzMReAkeEQPNAW8r3dXsU2rDD7fc7f2Sipnu

Il seguente esempio di codice mostra come utilizzaredelete-usage-plan.

AWS CLI

Per eliminare un piano di utilizzo

Comando:

aws apigateway delete-usage-plan --usage-plan-id a1b2c3

Il seguente esempio di codice mostra come utilizzareflush-stage-authorizers-cache.

AWS CLI

Per svuotare tutte le voci della cache dell'autorizzatore su uno stage

Comando:

aws apigateway flush-stage-authorizers-cache --rest-api-id 1234123412 --stage-name dev

Il seguente esempio di codice mostra come utilizzareflush-stage-cache.

AWS CLI

Per svuotare la cache per uno API stage

Comando:

aws apigateway flush-stage-cache --rest-api-id 1234123412 --stage-name dev

Il seguente esempio di codice mostra come utilizzaregenerate-client-certificate.

AWS CLI

Per creare un certificato lato client SSL

Comando:

aws apigateway generate-client-certificate --description 'My First Client Certificate'

Il seguente esempio di codice mostra come utilizzareget-account.

AWS CLI

Per ottenere le impostazioni dell'account API Gateway

Comando:

aws apigateway get-account

Output:

{ "cloudwatchRoleArn": "arn:aws:iam::123412341234:role/APIGatewayToCloudWatchLogsRole", "throttleSettings": { "rateLimit": 500.0, "burstLimit": 1000 } }
  • Per API i dettagli, vedere GetAccountin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-api-key.

AWS CLI

Per ottenere informazioni su una API chiave specifica

Comando:

aws apigateway get-api-key --api-key 8bklk8bl1k3sB38D9B3l0enyWT8c09B30lkq0blk

Output:

{ "description": "My first key", "enabled": true, "stageKeys": [ "a1b2c3d4e5/dev", "e5d4c3b2a1/dev" ], "lastUpdatedDate": 1456184515, "createdDate": 1456184452, "id": "8bklk8bl1k3sB38D9B3l0enyWT8c09B30lkq0blk", "name": "My key" }
  • Per API i dettagli, vedere GetApiKeyin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-api-keys.

AWS CLI

Per ottenere l'elenco delle API chiavi

Comando:

aws apigateway get-api-keys

Output:

{ "items": [ { "description": "My first key", "enabled": true, "stageKeys": [ "a1b2c3d4e5/dev", "e5d4c3b2a1/dev" ], "lastUpdatedDate": 1456184515, "createdDate": 1456184452, "id": "8bklk8bl1k3sB38D9B3l0enyWT8c09B30lkq0blk", "name": "My key" } ] }
  • Per API i dettagli, vedere GetApiKeysin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-authorizer.

AWS CLI

Per ottenere le impostazioni per ogni API autorizzazione del API Gateway

Comando:

aws apigateway get-authorizer --rest-api-id 1234123412 --authorizer-id gfi4n3

Output:

{ "authorizerResultTtlInSeconds": 300, "name": "MyAuthorizer", "type": "TOKEN", "identitySource": "method.request.header.Authorization", "authorizerUri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:authorizer_function/invocations", "id": "gfi4n3" }
  • Per API i dettagli, vedere GetAuthorizerin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-authorizers.

AWS CLI

Per ottenere l'elenco degli autorizzatori per un REST API

Comando:

aws apigateway get-authorizers --rest-api-id 1234123412

Output:

{ "items": [ { "name": "MyAuthorizer", "authorizerUri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:My_Authorizer_Function/invocations", "authorizerResultTtlInSeconds": 300, "identitySource": "method.request.header.Authorization", "type": "TOKEN", "id": "gfi4n3" } ] }
  • Per API i dettagli, vedere GetAuthorizersin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-base-path-mapping.

AWS CLI

Per ottenere la mappatura del percorso di base per un nome di dominio personalizzato

Comando:

aws apigateway get-base-path-mapping --domain-name subdomain.domain.tld --base-path v1

Output:

{ "basePath": "v1", "restApiId": "1234w4321e", "stage": "api" }

Il seguente esempio di codice mostra come utilizzareget-base-path-mappings.

AWS CLI

Per ottenere le mappature del percorso di base per un nome di dominio personalizzato

Comando:

aws apigateway get-base-path-mappings --domain-name subdomain.domain.tld

Output:

{ "items": [ { "basePath": "(none)", "restApiId": "1234w4321e", "stage": "dev" }, { "basePath": "v1", "restApiId": "1234w4321e", "stage": "api" } ] }

Il seguente esempio di codice mostra come utilizzareget-client-certificate.

AWS CLI

Per ottenere un certificato client

Comando:

aws apigateway get-client-certificate --client-certificate-id a1b2c3

Il seguente esempio di codice mostra come utilizzareget-client-certificates.

AWS CLI

Per ottenere un elenco di certificati client

Comando:

aws apigateway get-client-certificates

Output:

{ "items": [ { "pemEncodedCertificate": "-----BEGIN CERTIFICATE----- <certificate content> -----END CERTIFICATE-----", "clientCertificateId": "a1b2c3", "expirationDate": 1483556561, "description": "My Client Certificate", "createdDate": 1452020561 } ] }

Il seguente esempio di codice mostra come utilizzareget-deployment.

AWS CLI

Per ottenere informazioni su una distribuzione

Comando:

aws apigateway get-deployment --rest-api-id 1234123412 --deployment-id ztt4m2

Output:

{ "description": "myDeployment", "id": "ztt4m2", "createdDate": 1455218022 }
  • Per API i dettagli, vedere GetDeploymentin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-deployments.

AWS CLI

Per ottenere un elenco di distribuzioni per un REST API

Comando:

aws apigateway get-deployments --rest-api-id 1234123412

Output:

{ "items": [ { "createdDate": 1453797217, "id": "0a2b4c", "description": "Deployed my API for the first time" } ] }
  • Per API i dettagli, vedere GetDeploymentsin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-domain-name.

AWS CLI

Per ottenere informazioni su un nome di dominio personalizzato

Comando:

aws apigateway get-domain-name --domain-name api.domain.tld

Output:

{ "domainName": "api.domain.tld", "distributionDomainName": "d1a2f3a4c5o6d.cloudfront.net", "certificateName": "uploadedCertificate", "certificateUploadDate": 1462565487 }

Il seguente esempio di codice mostra come utilizzareget-domain-names.

AWS CLI

Per ottenere un elenco di nomi di dominio personalizzati

Comando:

aws apigateway get-domain-names

Output:

{ "items": [ { "distributionDomainName": "d9511k3l09bkd.cloudfront.net", "certificateUploadDate": 1452812505, "certificateName": "my_custom_domain-certificate", "domainName": "subdomain.domain.tld" } ] }
  • Per API i dettagli, vedere GetDomainNamesin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-export.

AWS CLI

Per ottenere il modello JSON Swagger per uno stage

Comando:

aws apigateway get-export --rest-api-id a1b2c3d4e5 --stage-name dev --export-type swagger /path/to/filename.json

Per ottenere il modello JSON Swagger + API Gateway Extentions per uno stage

Comando:

aws apigateway get-export --parameters extensions='integrations' --rest-api-id a1b2c3d4e5 --stage-name dev --export-type swagger /path/to/filename.json

Per ottenere il modello JSON Swagger + Postman Extensions per un livello

Comando:

aws apigateway get-export --parameters extensions='postman' --rest-api-id a1b2c3d4e5 --stage-name dev --export-type swagger /path/to/filename.json
  • Per API i dettagli, consulta Command GetExportReference AWS CLI .

Il seguente esempio di codice mostra come utilizzareget-integration-response.

AWS CLI

Per ottenere la configurazione della risposta di integrazione per un HTTP metodo definito REST API nella risorsa a

Comando:

aws apigateway get-integration-response --rest-api-id 1234123412 --resource-id y9h6rt --http-method GET --status-code 200

Output:

{ "statusCode": "200", "responseTemplates": { "application/json": null } }

Il seguente esempio di codice mostra come utilizzareget-integration.

AWS CLI

Per ottenere la configurazione di integrazione per un HTTP metodo definito REST API nella risorsa a

Comando:

aws apigateway get-integration --rest-api-id 1234123412 --resource-id y9h6rt --http-method GET

Output:

{ "httpMethod": "POST", "integrationResponses": { "200": { "responseTemplates": { "application/json": null }, "statusCode": "200" } }, "cacheKeyParameters": [], "type": "AWS", "uri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:My_Function/invocations", "cacheNamespace": "y9h6rt" }
  • Per API i dettagli, vedere GetIntegrationin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-method-response.

AWS CLI

Per ottenere la configurazione della risorsa di risposta del metodo per un HTTP metodo definito nella risorsa REST API di a

Comando:

aws apigateway get-method-response --rest-api-id 1234123412 --resource-id y9h6rt --http-method GET --status-code 200

Output:

{ "responseModels": { "application/json": "Empty" }, "statusCode": "200" }

Il seguente esempio di codice mostra come utilizzareget-method.

AWS CLI

Per ottenere la configurazione delle risorse del metodo per un HTTP metodo definito nella risorsa REST API di a

Comando:

aws apigateway get-method --rest-api-id 1234123412 --resource-id y9h6rt --http-method GET

Output:

{ "apiKeyRequired": false, "httpMethod": "GET", "methodIntegration": { "integrationResponses": { "200": { "responseTemplates": { "application/json": null }, "statusCode": "200" } }, "cacheKeyParameters": [], "uri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:My_Function/invocations", "httpMethod": "POST", "cacheNamespace": "y9h6rt", "type": "AWS" }, "requestParameters": {}, "methodResponses": { "200": { "responseModels": { "application/json": "Empty" }, "statusCode": "200" } }, "authorizationType": "NONE" }
  • Per API i dettagli, vedere GetMethodin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-model-template.

AWS CLI

Per ottenere il modello di mappatura per un modello definito in un REST API

Comando:

aws apigateway get-model-template --rest-api-id 1234123412 --model-name Empty

Output:

{ "value": "#set($inputRoot = $input.path('$'))\n{ }" }

Il seguente esempio di codice mostra come utilizzareget-model.

AWS CLI

Per ottenere la configurazione per un modello definito in un REST API

Comando:

aws apigateway get-model --rest-api-id 1234123412 --model-name Empty

Output:

{ "contentType": "application/json", "description": "This is a default empty schema model", "name": "Empty", "id": "etd5w5", "schema": "{\n \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n \"title\" : \"Empty Schema\",\n \"type\" : \"object\"\n}" }
  • Per API i dettagli, vedere GetModelin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-models.

AWS CLI

Per ottenere un elenco di modelli per un REST API

Comando:

aws apigateway get-models --rest-api-id 1234123412

Output:

{ "items": [ { "description": "This is a default error schema model", "schema": "{\n \"$schema\" : \"http://json-schema.org/draft-04/schema#\",\n \"title\" : \"Error Schema\",\n \"type\" : \"object\",\n \"properties\" : {\n \"message\" : { \"type\" : \"string\" }\n }\n}", "contentType": "application/json", "id": "7tpbze", "name": "Error" }, { "description": "This is a default empty schema model", "schema": "{\n \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n \"title\" : \"Empty Schema\",\n \"type\" : \"object\"\n}", "contentType": "application/json", "id": "etd5w5", "name": "Empty" } ] }
  • Per API i dettagli, vedere GetModelsin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-resource.

AWS CLI

Per ottenere informazioni su una risorsa

Comando:

aws apigateway get-resource --rest-api-id 1234123412 --resource-id zwo0y3

Output:

{ "path": "/path", "pathPart": "path", "id": "zwo0y3", "parentId": "uyokt6ij2g" }
  • Per API i dettagli, vedere GetResourcein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-resources.

AWS CLI

Per ottenere un elenco di risorse per un REST API

Comando:

aws apigateway get-resources --rest-api-id 1234123412

Output:

{ "items": [ { "path": "/resource/subresource", "resourceMethods": { "POST": {} }, "id": "024ace", "pathPart": "subresource", "parentId": "ai5b02" } ] }
  • Per API i dettagli, vedere GetResourcesin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-rest-api.

AWS CLI

Per ottenere informazioni su un API

Comando:

aws apigateway get-rest-api --rest-api-id 1234123412

Output:

{ "name": "myAPI", "id": "o1y243m4f5", "createdDate": 1453416433 }
  • Per API i dettagli, vedere GetRestApiin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-rest-apis.

AWS CLI

Per ottenere un elenco di REST APIs

Comando:

aws apigateway get-rest-apis

Output:

{ "items": [ { "createdDate": 1438884790, "id": "12s44z21rb", "name": "My First API" } ] }
  • Per API i dettagli, vedere GetRestApisin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-sdk.

AWS CLI

Per installare Android SDK per un REST API palco

Comando:

aws apigateway get-sdk --rest-api-id 1234123412 --stage-name dev --sdk-type android --parameters groupId='com.mycompany',invokerPackage='com.mycompany.clientsdk',artifactId='Mycompany-client',artifactVersion='1.0.0' /path/to/android_sdk.zip

Output:

{ "contentType": "application/octet-stream", "contentDisposition": "attachment; filename=\"android_2016-02-22_23-52Z.zip\"" }

Per procurarsi un REST API palco IOS SDK

Comando:

aws apigateway get-sdk --rest-api-id 1234123412 --stage-name dev --sdk-type objectivec --parameters classPrefix='myprefix' /path/to/iOS_sdk.zip

Output:

{ "contentType": "application/octet-stream", "contentDisposition": "attachment; filename=\"objectivec_2016-02-22_23-52Z.zip\"" }

Per ottenere il Javascript SDK per uno REST API stage

Comando:

aws apigateway get-sdk --rest-api-id 1234123412 --stage-name dev --sdk-type javascript /path/to/javascript_sdk.zip

Output:

{ "contentType": "application/octet-stream", "contentDisposition": "attachment; filename=\"javascript_2016-02-22_23-52Z.zip\"" }
  • Per API i dettagli, vedere GetSdkin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-stage.

AWS CLI

Per ottenere informazioni sullo stadio API di una persona

Comando:

aws apigateway get-stage --rest-api-id 1234123412 --stage-name dev

Output:

{ "stageName": "dev", "cacheClusterSize": "0.5", "cacheClusterEnabled": false, "cacheClusterStatus": "NOT_AVAILABLE", "deploymentId": "rbh1fj", "lastUpdatedDate": 1466802961, "createdDate": 1460682074, "methodSettings": { "*/*": { "cacheTtlInSeconds": 300, "loggingLevel": "INFO", "dataTraceEnabled": false, "metricsEnabled": true, "unauthorizedCacheControlHeaderStrategy": "SUCCEED_WITH_RESPONSE_HEADER", "throttlingRateLimit": 500.0, "cacheDataEncrypted": false, "cachingEnabled": false, "throttlingBurstLimit": 1000, "requireAuthorizationForCacheControl": true }, "~1resource/GET": { "cacheTtlInSeconds": 300, "loggingLevel": "INFO", "dataTraceEnabled": false, "metricsEnabled": true, "unauthorizedCacheControlHeaderStrategy": "SUCCEED_WITH_RESPONSE_HEADER", "throttlingRateLimit": 500.0, "cacheDataEncrypted": false, "cachingEnabled": false, "throttlingBurstLimit": 1000, "requireAuthorizationForCacheControl": true } } }
  • Per API i dettagli, vedere GetStagein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-stages.

AWS CLI

Per ottenere l'elenco delle fasi di un REST API

Comando:

aws apigateway get-stages --rest-api-id 1234123412

Output:

{ "item": [ { "stageName": "dev", "cacheClusterSize": "0.5", "cacheClusterEnabled": true, "cacheClusterStatus": "AVAILABLE", "deploymentId": "123h64", "lastUpdatedDate": 1456185138, "createdDate": 1453589092, "methodSettings": { "~1resource~1subresource/POST": { "cacheTtlInSeconds": 300, "loggingLevel": "INFO", "dataTraceEnabled": true, "metricsEnabled": true, "throttlingRateLimit": 500.0, "cacheDataEncrypted": false, "cachingEnabled": false, "throttlingBurstLimit": 1000 } } } ] }
  • Per API i dettagli, vedere GetStagesin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-usage-plan-key.

AWS CLI

Per ottenere i dettagli di una API chiave associata a un piano di utilizzo

Comando:

aws apigateway get-usage-plan-key --usage-plan-id a1b2c3 --key-id 1NbjQzMReAkeEQPNAW8r3dXsU2rDD7fc7f2Sipnu

Il seguente esempio di codice mostra come utilizzareget-usage-plan-keys.

AWS CLI

Per ottenere l'elenco delle API chiavi associate a un piano di utilizzo

Comando:

aws apigateway get-usage-plan-keys --usage-plan-id a1b2c3

Il seguente esempio di codice mostra come utilizzareget-usage-plan.

AWS CLI

Per ottenere i dettagli di un piano di utilizzo

Comando:

aws apigateway get-usage-plan --usage-plan-id a1b2c3
  • Per API i dettagli, vedere GetUsagePlanin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-usage-plans.

AWS CLI

Per ottenere i dettagli di tutti i piani di utilizzo

Comando:

aws apigateway get-usage-plans
  • Per API i dettagli, vedere GetUsagePlansin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-usage.

AWS CLI

Per ottenere i dettagli di utilizzo di un piano di utilizzo

Comando:

aws apigateway get-usage --usage-plan-id a1b2c3 --start-date "2016-08-16" --end-date "2016-08-17"
  • Per API i dettagli, vedere GetUsagein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareimport-rest-api.

AWS CLI

Per importare un modello Swagger e creare un API

Comando:

aws apigateway import-rest-api --body 'file:///path/to/API_Swagger_template.json'
  • Per API i dettagli, consulta AWS CLI Command ImportRestApiReference.

Il seguente esempio di codice mostra come utilizzareput-integration-response.

AWS CLI

Per creare una risposta di integrazione come risposta predefinita con un modello di mappatura definito

Comando:

aws apigateway put-integration-response --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --status-code 200 --selection-pattern "" --response-templates '{"application/json": "{\"json\": \"template\"}"}'

Per creare una risposta di integrazione con un'espressione regolare di 400 e un valore di intestazione definito staticamente

Comando:

aws apigateway put-integration-response --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --status-code 400 --selection-pattern 400 --response-parameters '{"method.response.header.custom-header": "'"'"'custom-value'"'"'"}'

Il seguente esempio di codice mostra come utilizzareput-integration.

AWS CLI

Per creare una richiesta di MOCK integrazione

Comando:

aws apigateway put-integration --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --type MOCK --request-templates '{ "application/json": "{\"statusCode\": 200}" }'

Per creare una richiesta di HTTP integrazione

Comando:

aws apigateway put-integration --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --type HTTP --integration-http-method GET --uri 'https://domain.tld/path'

Per creare una richiesta di AWS integrazione con un endpoint della funzione Lambda

Comando:

aws apigateway put-integration --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --type AWS --integration-http-method POST --uri 'arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:function_name/invocations'
  • Per API i dettagli, consulta AWS CLI Command PutIntegrationReference.

Il seguente esempio di codice mostra come utilizzareput-method-response.

AWS CLI

Per creare una risposta al metodo con il codice di stato specificato con un'intestazione di risposta del metodo personalizzata

Comando:

aws apigateway put-method-response --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --status-code 400 --response-parameters "method.response.header.custom-header=false"

Il seguente esempio di codice mostra come utilizzareput-method.

AWS CLI

Per creare un metodo per una risorsa in un'intestazione di richiesta API di metodo senza autorizzazione, senza API chiave e in un'intestazione di richiesta del metodo personalizzata

Comando:

aws apigateway put-method --rest-api-id 1234123412 --resource-id a1b2c3 --http-method PUT --authorization-type "NONE" --no-api-key-required --request-parameters "method.request.header.custom-header=false"
  • Per API i dettagli, vedere PutMethodin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareput-rest-api.

AWS CLI

Sovrascrivere un file esistente API utilizzando un modello Swagger

Comando:

aws apigateway put-rest-api --rest-api-id 1234123412 --mode overwrite --body 'fileb:///path/to/API_Swagger_template.json'

Per unire un modello Swagger a uno esistente API

Comando:

aws apigateway put-rest-api --rest-api-id 1234123412 --mode merge --body 'fileb:///path/to/API_Swagger_template.json'
  • Per API i dettagli, consulta Command PutRestApiReference AWS CLI .

Il seguente esempio di codice mostra come utilizzaretest-invoke-authorizer.

AWS CLI

Per testare, richiama una richiesta a un Autorizzatore personalizzato che includa l'intestazione e il valore richiesti

Comando:

aws apigateway test-invoke-authorizer --rest-api-id 1234123412 --authorizer-id 5yid1t --headers Authorization='Value'

Il seguente esempio di codice mostra come utilizzaretest-invoke-method.

AWS CLI

Per testare, invoca la risorsa root in an API effettuando una richiesta GET

Comando:

aws apigateway test-invoke-method --rest-api-id 1234123412 --resource-id avl5sg8fw8 --http-method GET --path-with-query-string '/'

Per testare, richiama una sottorisorsa in an API effettuando una GET richiesta con un valore del parametro di percorso specificato

Comando:

aws apigateway test-invoke-method --rest-api-id 1234123412 --resource-id 3gapai --http-method GET --path-with-query-string '/pets/1'

Il seguente esempio di codice mostra come utilizzareupdate-account.

AWS CLI

Per modificare il IAM ruolo ARN per la registrazione in Logs CloudWatch

Comando:

aws apigateway update-account --patch-operations op='replace',path='/cloudwatchRoleArn',value='arn:aws:iam::123412341234:role/APIGatewayToCloudWatchLogs'

Output:

{ "cloudwatchRoleArn": "arn:aws:iam::123412341234:role/APIGatewayToCloudWatchLogs", "throttleSettings": { "rateLimit": 1000.0, "burstLimit": 2000 } }
  • Per API i dettagli, vedere UpdateAccountin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareupdate-api-key.

AWS CLI

Per cambiare il nome di una API chiave

Comando:

aws apigateway update-api-key --api-key sNvjQDMReA1eEQPNAW8r37XsU2rDD7fc7m2SiMnu --patch-operations op='replace',path='/name',value='newName'

Output:

{ "description": "currentDescription", "enabled": true, "stageKeys": [ "41t2j324r5/dev" ], "lastUpdatedDate": 1470086052, "createdDate": 1445460347, "id": "sNvjQDMReA1vEQPNzW8r3dXsU2rrD7fcjm2SiMnu", "name": "newName" }

Per disabilitare la API chiave

Comando:

aws apigateway update-api-key --api-key sNvjQDMReA1eEQPNAW8r37XsU2rDD7fc7m2SiMnu --patch-operations op='replace',path='/enabled',value='false'

Output:

{ "description": "currentDescription", "enabled": false, "stageKeys": [ "41t2j324r5/dev" ], "lastUpdatedDate": 1470086052, "createdDate": 1445460347, "id": "sNvjQDMReA1vEQPNzW8r3dXsU2rrD7fcjm2SiMnu", "name": "newName" }
  • Per API i dettagli, vedere UpdateApiKeyin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareupdate-authorizer.

AWS CLI

Per modificare il nome del Custom Authorizer

Comando:

aws apigateway update-authorizer --rest-api-id 1234123412 --authorizer-id gfi4n3 --patch-operations op='replace',path='/name',value='testAuthorizer'

Output:

{ "authType": "custom", "name": "testAuthorizer", "authorizerUri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:customAuthorizer/invocations", "authorizerResultTtlInSeconds": 300, "identitySource": "method.request.header.Authorization", "type": "TOKEN", "id": "gfi4n3" }

Per modificare la funzione Lambda richiamata dall'Autorizzatore personalizzato

Comando:

aws apigateway update-authorizer --rest-api-id 1234123412 --authorizer-id gfi4n3 --patch-operations op='replace',path='/authorizerUri',value='arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:newAuthorizer/invocations'

Output:

{ "authType": "custom", "name": "testAuthorizer", "authorizerUri": "arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:123412341234:function:newAuthorizer/invocations", "authorizerResultTtlInSeconds": 300, "identitySource": "method.request.header.Authorization", "type": "TOKEN", "id": "gfi4n3" }

Il seguente esempio di codice mostra come utilizzareupdate-base-path-mapping.

AWS CLI

Per modificare il percorso di base per un nome di dominio personalizzato

Comando:

aws apigateway update-base-path-mapping --domain-name api.domain.tld --base-path prod --patch-operations op='replace',path='/basePath',value='v1'

Output:

{ "basePath": "v1", "restApiId": "1234123412", "stage": "api" }

Il seguente esempio di codice mostra come utilizzareupdate-client-certificate.

AWS CLI

Per aggiornare la descrizione di un certificato client

Comando:

aws apigateway update-client-certificate --client-certificate-id a1b2c3 --patch-operations op='replace',path='/description',value='My new description'

Il seguente esempio di codice mostra come utilizzareupdate-deployment.

AWS CLI

Per modificare la descrizione di una distribuzione

Comando:

aws apigateway update-deployment --rest-api-id 1234123412 --deployment-id ztt4m2 --patch-operations op='replace',path='/description',value='newDescription'

Output:

{ "description": "newDescription", "id": "ztt4m2", "createdDate": 1455218022 }

Il seguente esempio di codice mostra come utilizzareupdate-domain-name.

AWS CLI

Per modificare il nome del certificato per un nome di dominio personalizzato

L'update-domain-nameesempio seguente modifica il nome del certificato per un dominio personalizzato.

aws apigateway update-domain-name \ --domain-name api.domain.tld \ --patch-operations op='replace',path='/certificateArn',value='arn:aws:acm:us-west-2:111122223333:certificate/CERTEXAMPLE123EXAMPLE'

Output:

{ "domainName": "api.domain.tld", "distributionDomainName": "d123456789012.cloudfront.net", "certificateArn": "arn:aws:acm:us-west-2:111122223333:certificate/CERTEXAMPLE123EXAMPLE", "certificateUploadDate": 1462565487 }

Per ulteriori informazioni, consulta Configurare un nome di dominio personalizzato per un API in API Gateway nella Amazon API Gateway Developer Guide.

Il seguente esempio di codice mostra come utilizzareupdate-integration-response.

AWS CLI

Per modificare l'intestazione di una risposta di integrazione in modo da avere una mappatura statica di '*'

Comando:

aws apigateway update-integration-response --rest-api-id 1234123412 --resource-id 3gapai --http-method GET --status-code 200 --patch-operations op='replace',path='/responseParameters/method.response.header.Access-Control-Allow-Origin',value='"'"'*'"'"'

Output:

{ "statusCode": "200", "responseParameters": { "method.response.header.Access-Control-Allow-Origin": "'*'" } }

Per rimuovere un'intestazione di risposta di integrazione

Comando:

aws apigateway update-integration-response --rest-api-id 1234123412 --resource-id 3gapai --http-method GET --status-code 200 --patch-operations op='remove',path='/responseParameters/method.response.header.Access-Control-Allow-Origin'

Il seguente esempio di codice mostra come utilizzareupdate-integration.

AWS CLI

Per aggiungere il modello di mappatura 'Content-Type: application/json' configurato con Input Passthrough

Comando:

aws apigateway update-integration \ --rest-api-id a1b2c3d4e5 \ --resource-id a1b2c3 \ --http-method POST \ --patch-operations "op='add',path='/requestTemplates/application~1json'"

Per aggiornare (sostituire) il modello di mappatura «Content-Type: application/json» configurato con un modello personalizzato

Comando:

aws apigateway update-integration \ --rest-api-id a1b2c3d4e5 \ --resource-id a1b2c3 \ --http-method POST \ --patch-operations "op='replace',path='/requestTemplates/application~1json',value='{"example": "json"}'"

Per aggiornare (sostituire) un modello personalizzato associato a 'Content-Type: application/json' con Input Passthrough

Comando:

aws apigateway update-integration \ --rest-api-id a1b2c3d4e5 \ --resource-id a1b2c3 \ --http-method POST \ --patch-operations "op='replace',path='requestTemplates/application~1json'"

Per rimuovere il modello di mappatura 'Content-Type: application/json'

Comando:

aws apigateway update-integration \ --rest-api-id a1b2c3d4e5 \ --resource-id a1b2c3 \ --http-method POST \ --patch-operations "op='remove',path='/requestTemplates/application~1json'"

Il seguente esempio di codice mostra come utilizzareupdate-method-response.

AWS CLI

Per creare una nuova intestazione di risposta al metodo per la risposta 200 in un metodo e definirla come non obbligatoria (impostazione predefinita)

Comando:

aws apigateway update-method-response --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --status-code 200 --patch-operations op="add",path="/responseParameters/method.response.header.custom-header",value="false"

Per eliminare un modello di risposta per la risposta 200 in un metodo

Comando:

aws apigateway update-method-response --rest-api-id 1234123412 --resource-id a1b2c3 --http-method GET --status-code 200 --patch-operations op="remove",path="/responseModels/application~1json"

Il seguente esempio di codice mostra come utilizzareupdate-method.

AWS CLI

Esempio 1: modificare un metodo per richiedere una API chiave

L'update-methodesempio seguente modifica il metodo per richiedere una API chiave.

aws apigateway update-method \ --rest-api-id 1234123412 \ --resource-id a1b2c3 \ --http-method GET \ --patch-operations op="replace",path="/apiKeyRequired",value="true"

Output:

{ "httpMethod": "GET", "authorizationType": "NONE", "apiKeyRequired": true, "methodResponses": { "200": { "statusCode": "200", "responseModels": {} } }, "methodIntegration": { "type": "AWS", "httpMethod": "POST", "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:123456789111:function:hello-world/invocations", "passthroughBehavior": "WHEN_NO_MATCH", "contentHandling": "CONVERT_TO_TEXT", "timeoutInMillis": 29000, "cacheNamespace": "h7i8j9", "cacheKeyParameters": [], "integrationResponses": { "200": { "statusCode": "200", "responseTemplates": {} } } } }

Esempio 2: modificare un metodo per richiedere l'autorizzazione IAM

L'update-methodesempio seguente modifica il metodo per richiedere IAM l'autorizzazione.

aws apigateway update-method \ --rest-api-id 1234123412 \ --resource-id a1b2c3 \ --http-method GET \ --patch-operations op="replace",path="/authorizationType",value="AWS_IAM"

Output:

{ "httpMethod": "GET", "authorizationType": "AWS_IAM", "apiKeyRequired": false, "methodResponses": { "200": { "statusCode": "200", "responseModels": {} } }, "methodIntegration": { "type": "AWS", "httpMethod": "POST", "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:123456789111:function:hello-world/invocations", "passthroughBehavior": "WHEN_NO_MATCH", "contentHandling": "CONVERT_TO_TEXT", "timeoutInMillis": 29000, "cacheNamespace": "h7i8j9", "cacheKeyParameters": [], "integrationResponses": { "200": { "statusCode": "200", "responseTemplates": {} } } } }

Esempio 3: modificare un metodo per richiedere l'autorizzazione Lambda

L'update-methodesempio seguente modifica il metodo in base all'autorizzazione Lambda richiesta.

aws apigateway update-method --rest-api-id 1234123412 \ --resource-id a1b2c3 \ --http-method GET \ --patch-operations op="replace",path="/authorizationType",value="CUSTOM" op="replace",path="/authorizerId",value="e4f5g6"

Output:

{ "httpMethod": "GET", "authorizationType": "CUSTOM", "authorizerId" : "e4f5g6", "apiKeyRequired": false, "methodResponses": { "200": { "statusCode": "200", "responseModels": {} } }, "methodIntegration": { "type": "AWS", "httpMethod": "POST", "uri": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:123456789111:function:hello-world/invocations", "passthroughBehavior": "WHEN_NO_MATCH", "contentHandling": "CONVERT_TO_TEXT", "timeoutInMillis": 29000, "cacheNamespace": "h7i8j9", "cacheKeyParameters": [], "integrationResponses": { "200": { "statusCode": "200", "responseTemplates": {} } } } }

Per ulteriori informazioni, consulta Creare, configurare e testare i piani di utilizzo utilizzando il API Gateway CLI e Controllare REST API e gestire l'accesso a un API gateway REST API interno nella Amazon API Gateway Developer Guide.

Il seguente esempio di codice mostra come utilizzareupdate-model.

AWS CLI

Per modificare la descrizione di un modello in un API

Comando:

aws apigateway update-model --rest-api-id 1234123412 --model-name 'Empty' --patch-operations op=replace,path=/description,value='New Description'

Per modificare lo schema di un modello in un API

Comando:

aws apigateway update-model --rest-api-id 1234123412 --model-name 'Empty' --patch-operations op=replace,path=/schema,value='"{ \"$schema\": \"http://json-schema.org/draft-04/schema#\", \"title\" : \"Empty Schema\", \"type\" : \"object\" }"'
  • Per API i dettagli, vedere UpdateModelin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareupdate-resource.

AWS CLI

Per spostare una risorsa e posizionarla sotto un'altra risorsa principale in un API

Comando:

aws apigateway update-resource --rest-api-id 1234123412 --resource-id 1a2b3c --patch-operations op=replace,path=/parentId,value='3c2b1a'

Output:

{ "path": "/resource", "pathPart": "resource", "id": "1a2b3c", "parentId": "3c2b1a" }

Per rinominare una risorsa (pathPart) in un API

Comando:

aws apigateway update-resource --rest-api-id 1234123412 --resource-id 1a2b3c --patch-operations op=replace,path=/pathPart,value=newresourcename

Output:

{ "path": "/newresourcename", "pathPart": "newresourcename", "id": "1a2b3c", "parentId": "3c2b1a" }
  • Per API i dettagli, vedere UpdateResourcein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareupdate-rest-api.

AWS CLI

Per cambiare il nome di un API

Comando:

aws apigateway update-rest-api --rest-api-id 1234123412 --patch-operations op=replace,path=/name,value='New Name'

Per modificare la descrizione di un API

Comando:

aws apigateway update-rest-api --rest-api-id 1234123412 --patch-operations op=replace,path=/description,value='New Description'
  • Per API i dettagli, vedere UpdateRestApiin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareupdate-stage.

AWS CLI

Esempio 1: Per sovrascrivere le impostazioni dello stage per una risorsa e un metodo

L'update-stageesempio seguente sovrascrive le impostazioni dello stage e disattiva la registrazione completa delle richieste/risposte per una risorsa e un metodo specifici.

aws apigateway update-stage \ --rest-api-id 1234123412 \ --stage-name 'dev' \ --patch-operations op=replace,path=/~1resourceName/GET/logging/dataTrace,value=false

Output:

{ "deploymentId": "5ubd17", "stageName": "dev", "cacheClusterEnabled": false, "cacheClusterStatus": "NOT_AVAILABLE", "methodSettings": { "~1resourceName/GET": { "metricsEnabled": false, "dataTraceEnabled": false, "throttlingBurstLimit": 5000, "throttlingRateLimit": 10000.0, "cachingEnabled": false, "cacheTtlInSeconds": 300, "cacheDataEncrypted": false, "requireAuthorizationForCacheControl": true, "unauthorizedCacheControlHeaderStrategy": "SUCCEED_WITH_RESPONSE_HEADER" } }, "tracingEnabled": false, "createdDate": "2022-07-18T10:11:18-07:00", "lastUpdatedDate": "2022-07-18T10:19:04-07:00" }

Per ulteriori informazioni, consulta Configurazione di una fase per un REST API nella Amazon API Gateway Developer Guide.

Esempio 2: Per aggiornare le impostazioni dello stage per tutte le risorse e i metodi di una API fase

L'update-stageesempio seguente attiva la registrazione completa delle richieste/risposte per tutte le risorse e i metodi di una fase. API

aws apigateway update-stage \ --rest-api-id 1234123412 \ --stage-name 'dev' \ --patch-operations 'op=replace,path=/*/*/logging/dataTrace,value=true'

Output:

{ "deploymentId": "5ubd17", "stageName": "dev", "cacheClusterEnabled": false, "cacheClusterStatus": "NOT_AVAILABLE", "methodSettings": { "*/*": { "metricsEnabled": false, "dataTraceEnabled": true, "throttlingBurstLimit": 5000, "throttlingRateLimit": 10000.0, "cachingEnabled": false, "cacheTtlInSeconds": 300, "cacheDataEncrypted": false, "requireAuthorizationForCacheControl": true, "unauthorizedCacheControlHeaderStrategy": "SUCCEED_WITH_RESPONSE_HEADER" } }, "tracingEnabled": false, "createdDate": "2022-07-18T10:11:18-07:00", "lastUpdatedDate": "2022-07-18T10:31:04-07:00" }

Per ulteriori informazioni, consulta Configurazione di una fase per un REST API nella Amazon API Gateway Developer Guide.

Il seguente esempio di codice mostra come utilizzareupdate-usage-plan.

AWS CLI

Per modificare il periodo definito in un piano di utilizzo

Comando:

aws apigateway update-usage-plan --usage-plan-id a1b2c3 --patch-operations op="replace",path="/quota/period",value="MONTH"

Per modificare il limite di quota definito in un piano di utilizzo

Comando:

aws apigateway update-usage-plan --usage-plan-id a1b2c3 --patch-operations op="replace",path="/quota/limit",value="500"

Per modificare il limite di velocità di accelerazione definito in un piano di utilizzo

Comando:

aws apigateway update-usage-plan --usage-plan-id a1b2c3 --patch-operations op="replace",path="/throttle/rateLimit",value="10"

Per modificare il limite di accelerazione definito in un piano di utilizzo

Comando:

aws apigateway update-usage-plan --usage-plan-id a1b2c3 --patch-operations op="replace",path="/throttle/burstLimit",value="20"

Il seguente esempio di codice mostra come utilizzareupdate-usage.

AWS CLI

Per modificare temporaneamente la quota su una API chiave per il periodo corrente definito nel piano di utilizzo

Comando:

aws apigateway update-usage --usage-plan-id a1b2c3 --key-id 1NbjQzMReAkeEQPNAW8r3dXsU2rDD7fc7f2Sipnu --patch-operations op="replace",path="/remaining",value="50"
  • Per API i dettagli, vedere UpdateUsagein AWS CLI Command Reference.