[ aws . apigatewayv2 ]

update-stage

Description

Updates a Stage.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  update-stage
[--access-log-settings <value>]
--api-id <value>
[--auto-deploy | --no-auto-deploy]
[--client-certificate-id <value>]
[--default-route-settings <value>]
[--deployment-id <value>]
[--description <value>]
[--route-settings <value>]
--stage-name <value>
[--stage-variables <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--access-log-settings (structure)

Settings for logging access in this stage.

DestinationArn -> (string)

The ARN of the CloudWatch Logs log group to receive access logs.

Format -> (string)

A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId.

Shorthand Syntax:

DestinationArn=string,Format=string

JSON Syntax:

{
  "DestinationArn": "string",
  "Format": "string"
}

--api-id (string)

The API identifier.

--auto-deploy | --no-auto-deploy (boolean)

Specifies whether updates to an API automatically trigger a new deployment. The default value is false.

--client-certificate-id (string)

The identifier of a client certificate for a Stage.

--default-route-settings (structure)

The default route settings for the stage.

DataTraceEnabled -> (boolean)

Specifies whether (true) or not (false) data trace logging is enabled for this route. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.

DetailedMetricsEnabled -> (boolean)

Specifies whether detailed metrics are enabled.

LoggingLevel -> (string)

Specifies the logging level for this route: INFO, ERROR, or OFF. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.

ThrottlingBurstLimit -> (integer)

Specifies the throttling burst limit.

ThrottlingRateLimit -> (double)

Specifies the throttling rate limit.

Shorthand Syntax:

DataTraceEnabled=boolean,DetailedMetricsEnabled=boolean,LoggingLevel=string,ThrottlingBurstLimit=integer,ThrottlingRateLimit=double

JSON Syntax:

{
  "DataTraceEnabled": true|false,
  "DetailedMetricsEnabled": true|false,
  "LoggingLevel": "ERROR"|"INFO"|"OFF",
  "ThrottlingBurstLimit": integer,
  "ThrottlingRateLimit": double
}

--deployment-id (string)

The deployment identifier for the API stage. Can’t be updated if autoDeploy is enabled.

--description (string)

The description for the API stage.

--route-settings (map)

Route settings for the stage.

key -> (string)

value -> (structure)

Represents a collection of route settings.

DataTraceEnabled -> (boolean)

Specifies whether (true) or not (false) data trace logging is enabled for this route. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.

DetailedMetricsEnabled -> (boolean)

Specifies whether detailed metrics are enabled.

LoggingLevel -> (string)

Specifies the logging level for this route: INFO, ERROR, or OFF. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.

ThrottlingBurstLimit -> (integer)

Specifies the throttling burst limit.

ThrottlingRateLimit -> (double)

Specifies the throttling rate limit.

Shorthand Syntax:

KeyName1=DataTraceEnabled=boolean,DetailedMetricsEnabled=boolean,LoggingLevel=string,ThrottlingBurstLimit=integer,ThrottlingRateLimit=double,KeyName2=DataTraceEnabled=boolean,DetailedMetricsEnabled=boolean,LoggingLevel=string,ThrottlingBurstLimit=integer,ThrottlingRateLimit=double

JSON Syntax:

{"string": {
      "DataTraceEnabled": true|false,
      "DetailedMetricsEnabled": true|false,
      "LoggingLevel": "ERROR"|"INFO"|"OFF",
      "ThrottlingBurstLimit": integer,
      "ThrottlingRateLimit": double
    }
  ...}

--stage-name (string)

The stage name. Stage names can contain only alphanumeric characters, hyphens, and underscores, or be $default. Maximum length is 128 characters.

--stage-variables (map)

A map that defines the stage variables for a Stage. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+.

key -> (string)

value -> (string)

A string with a length between [0-2048].

Shorthand Syntax:

KeyName1=string,KeyName2=string

JSON Syntax:

{"string": "string"
  ...}

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command. The generated JSON skeleton is not stable between versions of the AWS CLI and there are no backwards compatibility guarantees in the JSON skeleton generated.

See ‘aws help’ for descriptions of global parameters.

Examples

Note

To use the following examples, you must have the AWS CLI installed and configured. See the Getting started guide in the AWS CLI User Guide for more information.

Unless otherwise stated, all examples have unix-like quotation rules. These examples will need to be adapted to your terminal’s quoting rules. See Using quotation marks with strings in the AWS CLI User Guide .

To configure custom throttling

The following update-stage example configures custom throttling for the specified stage and route of an API.

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

For more information, see Protecting your HTTP API in the Amazon API Gateway Developer Guide.

Output

AccessLogSettings -> (structure)

Settings for logging access in this stage.

DestinationArn -> (string)

The ARN of the CloudWatch Logs log group to receive access logs.

Format -> (string)

A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId.

ApiGatewayManaged -> (boolean)

Specifies whether a stage is managed by API Gateway. If you created an API using quick create, the $default stage is managed by API Gateway. You can’t modify the $default stage.

AutoDeploy -> (boolean)

Specifies whether updates to an API automatically trigger a new deployment. The default value is false.

ClientCertificateId -> (string)

The identifier of a client certificate for a Stage. Supported only for WebSocket APIs.

CreatedDate -> (timestamp)

The timestamp when the stage was created.

DefaultRouteSettings -> (structure)

Default route settings for the stage.

DataTraceEnabled -> (boolean)

Specifies whether (true) or not (false) data trace logging is enabled for this route. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.

DetailedMetricsEnabled -> (boolean)

Specifies whether detailed metrics are enabled.

LoggingLevel -> (string)

Specifies the logging level for this route: INFO, ERROR, or OFF. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.

ThrottlingBurstLimit -> (integer)

Specifies the throttling burst limit.

ThrottlingRateLimit -> (double)

Specifies the throttling rate limit.

DeploymentId -> (string)

The identifier of the Deployment that the Stage is associated with. Can’t be updated if autoDeploy is enabled.

Description -> (string)

The description of the stage.

LastDeploymentStatusMessage -> (string)

Describes the status of the last deployment of a stage. Supported only for stages with autoDeploy enabled.

LastUpdatedDate -> (timestamp)

The timestamp when the stage was last updated.

RouteSettings -> (map)

Route settings for the stage, by routeKey.

key -> (string)

value -> (structure)

Represents a collection of route settings.

DataTraceEnabled -> (boolean)

Specifies whether (true) or not (false) data trace logging is enabled for this route. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.

DetailedMetricsEnabled -> (boolean)

Specifies whether detailed metrics are enabled.

LoggingLevel -> (string)

Specifies the logging level for this route: INFO, ERROR, or OFF. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.

ThrottlingBurstLimit -> (integer)

Specifies the throttling burst limit.

ThrottlingRateLimit -> (double)

Specifies the throttling rate limit.

StageName -> (string)

The name of the stage.

StageVariables -> (map)

A map that defines the stage variables for a stage resource. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&=,]+.

key -> (string)

value -> (string)

A string with a length between [0-2048].

Tags -> (map)

The collection of tags. Each tag element is associated with a given resource.

key -> (string)

value -> (string)

A string with a length between [0-1600].