aws-sdk-appconfig 1.21.0 → 1.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +98 -1
- data/VERSION +1 -1
- data/lib/aws-sdk-appconfig/client.rb +904 -84
- data/lib/aws-sdk-appconfig/client_api.rb +320 -4
- data/lib/aws-sdk-appconfig/endpoint_parameters.rb +66 -0
- data/lib/aws-sdk-appconfig/endpoint_provider.rb +60 -0
- data/lib/aws-sdk-appconfig/endpoints.rb +618 -0
- data/lib/aws-sdk-appconfig/plugins/endpoints.rb +154 -0
- data/lib/aws-sdk-appconfig/types.rb +868 -421
- data/lib/aws-sdk-appconfig.rb +5 -1
- metadata +8 -4
| @@ -27,7 +27,11 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb' | |
| 27 27 | 
             
            require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
         | 
| 28 28 | 
             
            require 'aws-sdk-core/plugins/transfer_encoding.rb'
         | 
| 29 29 | 
             
            require 'aws-sdk-core/plugins/http_checksum.rb'
         | 
| 30 | 
            -
            require 'aws-sdk-core/plugins/ | 
| 30 | 
            +
            require 'aws-sdk-core/plugins/checksum_algorithm.rb'
         | 
| 31 | 
            +
            require 'aws-sdk-core/plugins/request_compression.rb'
         | 
| 32 | 
            +
            require 'aws-sdk-core/plugins/defaults_mode.rb'
         | 
| 33 | 
            +
            require 'aws-sdk-core/plugins/recursion_detection.rb'
         | 
| 34 | 
            +
            require 'aws-sdk-core/plugins/sign.rb'
         | 
| 31 35 | 
             
            require 'aws-sdk-core/plugins/protocols/rest_json.rb'
         | 
| 32 36 |  | 
| 33 37 | 
             
            Aws::Plugins::GlobalConfiguration.add_identifier(:appconfig)
         | 
| @@ -73,8 +77,13 @@ module Aws::AppConfig | |
| 73 77 | 
             
                add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
         | 
| 74 78 | 
             
                add_plugin(Aws::Plugins::TransferEncoding)
         | 
| 75 79 | 
             
                add_plugin(Aws::Plugins::HttpChecksum)
         | 
| 76 | 
            -
                add_plugin(Aws::Plugins:: | 
| 80 | 
            +
                add_plugin(Aws::Plugins::ChecksumAlgorithm)
         | 
| 81 | 
            +
                add_plugin(Aws::Plugins::RequestCompression)
         | 
| 82 | 
            +
                add_plugin(Aws::Plugins::DefaultsMode)
         | 
| 83 | 
            +
                add_plugin(Aws::Plugins::RecursionDetection)
         | 
| 84 | 
            +
                add_plugin(Aws::Plugins::Sign)
         | 
| 77 85 | 
             
                add_plugin(Aws::Plugins::Protocols::RestJson)
         | 
| 86 | 
            +
                add_plugin(Aws::AppConfig::Plugins::Endpoints)
         | 
| 78 87 |  | 
| 79 88 | 
             
                # @overload initialize(options)
         | 
| 80 89 | 
             
                #   @param [Hash] options
         | 
| @@ -175,10 +184,18 @@ module Aws::AppConfig | |
| 175 184 | 
             
                #     Used only in `standard` and adaptive retry modes. Specifies whether to apply
         | 
| 176 185 | 
             
                #     a clock skew correction and retry requests with skewed client clocks.
         | 
| 177 186 | 
             
                #
         | 
| 187 | 
            +
                #   @option options [String] :defaults_mode ("legacy")
         | 
| 188 | 
            +
                #     See {Aws::DefaultsModeConfiguration} for a list of the
         | 
| 189 | 
            +
                #     accepted modes and the configuration defaults that are included.
         | 
| 190 | 
            +
                #
         | 
| 178 191 | 
             
                #   @option options [Boolean] :disable_host_prefix_injection (false)
         | 
| 179 192 | 
             
                #     Set to true to disable SDK automatically adding host prefix
         | 
| 180 193 | 
             
                #     to default service endpoint when available.
         | 
| 181 194 | 
             
                #
         | 
| 195 | 
            +
                #   @option options [Boolean] :disable_request_compression (false)
         | 
| 196 | 
            +
                #     When set to 'true' the request body will not be compressed
         | 
| 197 | 
            +
                #     for supported operations.
         | 
| 198 | 
            +
                #
         | 
| 182 199 | 
             
                #   @option options [String] :endpoint
         | 
| 183 200 | 
             
                #     The client endpoint is normally constructed from the `:region`
         | 
| 184 201 | 
             
                #     option. You should only configure an `:endpoint` when connecting
         | 
| @@ -199,6 +216,10 @@ module Aws::AppConfig | |
| 199 216 | 
             
                #   @option options [Boolean] :endpoint_discovery (false)
         | 
| 200 217 | 
             
                #     When set to `true`, endpoint discovery will be enabled for operations when available.
         | 
| 201 218 | 
             
                #
         | 
| 219 | 
            +
                #   @option options [Boolean] :ignore_configured_endpoint_urls
         | 
| 220 | 
            +
                #     Setting to true disables use of endpoint URLs provided via environment
         | 
| 221 | 
            +
                #     variables and the shared configuration file.
         | 
| 222 | 
            +
                #
         | 
| 202 223 | 
             
                #   @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
         | 
| 203 224 | 
             
                #     The log formatter.
         | 
| 204 225 | 
             
                #
         | 
| @@ -219,6 +240,11 @@ module Aws::AppConfig | |
| 219 240 | 
             
                #     Used when loading credentials from the shared credentials file
         | 
| 220 241 | 
             
                #     at HOME/.aws/credentials.  When not specified, 'default' is used.
         | 
| 221 242 | 
             
                #
         | 
| 243 | 
            +
                #   @option options [Integer] :request_min_compression_size_bytes (10240)
         | 
| 244 | 
            +
                #     The minimum size in bytes that triggers compression for request
         | 
| 245 | 
            +
                #     bodies. The value must be non-negative integer value between 0
         | 
| 246 | 
            +
                #     and 10485780 bytes inclusive.
         | 
| 247 | 
            +
                #
         | 
| 222 248 | 
             
                #   @option options [Proc] :retry_backoff
         | 
| 223 249 | 
             
                #     A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
         | 
| 224 250 | 
             
                #     This option is only used in the `legacy` retry mode.
         | 
| @@ -264,6 +290,11 @@ module Aws::AppConfig | |
| 264 290 | 
             
                #       in the future.
         | 
| 265 291 | 
             
                #
         | 
| 266 292 | 
             
                #
         | 
| 293 | 
            +
                #   @option options [String] :sdk_ua_app_id
         | 
| 294 | 
            +
                #     A unique and opaque application ID that is appended to the
         | 
| 295 | 
            +
                #     User-Agent header as app/<sdk_ua_app_id>. It should have a
         | 
| 296 | 
            +
                #     maximum length of 50.
         | 
| 297 | 
            +
                #
         | 
| 267 298 | 
             
                #   @option options [String] :secret_access_key
         | 
| 268 299 | 
             
                #
         | 
| 269 300 | 
             
                #   @option options [String] :session_token
         | 
| @@ -277,6 +308,19 @@ module Aws::AppConfig | |
| 277 308 | 
             
                #     ** Please note ** When response stubbing is enabled, no HTTP
         | 
| 278 309 | 
             
                #     requests are made, and retries are disabled.
         | 
| 279 310 | 
             
                #
         | 
| 311 | 
            +
                #   @option options [Aws::TokenProvider] :token_provider
         | 
| 312 | 
            +
                #     A Bearer Token Provider. This can be an instance of any one of the
         | 
| 313 | 
            +
                #     following classes:
         | 
| 314 | 
            +
                #
         | 
| 315 | 
            +
                #     * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
         | 
| 316 | 
            +
                #       tokens.
         | 
| 317 | 
            +
                #
         | 
| 318 | 
            +
                #     * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
         | 
| 319 | 
            +
                #       access token generated from `aws login`.
         | 
| 320 | 
            +
                #
         | 
| 321 | 
            +
                #     When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
         | 
| 322 | 
            +
                #     will be used to search for tokens configured for your profile in shared configuration files.
         | 
| 323 | 
            +
                #
         | 
| 280 324 | 
             
                #   @option options [Boolean] :use_dualstack_endpoint
         | 
| 281 325 | 
             
                #     When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
         | 
| 282 326 | 
             
                #     will be used if available.
         | 
| @@ -290,6 +334,9 @@ module Aws::AppConfig | |
| 290 334 | 
             
                #     When `true`, request parameters are validated before
         | 
| 291 335 | 
             
                #     sending the request.
         | 
| 292 336 | 
             
                #
         | 
| 337 | 
            +
                #   @option options [Aws::AppConfig::EndpointProvider] :endpoint_provider
         | 
| 338 | 
            +
                #     The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::AppConfig::EndpointParameters`
         | 
| 339 | 
            +
                #
         | 
| 293 340 | 
             
                #   @option options [URI::HTTP,String] :http_proxy A proxy to send
         | 
| 294 341 | 
             
                #     requests through.  Formatted like 'http://proxy.com:123'.
         | 
| 295 342 | 
             
                #
         | 
| @@ -297,7 +344,7 @@ module Aws::AppConfig | |
| 297 344 | 
             
                #     seconds to wait when opening a HTTP session before raising a
         | 
| 298 345 | 
             
                #     `Timeout::Error`.
         | 
| 299 346 | 
             
                #
         | 
| 300 | 
            -
                #   @option options [ | 
| 347 | 
            +
                #   @option options [Float] :http_read_timeout (60) The default
         | 
| 301 348 | 
             
                #     number of seconds to wait for response data.  This value can
         | 
| 302 349 | 
             
                #     safely be set per-request on the session.
         | 
| 303 350 | 
             
                #
         | 
| @@ -313,6 +360,9 @@ module Aws::AppConfig | |
| 313 360 | 
             
                #     disables this behaviour.  This value can safely be set per
         | 
| 314 361 | 
             
                #     request on the session.
         | 
| 315 362 | 
             
                #
         | 
| 363 | 
            +
                #   @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
         | 
| 364 | 
            +
                #     in seconds.
         | 
| 365 | 
            +
                #
         | 
| 316 366 | 
             
                #   @option options [Boolean] :http_wire_trace (false) When `true`,
         | 
| 317 367 | 
             
                #     HTTP debug output will be sent to the `:logger`.
         | 
| 318 368 | 
             
                #
         | 
| @@ -338,12 +388,11 @@ module Aws::AppConfig | |
| 338 388 |  | 
| 339 389 | 
             
                # @!group API Operations
         | 
| 340 390 |  | 
| 341 | 
            -
                # Creates an application.  | 
| 342 | 
            -
                #  | 
| 343 | 
            -
                #  | 
| 344 | 
            -
                #  | 
| 345 | 
            -
                #  | 
| 346 | 
            -
                # of others.
         | 
| 391 | 
            +
                # Creates an application. In AppConfig, an application is simply an
         | 
| 392 | 
            +
                # organizational construct like a folder. This organizational construct
         | 
| 393 | 
            +
                # has a relationship with some unit of executable code. For example, you
         | 
| 394 | 
            +
                # could create an application called MyMobileApp to organize and manage
         | 
| 395 | 
            +
                # configuration data for a mobile application installed by your users.
         | 
| 347 396 | 
             
                #
         | 
| 348 397 | 
             
                # @option params [required, String] :name
         | 
| 349 398 | 
             
                #   A name for the application.
         | 
| @@ -406,11 +455,25 @@ module Aws::AppConfig | |
| 406 455 |  | 
| 407 456 | 
             
                # Creates a configuration profile, which is information that enables
         | 
| 408 457 | 
             
                # AppConfig to access the configuration source. Valid configuration
         | 
| 409 | 
            -
                # sources include the  | 
| 410 | 
            -
                # | 
| 411 | 
            -
                #  | 
| 412 | 
            -
                #  | 
| 413 | 
            -
                # | 
| 458 | 
            +
                # sources include the following:
         | 
| 459 | 
            +
                #
         | 
| 460 | 
            +
                # * Configuration data in YAML, JSON, and other formats stored in the
         | 
| 461 | 
            +
                #   AppConfig hosted configuration store
         | 
| 462 | 
            +
                #
         | 
| 463 | 
            +
                # * Configuration data stored as objects in an Amazon Simple Storage
         | 
| 464 | 
            +
                #   Service (Amazon S3) bucket
         | 
| 465 | 
            +
                #
         | 
| 466 | 
            +
                # * Pipelines stored in CodePipeline
         | 
| 467 | 
            +
                #
         | 
| 468 | 
            +
                # * Secrets stored in Secrets Manager
         | 
| 469 | 
            +
                #
         | 
| 470 | 
            +
                # * Standard and secure string parameters stored in Amazon Web Services
         | 
| 471 | 
            +
                #   Systems Manager Parameter Store
         | 
| 472 | 
            +
                #
         | 
| 473 | 
            +
                # * Configuration data in SSM documents stored in the Systems Manager
         | 
| 474 | 
            +
                #   document store
         | 
| 475 | 
            +
                #
         | 
| 476 | 
            +
                # A configuration profile includes the following information:
         | 
| 414 477 | 
             
                #
         | 
| 415 478 | 
             
                # * The URI location of the configuration data.
         | 
| 416 479 | 
             
                #
         | 
| @@ -418,15 +481,14 @@ module Aws::AppConfig | |
| 418 481 | 
             
                #   to the configuration data.
         | 
| 419 482 | 
             
                #
         | 
| 420 483 | 
             
                # * A validator for the configuration data. Available validators include
         | 
| 421 | 
            -
                #   either a JSON Schema or an Lambda function.
         | 
| 484 | 
            +
                #   either a JSON Schema or an Amazon Web Services Lambda function.
         | 
| 422 485 | 
             
                #
         | 
| 423 486 | 
             
                # For more information, see [Create a Configuration and a Configuration
         | 
| 424 | 
            -
                # Profile][ | 
| 487 | 
            +
                # Profile][1] in the *AppConfig User Guide*.
         | 
| 425 488 | 
             
                #
         | 
| 426 489 | 
             
                #
         | 
| 427 490 | 
             
                #
         | 
| 428 | 
            -
                # [1]: http://docs.aws.amazon.com/ | 
| 429 | 
            -
                # [2]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-configuration-and-profile.html
         | 
| 491 | 
            +
                # [1]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-configuration-and-profile.html
         | 
| 430 492 | 
             
                #
         | 
| 431 493 | 
             
                # @option params [required, String] :application_id
         | 
| 432 494 | 
             
                #   The application ID.
         | 
| @@ -438,17 +500,27 @@ module Aws::AppConfig | |
| 438 500 | 
             
                #   A description of the configuration profile.
         | 
| 439 501 | 
             
                #
         | 
| 440 502 | 
             
                # @option params [required, String] :location_uri
         | 
| 441 | 
            -
                #   A URI to locate the configuration. You can specify the  | 
| 442 | 
            -
                # | 
| 443 | 
            -
                #    | 
| 444 | 
            -
                # | 
| 445 | 
            -
                # | 
| 446 | 
            -
                #    | 
| 447 | 
            -
                # | 
| 448 | 
            -
                # | 
| 449 | 
            -
                # | 
| 450 | 
            -
                #    | 
| 451 | 
            -
                # | 
| 503 | 
            +
                #   A URI to locate the configuration. You can specify the following:
         | 
| 504 | 
            +
                #
         | 
| 505 | 
            +
                #   * For the AppConfig hosted configuration store and for feature flags,
         | 
| 506 | 
            +
                #     specify `hosted`.
         | 
| 507 | 
            +
                #
         | 
| 508 | 
            +
                #   * For an Amazon Web Services Systems Manager Parameter Store
         | 
| 509 | 
            +
                #     parameter, specify either the parameter name in the format
         | 
| 510 | 
            +
                #     `ssm-parameter://<parameter name>` or the ARN.
         | 
| 511 | 
            +
                #
         | 
| 512 | 
            +
                #   * For an Amazon Web Services CodePipeline pipeline, specify the URI in
         | 
| 513 | 
            +
                #     the following format: `codepipeline`://<pipeline name>.
         | 
| 514 | 
            +
                #
         | 
| 515 | 
            +
                #   * For an Secrets Manager secret, specify the URI in the following
         | 
| 516 | 
            +
                #     format: `secretsmanager`://<secret name>.
         | 
| 517 | 
            +
                #
         | 
| 518 | 
            +
                #   * For an Amazon S3 object, specify the URI in the following format:
         | 
| 519 | 
            +
                #     `s3://<bucket>/<objectKey> `. Here is an example:
         | 
| 520 | 
            +
                #     `s3://my-bucket/my-app/us-east-1/my-config.json`
         | 
| 521 | 
            +
                #
         | 
| 522 | 
            +
                #   * For an SSM document, specify either the document name in the format
         | 
| 523 | 
            +
                #     `ssm-document://<document name>` or the Amazon Resource Name (ARN).
         | 
| 452 524 | 
             
                #
         | 
| 453 525 | 
             
                # @option params [String] :retrieval_role_arn
         | 
| 454 526 | 
             
                #   The ARN of an IAM role with permission to access the configuration at
         | 
| @@ -467,10 +539,25 @@ module Aws::AppConfig | |
| 467 539 | 
             
                #   and an optional value, both of which you define.
         | 
| 468 540 | 
             
                #
         | 
| 469 541 | 
             
                # @option params [String] :type
         | 
| 470 | 
            -
                #   The type of configurations  | 
| 471 | 
            -
                #    | 
| 472 | 
            -
                #    | 
| 473 | 
            -
                #   configurations to  | 
| 542 | 
            +
                #   The type of configurations contained in the profile. AppConfig
         | 
| 543 | 
            +
                #   supports `feature flags` and `freeform` configurations. We recommend
         | 
| 544 | 
            +
                #   you create feature flag configurations to enable or disable new
         | 
| 545 | 
            +
                #   features and freeform configurations to distribute configurations to
         | 
| 546 | 
            +
                #   an application. When calling this API, enter one of the following
         | 
| 547 | 
            +
                #   values for `Type`:
         | 
| 548 | 
            +
                #
         | 
| 549 | 
            +
                #   `AWS.AppConfig.FeatureFlags`
         | 
| 550 | 
            +
                #
         | 
| 551 | 
            +
                #   `AWS.Freeform`
         | 
| 552 | 
            +
                #
         | 
| 553 | 
            +
                # @option params [String] :kms_key_identifier
         | 
| 554 | 
            +
                #   The identifier for an Key Management Service key to encrypt new
         | 
| 555 | 
            +
                #   configuration data versions in the AppConfig hosted configuration
         | 
| 556 | 
            +
                #   store. This attribute is only used for `hosted` configuration types.
         | 
| 557 | 
            +
                #   The identifier can be an KMS key ID, alias, or the Amazon Resource
         | 
| 558 | 
            +
                #   Name (ARN) of the key ID or alias. To encrypt data managed in other
         | 
| 559 | 
            +
                #   configuration stores, see the documentation for how to specify an KMS
         | 
| 560 | 
            +
                #   key for that particular service.
         | 
| 474 561 | 
             
                #
         | 
| 475 562 | 
             
                # @return [Types::ConfigurationProfile] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 476 563 | 
             
                #
         | 
| @@ -482,6 +569,8 @@ module Aws::AppConfig | |
| 482 569 | 
             
                #   * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
         | 
| 483 570 | 
             
                #   * {Types::ConfigurationProfile#validators #validators} => Array<Types::Validator>
         | 
| 484 571 | 
             
                #   * {Types::ConfigurationProfile#type #type} => String
         | 
| 572 | 
            +
                #   * {Types::ConfigurationProfile#kms_key_arn #kms_key_arn} => String
         | 
| 573 | 
            +
                #   * {Types::ConfigurationProfile#kms_key_identifier #kms_key_identifier} => String
         | 
| 485 574 | 
             
                #
         | 
| 486 575 | 
             
                #
         | 
| 487 576 | 
             
                # @example Example: To create a configuration profile
         | 
| @@ -509,7 +598,7 @@ module Aws::AppConfig | |
| 509 598 | 
             
                #
         | 
| 510 599 | 
             
                #   resp = client.create_configuration_profile({
         | 
| 511 600 | 
             
                #     application_id: "Id", # required
         | 
| 512 | 
            -
                #     name: " | 
| 601 | 
            +
                #     name: "LongName", # required
         | 
| 513 602 | 
             
                #     description: "Description",
         | 
| 514 603 | 
             
                #     location_uri: "Uri", # required
         | 
| 515 604 | 
             
                #     retrieval_role_arn: "RoleArn",
         | 
| @@ -523,6 +612,7 @@ module Aws::AppConfig | |
| 523 612 | 
             
                #       "TagKey" => "TagValue",
         | 
| 524 613 | 
             
                #     },
         | 
| 525 614 | 
             
                #     type: "ConfigurationProfileType",
         | 
| 615 | 
            +
                #     kms_key_identifier: "KmsKeyIdentifier",
         | 
| 526 616 | 
             
                #   })
         | 
| 527 617 | 
             
                #
         | 
| 528 618 | 
             
                # @example Response structure
         | 
| @@ -537,6 +627,8 @@ module Aws::AppConfig | |
| 537 627 | 
             
                #   resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
         | 
| 538 628 | 
             
                #   resp.validators[0].content #=> String
         | 
| 539 629 | 
             
                #   resp.type #=> String
         | 
| 630 | 
            +
                #   resp.kms_key_arn #=> String
         | 
| 631 | 
            +
                #   resp.kms_key_identifier #=> String
         | 
| 540 632 | 
             
                #
         | 
| 541 633 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateConfigurationProfile AWS API Documentation
         | 
| 542 634 | 
             
                #
         | 
| @@ -563,9 +655,18 @@ module Aws::AppConfig | |
| 563 655 | 
             
                #   Total amount of time for a deployment to last.
         | 
| 564 656 | 
             
                #
         | 
| 565 657 | 
             
                # @option params [Integer] :final_bake_time_in_minutes
         | 
| 566 | 
            -
                #    | 
| 567 | 
            -
                #    | 
| 568 | 
            -
                #    | 
| 658 | 
            +
                #   Specifies the amount of time AppConfig monitors for Amazon CloudWatch
         | 
| 659 | 
            +
                #   alarms after the configuration has been deployed to 100% of its
         | 
| 660 | 
            +
                #   targets, before considering the deployment to be complete. If an alarm
         | 
| 661 | 
            +
                #   is triggered during this time, AppConfig rolls back the deployment.
         | 
| 662 | 
            +
                #   You must configure permissions for AppConfig to roll back based on
         | 
| 663 | 
            +
                #   CloudWatch alarms. For more information, see [Configuring permissions
         | 
| 664 | 
            +
                #   for rollback based on Amazon CloudWatch alarms][1] in the *AppConfig
         | 
| 665 | 
            +
                #   User Guide*.
         | 
| 666 | 
            +
                #
         | 
| 667 | 
            +
                #
         | 
| 668 | 
            +
                #
         | 
| 669 | 
            +
                #   [1]: https://docs.aws.amazon.com/appconfig/latest/userguide/getting-started-with-appconfig-cloudwatch-alarms-permissions.html
         | 
| 569 670 | 
             
                #
         | 
| 570 671 | 
             
                # @option params [required, Float] :growth_factor
         | 
| 571 672 | 
             
                #   The percentage of targets to receive a deployed configuration during
         | 
| @@ -575,7 +676,7 @@ module Aws::AppConfig | |
| 575 676 | 
             
                #   The algorithm used to define how percentage grows over time. AppConfig
         | 
| 576 677 | 
             
                #   supports the following growth types:
         | 
| 577 678 | 
             
                #
         | 
| 578 | 
            -
                #   **Linear | 
| 679 | 
            +
                #   **Linear**: For this type, AppConfig processes the deployment by
         | 
| 579 680 | 
             
                #   dividing the total number of targets by the value specified for `Step
         | 
| 580 681 | 
             
                #   percentage`. For example, a linear deployment that uses a `Step
         | 
| 581 682 | 
             
                #   percentage` of 10 deploys the configuration to 10 percent of the
         | 
| @@ -583,7 +684,7 @@ module Aws::AppConfig | |
| 583 684 | 
             
                #   configuration to the next 10 percent. This continues until 100% of the
         | 
| 584 685 | 
             
                #   targets have successfully received the configuration.
         | 
| 585 686 | 
             
                #
         | 
| 586 | 
            -
                #   **Exponential | 
| 687 | 
            +
                #   **Exponential**: For this type, AppConfig processes the deployment
         | 
| 587 688 | 
             
                #   exponentially using the following formula: `G*(2^N)`. In this formula,
         | 
| 588 689 | 
             
                #   `G` is the growth factor specified by the user and `N` is the number
         | 
| 589 690 | 
             
                #   of steps until the configuration is deployed to all targets. For
         | 
| @@ -600,7 +701,7 @@ module Aws::AppConfig | |
| 600 701 | 
             
                #   targets, 4% of the targets, 8% of the targets, and continues until the
         | 
| 601 702 | 
             
                #   configuration has been deployed to all targets.
         | 
| 602 703 | 
             
                #
         | 
| 603 | 
            -
                # @option params [ | 
| 704 | 
            +
                # @option params [String] :replicate_to
         | 
| 604 705 | 
             
                #   Save the deployment strategy to a Systems Manager (SSM) document.
         | 
| 605 706 | 
             
                #
         | 
| 606 707 | 
             
                # @option params [Hash<String,String>] :tags
         | 
| @@ -653,7 +754,7 @@ module Aws::AppConfig | |
| 653 754 | 
             
                #     final_bake_time_in_minutes: 1,
         | 
| 654 755 | 
             
                #     growth_factor: 1.0, # required
         | 
| 655 756 | 
             
                #     growth_type: "LINEAR", # accepts LINEAR, EXPONENTIAL
         | 
| 656 | 
            -
                #     replicate_to: "NONE", #  | 
| 757 | 
            +
                #     replicate_to: "NONE", # accepts NONE, SSM_DOCUMENT
         | 
| 657 758 | 
             
                #     tags: {
         | 
| 658 759 | 
             
                #       "TagKey" => "TagValue",
         | 
| 659 760 | 
             
                #     },
         | 
| @@ -680,14 +781,13 @@ module Aws::AppConfig | |
| 680 781 | 
             
                end
         | 
| 681 782 |  | 
| 682 783 | 
             
                # Creates an environment. For each application, you define one or more
         | 
| 683 | 
            -
                # environments. An environment is a  | 
| 684 | 
            -
                #  | 
| 685 | 
            -
                #  | 
| 686 | 
            -
                #  | 
| 687 | 
            -
                #  | 
| 688 | 
            -
                #  | 
| 689 | 
            -
                #  | 
| 690 | 
            -
                # configuration.
         | 
| 784 | 
            +
                # environments. An environment is a deployment group of AppConfig
         | 
| 785 | 
            +
                # targets, such as applications in a `Beta` or `Production` environment.
         | 
| 786 | 
            +
                # You can also define environments for application subcomponents such as
         | 
| 787 | 
            +
                # the `Web`, `Mobile` and `Back-end` components for your application.
         | 
| 788 | 
            +
                # You can configure Amazon CloudWatch alarms for each environment. The
         | 
| 789 | 
            +
                # system monitors alarms during a configuration deployment. If an alarm
         | 
| 790 | 
            +
                # is triggered, the system rolls back the configuration.
         | 
| 691 791 | 
             
                #
         | 
| 692 792 | 
             
                # @option params [required, String] :application_id
         | 
| 693 793 | 
             
                #   The application ID.
         | 
| @@ -771,6 +871,203 @@ module Aws::AppConfig | |
| 771 871 | 
             
                  req.send_request(options)
         | 
| 772 872 | 
             
                end
         | 
| 773 873 |  | 
| 874 | 
            +
                # Creates an AppConfig extension. An extension augments your ability to
         | 
| 875 | 
            +
                # inject logic or behavior at different points during the AppConfig
         | 
| 876 | 
            +
                # workflow of creating or deploying a configuration.
         | 
| 877 | 
            +
                #
         | 
| 878 | 
            +
                # You can create your own extensions or use the Amazon Web Services
         | 
| 879 | 
            +
                # authored extensions provided by AppConfig. For an AppConfig extension
         | 
| 880 | 
            +
                # that uses Lambda, you must create a Lambda function to perform any
         | 
| 881 | 
            +
                # computation and processing defined in the extension. If you plan to
         | 
| 882 | 
            +
                # create custom versions of the Amazon Web Services authored
         | 
| 883 | 
            +
                # notification extensions, you only need to specify an Amazon Resource
         | 
| 884 | 
            +
                # Name (ARN) in the `Uri` field for the new extension version.
         | 
| 885 | 
            +
                #
         | 
| 886 | 
            +
                # * For a custom EventBridge notification extension, enter the ARN of
         | 
| 887 | 
            +
                #   the EventBridge default events in the `Uri` field.
         | 
| 888 | 
            +
                #
         | 
| 889 | 
            +
                # * For a custom Amazon SNS notification extension, enter the ARN of an
         | 
| 890 | 
            +
                #   Amazon SNS topic in the `Uri` field.
         | 
| 891 | 
            +
                #
         | 
| 892 | 
            +
                # * For a custom Amazon SQS notification extension, enter the ARN of an
         | 
| 893 | 
            +
                #   Amazon SQS message queue in the `Uri` field.
         | 
| 894 | 
            +
                #
         | 
| 895 | 
            +
                # For more information about extensions, see [Working with AppConfig
         | 
| 896 | 
            +
                # extensions][1] in the *AppConfig User Guide*.
         | 
| 897 | 
            +
                #
         | 
| 898 | 
            +
                #
         | 
| 899 | 
            +
                #
         | 
| 900 | 
            +
                # [1]: https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html
         | 
| 901 | 
            +
                #
         | 
| 902 | 
            +
                # @option params [required, String] :name
         | 
| 903 | 
            +
                #   A name for the extension. Each extension name in your account must be
         | 
| 904 | 
            +
                #   unique. Extension versions use the same name.
         | 
| 905 | 
            +
                #
         | 
| 906 | 
            +
                # @option params [String] :description
         | 
| 907 | 
            +
                #   Information about the extension.
         | 
| 908 | 
            +
                #
         | 
| 909 | 
            +
                # @option params [required, Hash<String,Array>] :actions
         | 
| 910 | 
            +
                #   The actions defined in the extension.
         | 
| 911 | 
            +
                #
         | 
| 912 | 
            +
                # @option params [Hash<String,Types::Parameter>] :parameters
         | 
| 913 | 
            +
                #   The parameters accepted by the extension. You specify parameter values
         | 
| 914 | 
            +
                #   when you associate the extension to an AppConfig resource by using the
         | 
| 915 | 
            +
                #   `CreateExtensionAssociation` API action. For Lambda extension actions,
         | 
| 916 | 
            +
                #   these parameters are included in the Lambda request object.
         | 
| 917 | 
            +
                #
         | 
| 918 | 
            +
                # @option params [Hash<String,String>] :tags
         | 
| 919 | 
            +
                #   Adds one or more tags for the specified extension. Tags are metadata
         | 
| 920 | 
            +
                #   that help you categorize resources in different ways, for example, by
         | 
| 921 | 
            +
                #   purpose, owner, or environment. Each tag consists of a key and an
         | 
| 922 | 
            +
                #   optional value, both of which you define.
         | 
| 923 | 
            +
                #
         | 
| 924 | 
            +
                # @option params [Integer] :latest_version_number
         | 
| 925 | 
            +
                #   You can omit this field when you create an extension. When you create
         | 
| 926 | 
            +
                #   a new version, specify the most recent current version number. For
         | 
| 927 | 
            +
                #   example, you create version 3, enter 2 for this field.
         | 
| 928 | 
            +
                #
         | 
| 929 | 
            +
                # @return [Types::Extension] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 930 | 
            +
                #
         | 
| 931 | 
            +
                #   * {Types::Extension#id #id} => String
         | 
| 932 | 
            +
                #   * {Types::Extension#name #name} => String
         | 
| 933 | 
            +
                #   * {Types::Extension#version_number #version_number} => Integer
         | 
| 934 | 
            +
                #   * {Types::Extension#arn #arn} => String
         | 
| 935 | 
            +
                #   * {Types::Extension#description #description} => String
         | 
| 936 | 
            +
                #   * {Types::Extension#actions #actions} => Hash<String,Array<Types::Action>>
         | 
| 937 | 
            +
                #   * {Types::Extension#parameters #parameters} => Hash<String,Types::Parameter>
         | 
| 938 | 
            +
                #
         | 
| 939 | 
            +
                # @example Request syntax with placeholder values
         | 
| 940 | 
            +
                #
         | 
| 941 | 
            +
                #   resp = client.create_extension({
         | 
| 942 | 
            +
                #     name: "ExtensionOrParameterName", # required
         | 
| 943 | 
            +
                #     description: "Description",
         | 
| 944 | 
            +
                #     actions: { # required
         | 
| 945 | 
            +
                #       "PRE_CREATE_HOSTED_CONFIGURATION_VERSION" => [
         | 
| 946 | 
            +
                #         {
         | 
| 947 | 
            +
                #           name: "Name",
         | 
| 948 | 
            +
                #           description: "Description",
         | 
| 949 | 
            +
                #           uri: "Uri",
         | 
| 950 | 
            +
                #           role_arn: "Arn",
         | 
| 951 | 
            +
                #         },
         | 
| 952 | 
            +
                #       ],
         | 
| 953 | 
            +
                #     },
         | 
| 954 | 
            +
                #     parameters: {
         | 
| 955 | 
            +
                #       "ExtensionOrParameterName" => {
         | 
| 956 | 
            +
                #         description: "Description",
         | 
| 957 | 
            +
                #         required: false,
         | 
| 958 | 
            +
                #       },
         | 
| 959 | 
            +
                #     },
         | 
| 960 | 
            +
                #     tags: {
         | 
| 961 | 
            +
                #       "TagKey" => "TagValue",
         | 
| 962 | 
            +
                #     },
         | 
| 963 | 
            +
                #     latest_version_number: 1,
         | 
| 964 | 
            +
                #   })
         | 
| 965 | 
            +
                #
         | 
| 966 | 
            +
                # @example Response structure
         | 
| 967 | 
            +
                #
         | 
| 968 | 
            +
                #   resp.id #=> String
         | 
| 969 | 
            +
                #   resp.name #=> String
         | 
| 970 | 
            +
                #   resp.version_number #=> Integer
         | 
| 971 | 
            +
                #   resp.arn #=> String
         | 
| 972 | 
            +
                #   resp.description #=> String
         | 
| 973 | 
            +
                #   resp.actions #=> Hash
         | 
| 974 | 
            +
                #   resp.actions["ActionPoint"] #=> Array
         | 
| 975 | 
            +
                #   resp.actions["ActionPoint"][0].name #=> String
         | 
| 976 | 
            +
                #   resp.actions["ActionPoint"][0].description #=> String
         | 
| 977 | 
            +
                #   resp.actions["ActionPoint"][0].uri #=> String
         | 
| 978 | 
            +
                #   resp.actions["ActionPoint"][0].role_arn #=> String
         | 
| 979 | 
            +
                #   resp.parameters #=> Hash
         | 
| 980 | 
            +
                #   resp.parameters["ExtensionOrParameterName"].description #=> String
         | 
| 981 | 
            +
                #   resp.parameters["ExtensionOrParameterName"].required #=> Boolean
         | 
| 982 | 
            +
                #
         | 
| 983 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateExtension AWS API Documentation
         | 
| 984 | 
            +
                #
         | 
| 985 | 
            +
                # @overload create_extension(params = {})
         | 
| 986 | 
            +
                # @param [Hash] params ({})
         | 
| 987 | 
            +
                def create_extension(params = {}, options = {})
         | 
| 988 | 
            +
                  req = build_request(:create_extension, params)
         | 
| 989 | 
            +
                  req.send_request(options)
         | 
| 990 | 
            +
                end
         | 
| 991 | 
            +
             | 
| 992 | 
            +
                # When you create an extension or configure an Amazon Web Services
         | 
| 993 | 
            +
                # authored extension, you associate the extension with an AppConfig
         | 
| 994 | 
            +
                # application, environment, or configuration profile. For example, you
         | 
| 995 | 
            +
                # can choose to run the `AppConfig deployment events to Amazon SNS`
         | 
| 996 | 
            +
                # Amazon Web Services authored extension and receive notifications on an
         | 
| 997 | 
            +
                # Amazon SNS topic anytime a configuration deployment is started for a
         | 
| 998 | 
            +
                # specific application. Defining which extension to associate with an
         | 
| 999 | 
            +
                # AppConfig resource is called an *extension association*. An extension
         | 
| 1000 | 
            +
                # association is a specified relationship between an extension and an
         | 
| 1001 | 
            +
                # AppConfig resource, such as an application or a configuration profile.
         | 
| 1002 | 
            +
                # For more information about extensions and associations, see [Working
         | 
| 1003 | 
            +
                # with AppConfig extensions][1] in the *AppConfig User Guide*.
         | 
| 1004 | 
            +
                #
         | 
| 1005 | 
            +
                #
         | 
| 1006 | 
            +
                #
         | 
| 1007 | 
            +
                # [1]: https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html
         | 
| 1008 | 
            +
                #
         | 
| 1009 | 
            +
                # @option params [required, String] :extension_identifier
         | 
| 1010 | 
            +
                #   The name, the ID, or the Amazon Resource Name (ARN) of the extension.
         | 
| 1011 | 
            +
                #
         | 
| 1012 | 
            +
                # @option params [Integer] :extension_version_number
         | 
| 1013 | 
            +
                #   The version number of the extension. If not specified, AppConfig uses
         | 
| 1014 | 
            +
                #   the maximum version of the extension.
         | 
| 1015 | 
            +
                #
         | 
| 1016 | 
            +
                # @option params [required, String] :resource_identifier
         | 
| 1017 | 
            +
                #   The ARN of an application, configuration profile, or environment.
         | 
| 1018 | 
            +
                #
         | 
| 1019 | 
            +
                # @option params [Hash<String,String>] :parameters
         | 
| 1020 | 
            +
                #   The parameter names and values defined in the extensions. Extension
         | 
| 1021 | 
            +
                #   parameters marked `Required` must be entered for this field.
         | 
| 1022 | 
            +
                #
         | 
| 1023 | 
            +
                # @option params [Hash<String,String>] :tags
         | 
| 1024 | 
            +
                #   Adds one or more tags for the specified extension association. Tags
         | 
| 1025 | 
            +
                #   are metadata that help you categorize resources in different ways, for
         | 
| 1026 | 
            +
                #   example, by purpose, owner, or environment. Each tag consists of a key
         | 
| 1027 | 
            +
                #   and an optional value, both of which you define.
         | 
| 1028 | 
            +
                #
         | 
| 1029 | 
            +
                # @return [Types::ExtensionAssociation] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 1030 | 
            +
                #
         | 
| 1031 | 
            +
                #   * {Types::ExtensionAssociation#id #id} => String
         | 
| 1032 | 
            +
                #   * {Types::ExtensionAssociation#extension_arn #extension_arn} => String
         | 
| 1033 | 
            +
                #   * {Types::ExtensionAssociation#resource_arn #resource_arn} => String
         | 
| 1034 | 
            +
                #   * {Types::ExtensionAssociation#arn #arn} => String
         | 
| 1035 | 
            +
                #   * {Types::ExtensionAssociation#parameters #parameters} => Hash<String,String>
         | 
| 1036 | 
            +
                #   * {Types::ExtensionAssociation#extension_version_number #extension_version_number} => Integer
         | 
| 1037 | 
            +
                #
         | 
| 1038 | 
            +
                # @example Request syntax with placeholder values
         | 
| 1039 | 
            +
                #
         | 
| 1040 | 
            +
                #   resp = client.create_extension_association({
         | 
| 1041 | 
            +
                #     extension_identifier: "Identifier", # required
         | 
| 1042 | 
            +
                #     extension_version_number: 1,
         | 
| 1043 | 
            +
                #     resource_identifier: "Identifier", # required
         | 
| 1044 | 
            +
                #     parameters: {
         | 
| 1045 | 
            +
                #       "ExtensionOrParameterName" => "StringWithLengthBetween1And2048",
         | 
| 1046 | 
            +
                #     },
         | 
| 1047 | 
            +
                #     tags: {
         | 
| 1048 | 
            +
                #       "TagKey" => "TagValue",
         | 
| 1049 | 
            +
                #     },
         | 
| 1050 | 
            +
                #   })
         | 
| 1051 | 
            +
                #
         | 
| 1052 | 
            +
                # @example Response structure
         | 
| 1053 | 
            +
                #
         | 
| 1054 | 
            +
                #   resp.id #=> String
         | 
| 1055 | 
            +
                #   resp.extension_arn #=> String
         | 
| 1056 | 
            +
                #   resp.resource_arn #=> String
         | 
| 1057 | 
            +
                #   resp.arn #=> String
         | 
| 1058 | 
            +
                #   resp.parameters #=> Hash
         | 
| 1059 | 
            +
                #   resp.parameters["ExtensionOrParameterName"] #=> String
         | 
| 1060 | 
            +
                #   resp.extension_version_number #=> Integer
         | 
| 1061 | 
            +
                #
         | 
| 1062 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateExtensionAssociation AWS API Documentation
         | 
| 1063 | 
            +
                #
         | 
| 1064 | 
            +
                # @overload create_extension_association(params = {})
         | 
| 1065 | 
            +
                # @param [Hash] params ({})
         | 
| 1066 | 
            +
                def create_extension_association(params = {}, options = {})
         | 
| 1067 | 
            +
                  req = build_request(:create_extension_association, params)
         | 
| 1068 | 
            +
                  req.send_request(options)
         | 
| 1069 | 
            +
                end
         | 
| 1070 | 
            +
             | 
| 774 1071 | 
             
                # Creates a new configuration in the AppConfig hosted configuration
         | 
| 775 1072 | 
             
                # store.
         | 
| 776 1073 | 
             
                #
         | 
| @@ -801,6 +1098,11 @@ module Aws::AppConfig | |
| 801 1098 | 
             
                #   configuration versions in rapid succession, specify the version number
         | 
| 802 1099 | 
             
                #   of the latest hosted configuration version.
         | 
| 803 1100 | 
             
                #
         | 
| 1101 | 
            +
                # @option params [String] :version_label
         | 
| 1102 | 
            +
                #   An optional, user-defined label for the AppConfig hosted configuration
         | 
| 1103 | 
            +
                #   version. This value must contain at least one non-numeric character.
         | 
| 1104 | 
            +
                #   For example, "v2.2.0".
         | 
| 1105 | 
            +
                #
         | 
| 804 1106 | 
             
                # @return [Types::HostedConfigurationVersion] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 805 1107 | 
             
                #
         | 
| 806 1108 | 
             
                #   * {Types::HostedConfigurationVersion#application_id #application_id} => String
         | 
| @@ -809,6 +1111,8 @@ module Aws::AppConfig | |
| 809 1111 | 
             
                #   * {Types::HostedConfigurationVersion#description #description} => String
         | 
| 810 1112 | 
             
                #   * {Types::HostedConfigurationVersion#content #content} => String
         | 
| 811 1113 | 
             
                #   * {Types::HostedConfigurationVersion#content_type #content_type} => String
         | 
| 1114 | 
            +
                #   * {Types::HostedConfigurationVersion#version_label #version_label} => String
         | 
| 1115 | 
            +
                #   * {Types::HostedConfigurationVersion#kms_key_arn #kms_key_arn} => String
         | 
| 812 1116 | 
             
                #
         | 
| 813 1117 | 
             
                #
         | 
| 814 1118 | 
             
                # @example Example: To create a hosted configuration version
         | 
| @@ -841,6 +1145,7 @@ module Aws::AppConfig | |
| 841 1145 | 
             
                #     content: "data", # required
         | 
| 842 1146 | 
             
                #     content_type: "StringWithLengthBetween1And255", # required
         | 
| 843 1147 | 
             
                #     latest_version_number: 1,
         | 
| 1148 | 
            +
                #     version_label: "VersionLabel",
         | 
| 844 1149 | 
             
                #   })
         | 
| 845 1150 | 
             
                #
         | 
| 846 1151 | 
             
                # @example Response structure
         | 
| @@ -851,6 +1156,8 @@ module Aws::AppConfig | |
| 851 1156 | 
             
                #   resp.description #=> String
         | 
| 852 1157 | 
             
                #   resp.content #=> String
         | 
| 853 1158 | 
             
                #   resp.content_type #=> String
         | 
| 1159 | 
            +
                #   resp.version_label #=> String
         | 
| 1160 | 
            +
                #   resp.kms_key_arn #=> String
         | 
| 854 1161 | 
             
                #
         | 
| 855 1162 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateHostedConfigurationVersion AWS API Documentation
         | 
| 856 1163 | 
             
                #
         | 
| @@ -1001,6 +1308,58 @@ module Aws::AppConfig | |
| 1001 1308 | 
             
                  req.send_request(options)
         | 
| 1002 1309 | 
             
                end
         | 
| 1003 1310 |  | 
| 1311 | 
            +
                # Deletes an AppConfig extension. You must delete all associations to an
         | 
| 1312 | 
            +
                # extension before you delete the extension.
         | 
| 1313 | 
            +
                #
         | 
| 1314 | 
            +
                # @option params [required, String] :extension_identifier
         | 
| 1315 | 
            +
                #   The name, ID, or Amazon Resource Name (ARN) of the extension you want
         | 
| 1316 | 
            +
                #   to delete.
         | 
| 1317 | 
            +
                #
         | 
| 1318 | 
            +
                # @option params [Integer] :version_number
         | 
| 1319 | 
            +
                #   A specific version of an extension to delete. If omitted, the highest
         | 
| 1320 | 
            +
                #   version is deleted.
         | 
| 1321 | 
            +
                #
         | 
| 1322 | 
            +
                # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
         | 
| 1323 | 
            +
                #
         | 
| 1324 | 
            +
                # @example Request syntax with placeholder values
         | 
| 1325 | 
            +
                #
         | 
| 1326 | 
            +
                #   resp = client.delete_extension({
         | 
| 1327 | 
            +
                #     extension_identifier: "Identifier", # required
         | 
| 1328 | 
            +
                #     version_number: 1,
         | 
| 1329 | 
            +
                #   })
         | 
| 1330 | 
            +
                #
         | 
| 1331 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteExtension AWS API Documentation
         | 
| 1332 | 
            +
                #
         | 
| 1333 | 
            +
                # @overload delete_extension(params = {})
         | 
| 1334 | 
            +
                # @param [Hash] params ({})
         | 
| 1335 | 
            +
                def delete_extension(params = {}, options = {})
         | 
| 1336 | 
            +
                  req = build_request(:delete_extension, params)
         | 
| 1337 | 
            +
                  req.send_request(options)
         | 
| 1338 | 
            +
                end
         | 
| 1339 | 
            +
             | 
| 1340 | 
            +
                # Deletes an extension association. This action doesn't delete
         | 
| 1341 | 
            +
                # extensions defined in the association.
         | 
| 1342 | 
            +
                #
         | 
| 1343 | 
            +
                # @option params [required, String] :extension_association_id
         | 
| 1344 | 
            +
                #   The ID of the extension association to delete.
         | 
| 1345 | 
            +
                #
         | 
| 1346 | 
            +
                # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
         | 
| 1347 | 
            +
                #
         | 
| 1348 | 
            +
                # @example Request syntax with placeholder values
         | 
| 1349 | 
            +
                #
         | 
| 1350 | 
            +
                #   resp = client.delete_extension_association({
         | 
| 1351 | 
            +
                #     extension_association_id: "Id", # required
         | 
| 1352 | 
            +
                #   })
         | 
| 1353 | 
            +
                #
         | 
| 1354 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/DeleteExtensionAssociation AWS API Documentation
         | 
| 1355 | 
            +
                #
         | 
| 1356 | 
            +
                # @overload delete_extension_association(params = {})
         | 
| 1357 | 
            +
                # @param [Hash] params ({})
         | 
| 1358 | 
            +
                def delete_extension_association(params = {}, options = {})
         | 
| 1359 | 
            +
                  req = build_request(:delete_extension_association, params)
         | 
| 1360 | 
            +
                  req.send_request(options)
         | 
| 1361 | 
            +
                end
         | 
| 1362 | 
            +
             | 
| 1004 1363 | 
             
                # Deletes a version of a configuration from the AppConfig hosted
         | 
| 1005 1364 | 
             
                # configuration store.
         | 
| 1006 1365 | 
             
                #
         | 
| @@ -1091,19 +1450,22 @@ module Aws::AppConfig | |
| 1091 1450 | 
             
                  req.send_request(options)
         | 
| 1092 1451 | 
             
                end
         | 
| 1093 1452 |  | 
| 1094 | 
            -
                # Retrieves  | 
| 1453 | 
            +
                # (Deprecated) Retrieves the latest deployed configuration.
         | 
| 1454 | 
            +
                #
         | 
| 1455 | 
            +
                # Note the following important information.
         | 
| 1456 | 
            +
                #
         | 
| 1457 | 
            +
                #  * This API action is deprecated. Calls to receive configuration data
         | 
| 1458 | 
            +
                #   should use the [StartConfigurationSession][1] and
         | 
| 1459 | 
            +
                #   [GetLatestConfiguration][2] APIs instead.
         | 
| 1460 | 
            +
                #
         | 
| 1461 | 
            +
                # * `GetConfiguration` is a priced call. For more information, see
         | 
| 1462 | 
            +
                #   [Pricing][3].
         | 
| 1463 | 
            +
                #
         | 
| 1095 1464 | 
             
                #
         | 
| 1096 | 
            -
                # AppConfig uses the value of the `ClientConfigurationVersion` parameter
         | 
| 1097 | 
            -
                # to identify the configuration version on your clients. If you don’t
         | 
| 1098 | 
            -
                # send `ClientConfigurationVersion` with each call to
         | 
| 1099 | 
            -
                # `GetConfiguration`, your clients receive the current configuration.
         | 
| 1100 | 
            -
                # You are charged each time your clients receive a configuration.
         | 
| 1101 1465 | 
             
                #
         | 
| 1102 | 
            -
                # | 
| 1103 | 
            -
                #  | 
| 1104 | 
            -
                #  | 
| 1105 | 
            -
                # Subsequent calls to `GetConfiguration` must pass this value by using
         | 
| 1106 | 
            -
                # the `ClientConfigurationVersion` parameter.
         | 
| 1466 | 
            +
                # [1]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_StartConfigurationSession.html
         | 
| 1467 | 
            +
                # [2]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html
         | 
| 1468 | 
            +
                # [3]: https://aws.amazon.com/systems-manager/pricing/
         | 
| 1107 1469 | 
             
                #
         | 
| 1108 1470 | 
             
                # @option params [required, String] :application
         | 
| 1109 1471 | 
             
                #   The application to get. Specify either the application name or the
         | 
| @@ -1133,18 +1495,24 @@ module Aws::AppConfig | |
| 1133 1495 | 
             
                #   `GetConfiguration`, your clients receive the current configuration.
         | 
| 1134 1496 | 
             
                #   You are charged each time your clients receive a configuration.
         | 
| 1135 1497 | 
             
                #
         | 
| 1136 | 
            -
                #    To avoid excess charges, we recommend  | 
| 1137 | 
            -
                #    | 
| 1138 | 
            -
                #    | 
| 1139 | 
            -
                #    | 
| 1140 | 
            -
                #   the `ClientConfigurationVersion`  | 
| 1498 | 
            +
                #    To avoid excess charges, we recommend you use the
         | 
| 1499 | 
            +
                #   [StartConfigurationSession][1] and [GetLatestConfiguration][2] APIs,
         | 
| 1500 | 
            +
                #   which track the client configuration version on your behalf. If you
         | 
| 1501 | 
            +
                #   choose to continue using `GetConfiguration`, we recommend that you
         | 
| 1502 | 
            +
                #   include the `ClientConfigurationVersion` value with every call to
         | 
| 1503 | 
            +
                #   `GetConfiguration`. The value to use for `ClientConfigurationVersion`
         | 
| 1504 | 
            +
                #   comes from the `ConfigurationVersion` attribute returned by
         | 
| 1505 | 
            +
                #   `GetConfiguration` when there is new or updated data, and should be
         | 
| 1506 | 
            +
                #   saved for subsequent calls to `GetConfiguration`.
         | 
| 1141 1507 | 
             
                #
         | 
| 1142 1508 | 
             
                #   For more information about working with configurations, see
         | 
| 1143 | 
            -
                #   [Retrieving the Configuration][ | 
| 1509 | 
            +
                #   [Retrieving the Configuration][3] in the *AppConfig User Guide*.
         | 
| 1144 1510 | 
             
                #
         | 
| 1145 1511 | 
             
                #
         | 
| 1146 1512 | 
             
                #
         | 
| 1147 | 
            -
                #   [1]:  | 
| 1513 | 
            +
                #   [1]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/StartConfigurationSession.html
         | 
| 1514 | 
            +
                #   [2]: https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/GetLatestConfiguration.html
         | 
| 1515 | 
            +
                #   [3]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-retrieving-the-configuration.html
         | 
| 1148 1516 | 
             
                #
         | 
| 1149 1517 | 
             
                # @return [Types::Configuration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 1150 1518 | 
             
                #
         | 
| @@ -1217,6 +1585,8 @@ module Aws::AppConfig | |
| 1217 1585 | 
             
                #   * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
         | 
| 1218 1586 | 
             
                #   * {Types::ConfigurationProfile#validators #validators} => Array<Types::Validator>
         | 
| 1219 1587 | 
             
                #   * {Types::ConfigurationProfile#type #type} => String
         | 
| 1588 | 
            +
                #   * {Types::ConfigurationProfile#kms_key_arn #kms_key_arn} => String
         | 
| 1589 | 
            +
                #   * {Types::ConfigurationProfile#kms_key_identifier #kms_key_identifier} => String
         | 
| 1220 1590 | 
             
                #
         | 
| 1221 1591 | 
             
                #
         | 
| 1222 1592 | 
             
                # @example Example: To retrieve configuration profile details
         | 
| @@ -1256,6 +1626,8 @@ module Aws::AppConfig | |
| 1256 1626 | 
             
                #   resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
         | 
| 1257 1627 | 
             
                #   resp.validators[0].content #=> String
         | 
| 1258 1628 | 
             
                #   resp.type #=> String
         | 
| 1629 | 
            +
                #   resp.kms_key_arn #=> String
         | 
| 1630 | 
            +
                #   resp.kms_key_identifier #=> String
         | 
| 1259 1631 | 
             
                #
         | 
| 1260 1632 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetConfigurationProfile AWS API Documentation
         | 
| 1261 1633 | 
             
                #
         | 
| @@ -1299,6 +1671,10 @@ module Aws::AppConfig | |
| 1299 1671 | 
             
                #   * {Types::Deployment#percentage_complete #percentage_complete} => Float
         | 
| 1300 1672 | 
             
                #   * {Types::Deployment#started_at #started_at} => Time
         | 
| 1301 1673 | 
             
                #   * {Types::Deployment#completed_at #completed_at} => Time
         | 
| 1674 | 
            +
                #   * {Types::Deployment#applied_extensions #applied_extensions} => Array<Types::AppliedExtension>
         | 
| 1675 | 
            +
                #   * {Types::Deployment#kms_key_arn #kms_key_arn} => String
         | 
| 1676 | 
            +
                #   * {Types::Deployment#kms_key_identifier #kms_key_identifier} => String
         | 
| 1677 | 
            +
                #   * {Types::Deployment#version_label #version_label} => String
         | 
| 1302 1678 | 
             
                #
         | 
| 1303 1679 | 
             
                #
         | 
| 1304 1680 | 
             
                # @example Example: To retrieve deployment details
         | 
| @@ -1404,10 +1780,27 @@ module Aws::AppConfig | |
| 1404 1780 | 
             
                #   resp.event_log[0].event_type #=> String, one of "PERCENTAGE_UPDATED", "ROLLBACK_STARTED", "ROLLBACK_COMPLETED", "BAKE_TIME_STARTED", "DEPLOYMENT_STARTED", "DEPLOYMENT_COMPLETED"
         | 
| 1405 1781 | 
             
                #   resp.event_log[0].triggered_by #=> String, one of "USER", "APPCONFIG", "CLOUDWATCH_ALARM", "INTERNAL_ERROR"
         | 
| 1406 1782 | 
             
                #   resp.event_log[0].description #=> String
         | 
| 1783 | 
            +
                #   resp.event_log[0].action_invocations #=> Array
         | 
| 1784 | 
            +
                #   resp.event_log[0].action_invocations[0].extension_identifier #=> String
         | 
| 1785 | 
            +
                #   resp.event_log[0].action_invocations[0].action_name #=> String
         | 
| 1786 | 
            +
                #   resp.event_log[0].action_invocations[0].uri #=> String
         | 
| 1787 | 
            +
                #   resp.event_log[0].action_invocations[0].role_arn #=> String
         | 
| 1788 | 
            +
                #   resp.event_log[0].action_invocations[0].error_message #=> String
         | 
| 1789 | 
            +
                #   resp.event_log[0].action_invocations[0].error_code #=> String
         | 
| 1790 | 
            +
                #   resp.event_log[0].action_invocations[0].invocation_id #=> String
         | 
| 1407 1791 | 
             
                #   resp.event_log[0].occurred_at #=> Time
         | 
| 1408 1792 | 
             
                #   resp.percentage_complete #=> Float
         | 
| 1409 1793 | 
             
                #   resp.started_at #=> Time
         | 
| 1410 1794 | 
             
                #   resp.completed_at #=> Time
         | 
| 1795 | 
            +
                #   resp.applied_extensions #=> Array
         | 
| 1796 | 
            +
                #   resp.applied_extensions[0].extension_id #=> String
         | 
| 1797 | 
            +
                #   resp.applied_extensions[0].extension_association_id #=> String
         | 
| 1798 | 
            +
                #   resp.applied_extensions[0].version_number #=> Integer
         | 
| 1799 | 
            +
                #   resp.applied_extensions[0].parameters #=> Hash
         | 
| 1800 | 
            +
                #   resp.applied_extensions[0].parameters["ExtensionOrParameterName"] #=> String
         | 
| 1801 | 
            +
                #   resp.kms_key_arn #=> String
         | 
| 1802 | 
            +
                #   resp.kms_key_identifier #=> String
         | 
| 1803 | 
            +
                #   resp.version_label #=> String
         | 
| 1411 1804 | 
             
                #
         | 
| 1412 1805 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetDeployment AWS API Documentation
         | 
| 1413 1806 | 
             
                #
         | 
| @@ -1486,12 +1879,11 @@ module Aws::AppConfig | |
| 1486 1879 | 
             
                end
         | 
| 1487 1880 |  | 
| 1488 1881 | 
             
                # Retrieves information about an environment. An environment is a
         | 
| 1489 | 
            -
                #  | 
| 1490 | 
            -
                #  | 
| 1491 | 
            -
                #  | 
| 1492 | 
            -
                #  | 
| 1493 | 
            -
                #  | 
| 1494 | 
            -
                # configuration.
         | 
| 1882 | 
            +
                # deployment group of AppConfig applications, such as applications in a
         | 
| 1883 | 
            +
                # `Production` environment or in an `EU_Region` environment. Each
         | 
| 1884 | 
            +
                # configuration deployment targets an environment. You can enable one or
         | 
| 1885 | 
            +
                # more Amazon CloudWatch alarms for an environment. If an alarm is
         | 
| 1886 | 
            +
                # triggered during a deployment, AppConfig roles back the configuration.
         | 
| 1495 1887 | 
             
                #
         | 
| 1496 1888 | 
             
                # @option params [required, String] :application_id
         | 
| 1497 1889 | 
             
                #   The ID of the application that includes the environment you want to
         | 
| @@ -1554,6 +1946,103 @@ module Aws::AppConfig | |
| 1554 1946 | 
             
                  req.send_request(options)
         | 
| 1555 1947 | 
             
                end
         | 
| 1556 1948 |  | 
| 1949 | 
            +
                # Returns information about an AppConfig extension.
         | 
| 1950 | 
            +
                #
         | 
| 1951 | 
            +
                # @option params [required, String] :extension_identifier
         | 
| 1952 | 
            +
                #   The name, the ID, or the Amazon Resource Name (ARN) of the extension.
         | 
| 1953 | 
            +
                #
         | 
| 1954 | 
            +
                # @option params [Integer] :version_number
         | 
| 1955 | 
            +
                #   The extension version number. If no version number was defined,
         | 
| 1956 | 
            +
                #   AppConfig uses the highest version.
         | 
| 1957 | 
            +
                #
         | 
| 1958 | 
            +
                # @return [Types::Extension] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 1959 | 
            +
                #
         | 
| 1960 | 
            +
                #   * {Types::Extension#id #id} => String
         | 
| 1961 | 
            +
                #   * {Types::Extension#name #name} => String
         | 
| 1962 | 
            +
                #   * {Types::Extension#version_number #version_number} => Integer
         | 
| 1963 | 
            +
                #   * {Types::Extension#arn #arn} => String
         | 
| 1964 | 
            +
                #   * {Types::Extension#description #description} => String
         | 
| 1965 | 
            +
                #   * {Types::Extension#actions #actions} => Hash<String,Array<Types::Action>>
         | 
| 1966 | 
            +
                #   * {Types::Extension#parameters #parameters} => Hash<String,Types::Parameter>
         | 
| 1967 | 
            +
                #
         | 
| 1968 | 
            +
                # @example Request syntax with placeholder values
         | 
| 1969 | 
            +
                #
         | 
| 1970 | 
            +
                #   resp = client.get_extension({
         | 
| 1971 | 
            +
                #     extension_identifier: "Identifier", # required
         | 
| 1972 | 
            +
                #     version_number: 1,
         | 
| 1973 | 
            +
                #   })
         | 
| 1974 | 
            +
                #
         | 
| 1975 | 
            +
                # @example Response structure
         | 
| 1976 | 
            +
                #
         | 
| 1977 | 
            +
                #   resp.id #=> String
         | 
| 1978 | 
            +
                #   resp.name #=> String
         | 
| 1979 | 
            +
                #   resp.version_number #=> Integer
         | 
| 1980 | 
            +
                #   resp.arn #=> String
         | 
| 1981 | 
            +
                #   resp.description #=> String
         | 
| 1982 | 
            +
                #   resp.actions #=> Hash
         | 
| 1983 | 
            +
                #   resp.actions["ActionPoint"] #=> Array
         | 
| 1984 | 
            +
                #   resp.actions["ActionPoint"][0].name #=> String
         | 
| 1985 | 
            +
                #   resp.actions["ActionPoint"][0].description #=> String
         | 
| 1986 | 
            +
                #   resp.actions["ActionPoint"][0].uri #=> String
         | 
| 1987 | 
            +
                #   resp.actions["ActionPoint"][0].role_arn #=> String
         | 
| 1988 | 
            +
                #   resp.parameters #=> Hash
         | 
| 1989 | 
            +
                #   resp.parameters["ExtensionOrParameterName"].description #=> String
         | 
| 1990 | 
            +
                #   resp.parameters["ExtensionOrParameterName"].required #=> Boolean
         | 
| 1991 | 
            +
                #
         | 
| 1992 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetExtension AWS API Documentation
         | 
| 1993 | 
            +
                #
         | 
| 1994 | 
            +
                # @overload get_extension(params = {})
         | 
| 1995 | 
            +
                # @param [Hash] params ({})
         | 
| 1996 | 
            +
                def get_extension(params = {}, options = {})
         | 
| 1997 | 
            +
                  req = build_request(:get_extension, params)
         | 
| 1998 | 
            +
                  req.send_request(options)
         | 
| 1999 | 
            +
                end
         | 
| 2000 | 
            +
             | 
| 2001 | 
            +
                # Returns information about an AppConfig extension association. For more
         | 
| 2002 | 
            +
                # information about extensions and associations, see [Working with
         | 
| 2003 | 
            +
                # AppConfig extensions][1] in the *AppConfig User Guide*.
         | 
| 2004 | 
            +
                #
         | 
| 2005 | 
            +
                #
         | 
| 2006 | 
            +
                #
         | 
| 2007 | 
            +
                # [1]: https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html
         | 
| 2008 | 
            +
                #
         | 
| 2009 | 
            +
                # @option params [required, String] :extension_association_id
         | 
| 2010 | 
            +
                #   The extension association ID to get.
         | 
| 2011 | 
            +
                #
         | 
| 2012 | 
            +
                # @return [Types::ExtensionAssociation] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 2013 | 
            +
                #
         | 
| 2014 | 
            +
                #   * {Types::ExtensionAssociation#id #id} => String
         | 
| 2015 | 
            +
                #   * {Types::ExtensionAssociation#extension_arn #extension_arn} => String
         | 
| 2016 | 
            +
                #   * {Types::ExtensionAssociation#resource_arn #resource_arn} => String
         | 
| 2017 | 
            +
                #   * {Types::ExtensionAssociation#arn #arn} => String
         | 
| 2018 | 
            +
                #   * {Types::ExtensionAssociation#parameters #parameters} => Hash<String,String>
         | 
| 2019 | 
            +
                #   * {Types::ExtensionAssociation#extension_version_number #extension_version_number} => Integer
         | 
| 2020 | 
            +
                #
         | 
| 2021 | 
            +
                # @example Request syntax with placeholder values
         | 
| 2022 | 
            +
                #
         | 
| 2023 | 
            +
                #   resp = client.get_extension_association({
         | 
| 2024 | 
            +
                #     extension_association_id: "Id", # required
         | 
| 2025 | 
            +
                #   })
         | 
| 2026 | 
            +
                #
         | 
| 2027 | 
            +
                # @example Response structure
         | 
| 2028 | 
            +
                #
         | 
| 2029 | 
            +
                #   resp.id #=> String
         | 
| 2030 | 
            +
                #   resp.extension_arn #=> String
         | 
| 2031 | 
            +
                #   resp.resource_arn #=> String
         | 
| 2032 | 
            +
                #   resp.arn #=> String
         | 
| 2033 | 
            +
                #   resp.parameters #=> Hash
         | 
| 2034 | 
            +
                #   resp.parameters["ExtensionOrParameterName"] #=> String
         | 
| 2035 | 
            +
                #   resp.extension_version_number #=> Integer
         | 
| 2036 | 
            +
                #
         | 
| 2037 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetExtensionAssociation AWS API Documentation
         | 
| 2038 | 
            +
                #
         | 
| 2039 | 
            +
                # @overload get_extension_association(params = {})
         | 
| 2040 | 
            +
                # @param [Hash] params ({})
         | 
| 2041 | 
            +
                def get_extension_association(params = {}, options = {})
         | 
| 2042 | 
            +
                  req = build_request(:get_extension_association, params)
         | 
| 2043 | 
            +
                  req.send_request(options)
         | 
| 2044 | 
            +
                end
         | 
| 2045 | 
            +
             | 
| 1557 2046 | 
             
                # Retrieves information about a specific configuration version.
         | 
| 1558 2047 | 
             
                #
         | 
| 1559 2048 | 
             
                # @option params [required, String] :application_id
         | 
| @@ -1573,6 +2062,8 @@ module Aws::AppConfig | |
| 1573 2062 | 
             
                #   * {Types::HostedConfigurationVersion#description #description} => String
         | 
| 1574 2063 | 
             
                #   * {Types::HostedConfigurationVersion#content #content} => String
         | 
| 1575 2064 | 
             
                #   * {Types::HostedConfigurationVersion#content_type #content_type} => String
         | 
| 2065 | 
            +
                #   * {Types::HostedConfigurationVersion#version_label #version_label} => String
         | 
| 2066 | 
            +
                #   * {Types::HostedConfigurationVersion#kms_key_arn #kms_key_arn} => String
         | 
| 1576 2067 | 
             
                #
         | 
| 1577 2068 | 
             
                #
         | 
| 1578 2069 | 
             
                # @example Example: To retrieve hosted configuration details
         | 
| @@ -1610,6 +2101,8 @@ module Aws::AppConfig | |
| 1610 2101 | 
             
                #   resp.description #=> String
         | 
| 1611 2102 | 
             
                #   resp.content #=> String
         | 
| 1612 2103 | 
             
                #   resp.content_type #=> String
         | 
| 2104 | 
            +
                #   resp.version_label #=> String
         | 
| 2105 | 
            +
                #   resp.kms_key_arn #=> String
         | 
| 1613 2106 | 
             
                #
         | 
| 1614 2107 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetHostedConfigurationVersion AWS API Documentation
         | 
| 1615 2108 | 
             
                #
         | 
| @@ -1705,7 +2198,7 @@ module Aws::AppConfig | |
| 1705 2198 | 
             
                #
         | 
| 1706 2199 | 
             
                # @option params [String] :type
         | 
| 1707 2200 | 
             
                #   A filter based on the type of configurations that the configuration
         | 
| 1708 | 
            -
                #   profile contains. A configuration can be a feature flag or a  | 
| 2201 | 
            +
                #   profile contains. A configuration can be a feature flag or a freeform
         | 
| 1709 2202 | 
             
                #   configuration.
         | 
| 1710 2203 | 
             
                #
         | 
| 1711 2204 | 
             
                # @return [Types::ConfigurationProfiles] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| @@ -1837,7 +2330,8 @@ module Aws::AppConfig | |
| 1837 2330 | 
             
                  req.send_request(options)
         | 
| 1838 2331 | 
             
                end
         | 
| 1839 2332 |  | 
| 1840 | 
            -
                # Lists the deployments for an environment | 
| 2333 | 
            +
                # Lists the deployments for an environment in descending deployment
         | 
| 2334 | 
            +
                # number order.
         | 
| 1841 2335 | 
             
                #
         | 
| 1842 2336 | 
             
                # @option params [required, String] :application_id
         | 
| 1843 2337 | 
             
                #   The application ID.
         | 
| @@ -1846,13 +2340,15 @@ module Aws::AppConfig | |
| 1846 2340 | 
             
                #   The environment ID.
         | 
| 1847 2341 | 
             
                #
         | 
| 1848 2342 | 
             
                # @option params [Integer] :max_results
         | 
| 1849 | 
            -
                #   The maximum number of items  | 
| 1850 | 
            -
                #    | 
| 1851 | 
            -
                #    | 
| 2343 | 
            +
                #   The maximum number of items that may be returned for this call. If
         | 
| 2344 | 
            +
                #   there are items that have not yet been returned, the response will
         | 
| 2345 | 
            +
                #   include a non-null `NextToken` that you can provide in a subsequent
         | 
| 2346 | 
            +
                #   call to get the next set of results.
         | 
| 1852 2347 | 
             
                #
         | 
| 1853 2348 | 
             
                # @option params [String] :next_token
         | 
| 1854 | 
            -
                #    | 
| 1855 | 
            -
                #   results.
         | 
| 2349 | 
            +
                #   The token returned by a prior call to this operation indicating the
         | 
| 2350 | 
            +
                #   next set of results to be returned. If not specified, the operation
         | 
| 2351 | 
            +
                #   will return the first set of results.
         | 
| 1856 2352 | 
             
                #
         | 
| 1857 2353 | 
             
                # @return [Types::Deployments] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 1858 2354 | 
             
                #
         | 
| @@ -1914,6 +2410,7 @@ module Aws::AppConfig | |
| 1914 2410 | 
             
                #   resp.items[0].percentage_complete #=> Float
         | 
| 1915 2411 | 
             
                #   resp.items[0].started_at #=> Time
         | 
| 1916 2412 | 
             
                #   resp.items[0].completed_at #=> Time
         | 
| 2413 | 
            +
                #   resp.items[0].version_label #=> String
         | 
| 1917 2414 | 
             
                #   resp.next_token #=> String
         | 
| 1918 2415 | 
             
                #
         | 
| 1919 2416 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListDeployments AWS API Documentation
         | 
| @@ -1998,6 +2495,120 @@ module Aws::AppConfig | |
| 1998 2495 | 
             
                  req.send_request(options)
         | 
| 1999 2496 | 
             
                end
         | 
| 2000 2497 |  | 
| 2498 | 
            +
                # Lists all AppConfig extension associations in the account. For more
         | 
| 2499 | 
            +
                # information about extensions and associations, see [Working with
         | 
| 2500 | 
            +
                # AppConfig extensions][1] in the *AppConfig User Guide*.
         | 
| 2501 | 
            +
                #
         | 
| 2502 | 
            +
                #
         | 
| 2503 | 
            +
                #
         | 
| 2504 | 
            +
                # [1]: https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html
         | 
| 2505 | 
            +
                #
         | 
| 2506 | 
            +
                # @option params [String] :resource_identifier
         | 
| 2507 | 
            +
                #   The ARN of an application, configuration profile, or environment.
         | 
| 2508 | 
            +
                #
         | 
| 2509 | 
            +
                # @option params [String] :extension_identifier
         | 
| 2510 | 
            +
                #   The name, the ID, or the Amazon Resource Name (ARN) of the extension.
         | 
| 2511 | 
            +
                #
         | 
| 2512 | 
            +
                # @option params [Integer] :extension_version_number
         | 
| 2513 | 
            +
                #   The version number for the extension defined in the association.
         | 
| 2514 | 
            +
                #
         | 
| 2515 | 
            +
                # @option params [Integer] :max_results
         | 
| 2516 | 
            +
                #   The maximum number of items to return for this call. The call also
         | 
| 2517 | 
            +
                #   returns a token that you can specify in a subsequent call to get the
         | 
| 2518 | 
            +
                #   next set of results.
         | 
| 2519 | 
            +
                #
         | 
| 2520 | 
            +
                # @option params [String] :next_token
         | 
| 2521 | 
            +
                #   A token to start the list. Use this token to get the next set of
         | 
| 2522 | 
            +
                #   results or pass null to get the first set of results.
         | 
| 2523 | 
            +
                #
         | 
| 2524 | 
            +
                # @return [Types::ExtensionAssociations] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 2525 | 
            +
                #
         | 
| 2526 | 
            +
                #   * {Types::ExtensionAssociations#items #items} => Array<Types::ExtensionAssociationSummary>
         | 
| 2527 | 
            +
                #   * {Types::ExtensionAssociations#next_token #next_token} => String
         | 
| 2528 | 
            +
                #
         | 
| 2529 | 
            +
                # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
         | 
| 2530 | 
            +
                #
         | 
| 2531 | 
            +
                # @example Request syntax with placeholder values
         | 
| 2532 | 
            +
                #
         | 
| 2533 | 
            +
                #   resp = client.list_extension_associations({
         | 
| 2534 | 
            +
                #     resource_identifier: "Arn",
         | 
| 2535 | 
            +
                #     extension_identifier: "Identifier",
         | 
| 2536 | 
            +
                #     extension_version_number: 1,
         | 
| 2537 | 
            +
                #     max_results: 1,
         | 
| 2538 | 
            +
                #     next_token: "NextToken",
         | 
| 2539 | 
            +
                #   })
         | 
| 2540 | 
            +
                #
         | 
| 2541 | 
            +
                # @example Response structure
         | 
| 2542 | 
            +
                #
         | 
| 2543 | 
            +
                #   resp.items #=> Array
         | 
| 2544 | 
            +
                #   resp.items[0].id #=> String
         | 
| 2545 | 
            +
                #   resp.items[0].extension_arn #=> String
         | 
| 2546 | 
            +
                #   resp.items[0].resource_arn #=> String
         | 
| 2547 | 
            +
                #   resp.next_token #=> String
         | 
| 2548 | 
            +
                #
         | 
| 2549 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListExtensionAssociations AWS API Documentation
         | 
| 2550 | 
            +
                #
         | 
| 2551 | 
            +
                # @overload list_extension_associations(params = {})
         | 
| 2552 | 
            +
                # @param [Hash] params ({})
         | 
| 2553 | 
            +
                def list_extension_associations(params = {}, options = {})
         | 
| 2554 | 
            +
                  req = build_request(:list_extension_associations, params)
         | 
| 2555 | 
            +
                  req.send_request(options)
         | 
| 2556 | 
            +
                end
         | 
| 2557 | 
            +
             | 
| 2558 | 
            +
                # Lists all custom and Amazon Web Services authored AppConfig extensions
         | 
| 2559 | 
            +
                # in the account. For more information about extensions, see [Working
         | 
| 2560 | 
            +
                # with AppConfig extensions][1] in the *AppConfig User Guide*.
         | 
| 2561 | 
            +
                #
         | 
| 2562 | 
            +
                #
         | 
| 2563 | 
            +
                #
         | 
| 2564 | 
            +
                # [1]: https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html
         | 
| 2565 | 
            +
                #
         | 
| 2566 | 
            +
                # @option params [Integer] :max_results
         | 
| 2567 | 
            +
                #   The maximum number of items to return for this call. The call also
         | 
| 2568 | 
            +
                #   returns a token that you can specify in a subsequent call to get the
         | 
| 2569 | 
            +
                #   next set of results.
         | 
| 2570 | 
            +
                #
         | 
| 2571 | 
            +
                # @option params [String] :next_token
         | 
| 2572 | 
            +
                #   A token to start the list. Use this token to get the next set of
         | 
| 2573 | 
            +
                #   results.
         | 
| 2574 | 
            +
                #
         | 
| 2575 | 
            +
                # @option params [String] :name
         | 
| 2576 | 
            +
                #   The extension name.
         | 
| 2577 | 
            +
                #
         | 
| 2578 | 
            +
                # @return [Types::Extensions] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 2579 | 
            +
                #
         | 
| 2580 | 
            +
                #   * {Types::Extensions#items #items} => Array<Types::ExtensionSummary>
         | 
| 2581 | 
            +
                #   * {Types::Extensions#next_token #next_token} => String
         | 
| 2582 | 
            +
                #
         | 
| 2583 | 
            +
                # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
         | 
| 2584 | 
            +
                #
         | 
| 2585 | 
            +
                # @example Request syntax with placeholder values
         | 
| 2586 | 
            +
                #
         | 
| 2587 | 
            +
                #   resp = client.list_extensions({
         | 
| 2588 | 
            +
                #     max_results: 1,
         | 
| 2589 | 
            +
                #     next_token: "NextToken",
         | 
| 2590 | 
            +
                #     name: "QueryName",
         | 
| 2591 | 
            +
                #   })
         | 
| 2592 | 
            +
                #
         | 
| 2593 | 
            +
                # @example Response structure
         | 
| 2594 | 
            +
                #
         | 
| 2595 | 
            +
                #   resp.items #=> Array
         | 
| 2596 | 
            +
                #   resp.items[0].id #=> String
         | 
| 2597 | 
            +
                #   resp.items[0].name #=> String
         | 
| 2598 | 
            +
                #   resp.items[0].version_number #=> Integer
         | 
| 2599 | 
            +
                #   resp.items[0].arn #=> String
         | 
| 2600 | 
            +
                #   resp.items[0].description #=> String
         | 
| 2601 | 
            +
                #   resp.next_token #=> String
         | 
| 2602 | 
            +
                #
         | 
| 2603 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListExtensions AWS API Documentation
         | 
| 2604 | 
            +
                #
         | 
| 2605 | 
            +
                # @overload list_extensions(params = {})
         | 
| 2606 | 
            +
                # @param [Hash] params ({})
         | 
| 2607 | 
            +
                def list_extensions(params = {}, options = {})
         | 
| 2608 | 
            +
                  req = build_request(:list_extensions, params)
         | 
| 2609 | 
            +
                  req.send_request(options)
         | 
| 2610 | 
            +
                end
         | 
| 2611 | 
            +
             | 
| 2001 2612 | 
             
                # Lists configurations stored in the AppConfig hosted configuration
         | 
| 2002 2613 | 
             
                # store by version.
         | 
| 2003 2614 | 
             
                #
         | 
| @@ -2016,6 +2627,13 @@ module Aws::AppConfig | |
| 2016 2627 | 
             
                #   A token to start the list. Use this token to get the next set of
         | 
| 2017 2628 | 
             
                #   results.
         | 
| 2018 2629 | 
             
                #
         | 
| 2630 | 
            +
                # @option params [String] :version_label
         | 
| 2631 | 
            +
                #   An optional filter that can be used to specify the version label of an
         | 
| 2632 | 
            +
                #   AppConfig hosted configuration version. This parameter supports
         | 
| 2633 | 
            +
                #   filtering by prefix using a wildcard, for example "v2*". If you
         | 
| 2634 | 
            +
                #   don't specify an asterisk at the end of the value, only an exact
         | 
| 2635 | 
            +
                #   match is returned.
         | 
| 2636 | 
            +
                #
         | 
| 2019 2637 | 
             
                # @return [Types::HostedConfigurationVersions] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 2020 2638 | 
             
                #
         | 
| 2021 2639 | 
             
                #   * {Types::HostedConfigurationVersions#items #items} => Array<Types::HostedConfigurationVersionSummary>
         | 
| @@ -2053,6 +2671,7 @@ module Aws::AppConfig | |
| 2053 2671 | 
             
                #     configuration_profile_id: "Id", # required
         | 
| 2054 2672 | 
             
                #     max_results: 1,
         | 
| 2055 2673 | 
             
                #     next_token: "NextToken",
         | 
| 2674 | 
            +
                #     version_label: "QueryName",
         | 
| 2056 2675 | 
             
                #   })
         | 
| 2057 2676 | 
             
                #
         | 
| 2058 2677 | 
             
                # @example Response structure
         | 
| @@ -2063,6 +2682,8 @@ module Aws::AppConfig | |
| 2063 2682 | 
             
                #   resp.items[0].version_number #=> Integer
         | 
| 2064 2683 | 
             
                #   resp.items[0].description #=> String
         | 
| 2065 2684 | 
             
                #   resp.items[0].content_type #=> String
         | 
| 2685 | 
            +
                #   resp.items[0].version_label #=> String
         | 
| 2686 | 
            +
                #   resp.items[0].kms_key_arn #=> String
         | 
| 2066 2687 | 
             
                #   resp.next_token #=> String
         | 
| 2067 2688 | 
             
                #
         | 
| 2068 2689 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListHostedConfigurationVersions AWS API Documentation
         | 
| @@ -2134,7 +2755,10 @@ module Aws::AppConfig | |
| 2134 2755 | 
             
                #   The configuration profile ID.
         | 
| 2135 2756 | 
             
                #
         | 
| 2136 2757 | 
             
                # @option params [required, String] :configuration_version
         | 
| 2137 | 
            -
                #   The configuration version to deploy.
         | 
| 2758 | 
            +
                #   The configuration version to deploy. If deploying an AppConfig hosted
         | 
| 2759 | 
            +
                #   configuration version, you can specify either the version number or
         | 
| 2760 | 
            +
                #   version label. For all other configurations, you must specify the
         | 
| 2761 | 
            +
                #   version number.
         | 
| 2138 2762 | 
             
                #
         | 
| 2139 2763 | 
             
                # @option params [String] :description
         | 
| 2140 2764 | 
             
                #   A description of the deployment.
         | 
| @@ -2144,6 +2768,11 @@ module Aws::AppConfig | |
| 2144 2768 | 
             
                #   categorize your AppConfig resources. Each tag consists of a key and an
         | 
| 2145 2769 | 
             
                #   optional value, both of which you define.
         | 
| 2146 2770 | 
             
                #
         | 
| 2771 | 
            +
                # @option params [String] :kms_key_identifier
         | 
| 2772 | 
            +
                #   The KMS key identifier (key ID, key alias, or key ARN). AppConfig uses
         | 
| 2773 | 
            +
                #   this ID to encrypt the configuration data using a customer managed
         | 
| 2774 | 
            +
                #   key.
         | 
| 2775 | 
            +
                #
         | 
| 2147 2776 | 
             
                # @return [Types::Deployment] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 2148 2777 | 
             
                #
         | 
| 2149 2778 | 
             
                #   * {Types::Deployment#application_id #application_id} => String
         | 
| @@ -2164,6 +2793,10 @@ module Aws::AppConfig | |
| 2164 2793 | 
             
                #   * {Types::Deployment#percentage_complete #percentage_complete} => Float
         | 
| 2165 2794 | 
             
                #   * {Types::Deployment#started_at #started_at} => Time
         | 
| 2166 2795 | 
             
                #   * {Types::Deployment#completed_at #completed_at} => Time
         | 
| 2796 | 
            +
                #   * {Types::Deployment#applied_extensions #applied_extensions} => Array<Types::AppliedExtension>
         | 
| 2797 | 
            +
                #   * {Types::Deployment#kms_key_arn #kms_key_arn} => String
         | 
| 2798 | 
            +
                #   * {Types::Deployment#kms_key_identifier #kms_key_identifier} => String
         | 
| 2799 | 
            +
                #   * {Types::Deployment#version_label #version_label} => String
         | 
| 2167 2800 | 
             
                #
         | 
| 2168 2801 | 
             
                #
         | 
| 2169 2802 | 
             
                # @example Example: To start a configuration deployment
         | 
| @@ -2221,6 +2854,7 @@ module Aws::AppConfig | |
| 2221 2854 | 
             
                #     tags: {
         | 
| 2222 2855 | 
             
                #       "TagKey" => "TagValue",
         | 
| 2223 2856 | 
             
                #     },
         | 
| 2857 | 
            +
                #     kms_key_identifier: "KmsKeyIdentifier",
         | 
| 2224 2858 | 
             
                #   })
         | 
| 2225 2859 | 
             
                #
         | 
| 2226 2860 | 
             
                # @example Response structure
         | 
| @@ -2243,10 +2877,27 @@ module Aws::AppConfig | |
| 2243 2877 | 
             
                #   resp.event_log[0].event_type #=> String, one of "PERCENTAGE_UPDATED", "ROLLBACK_STARTED", "ROLLBACK_COMPLETED", "BAKE_TIME_STARTED", "DEPLOYMENT_STARTED", "DEPLOYMENT_COMPLETED"
         | 
| 2244 2878 | 
             
                #   resp.event_log[0].triggered_by #=> String, one of "USER", "APPCONFIG", "CLOUDWATCH_ALARM", "INTERNAL_ERROR"
         | 
| 2245 2879 | 
             
                #   resp.event_log[0].description #=> String
         | 
| 2880 | 
            +
                #   resp.event_log[0].action_invocations #=> Array
         | 
| 2881 | 
            +
                #   resp.event_log[0].action_invocations[0].extension_identifier #=> String
         | 
| 2882 | 
            +
                #   resp.event_log[0].action_invocations[0].action_name #=> String
         | 
| 2883 | 
            +
                #   resp.event_log[0].action_invocations[0].uri #=> String
         | 
| 2884 | 
            +
                #   resp.event_log[0].action_invocations[0].role_arn #=> String
         | 
| 2885 | 
            +
                #   resp.event_log[0].action_invocations[0].error_message #=> String
         | 
| 2886 | 
            +
                #   resp.event_log[0].action_invocations[0].error_code #=> String
         | 
| 2887 | 
            +
                #   resp.event_log[0].action_invocations[0].invocation_id #=> String
         | 
| 2246 2888 | 
             
                #   resp.event_log[0].occurred_at #=> Time
         | 
| 2247 2889 | 
             
                #   resp.percentage_complete #=> Float
         | 
| 2248 2890 | 
             
                #   resp.started_at #=> Time
         | 
| 2249 2891 | 
             
                #   resp.completed_at #=> Time
         | 
| 2892 | 
            +
                #   resp.applied_extensions #=> Array
         | 
| 2893 | 
            +
                #   resp.applied_extensions[0].extension_id #=> String
         | 
| 2894 | 
            +
                #   resp.applied_extensions[0].extension_association_id #=> String
         | 
| 2895 | 
            +
                #   resp.applied_extensions[0].version_number #=> Integer
         | 
| 2896 | 
            +
                #   resp.applied_extensions[0].parameters #=> Hash
         | 
| 2897 | 
            +
                #   resp.applied_extensions[0].parameters["ExtensionOrParameterName"] #=> String
         | 
| 2898 | 
            +
                #   resp.kms_key_arn #=> String
         | 
| 2899 | 
            +
                #   resp.kms_key_identifier #=> String
         | 
| 2900 | 
            +
                #   resp.version_label #=> String
         | 
| 2250 2901 | 
             
                #
         | 
| 2251 2902 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/StartDeployment AWS API Documentation
         | 
| 2252 2903 | 
             
                #
         | 
| @@ -2290,6 +2941,10 @@ module Aws::AppConfig | |
| 2290 2941 | 
             
                #   * {Types::Deployment#percentage_complete #percentage_complete} => Float
         | 
| 2291 2942 | 
             
                #   * {Types::Deployment#started_at #started_at} => Time
         | 
| 2292 2943 | 
             
                #   * {Types::Deployment#completed_at #completed_at} => Time
         | 
| 2944 | 
            +
                #   * {Types::Deployment#applied_extensions #applied_extensions} => Array<Types::AppliedExtension>
         | 
| 2945 | 
            +
                #   * {Types::Deployment#kms_key_arn #kms_key_arn} => String
         | 
| 2946 | 
            +
                #   * {Types::Deployment#kms_key_identifier #kms_key_identifier} => String
         | 
| 2947 | 
            +
                #   * {Types::Deployment#version_label #version_label} => String
         | 
| 2293 2948 | 
             
                #
         | 
| 2294 2949 | 
             
                #
         | 
| 2295 2950 | 
             
                # @example Example: To stop configuration deployment
         | 
| @@ -2339,10 +2994,27 @@ module Aws::AppConfig | |
| 2339 2994 | 
             
                #   resp.event_log[0].event_type #=> String, one of "PERCENTAGE_UPDATED", "ROLLBACK_STARTED", "ROLLBACK_COMPLETED", "BAKE_TIME_STARTED", "DEPLOYMENT_STARTED", "DEPLOYMENT_COMPLETED"
         | 
| 2340 2995 | 
             
                #   resp.event_log[0].triggered_by #=> String, one of "USER", "APPCONFIG", "CLOUDWATCH_ALARM", "INTERNAL_ERROR"
         | 
| 2341 2996 | 
             
                #   resp.event_log[0].description #=> String
         | 
| 2997 | 
            +
                #   resp.event_log[0].action_invocations #=> Array
         | 
| 2998 | 
            +
                #   resp.event_log[0].action_invocations[0].extension_identifier #=> String
         | 
| 2999 | 
            +
                #   resp.event_log[0].action_invocations[0].action_name #=> String
         | 
| 3000 | 
            +
                #   resp.event_log[0].action_invocations[0].uri #=> String
         | 
| 3001 | 
            +
                #   resp.event_log[0].action_invocations[0].role_arn #=> String
         | 
| 3002 | 
            +
                #   resp.event_log[0].action_invocations[0].error_message #=> String
         | 
| 3003 | 
            +
                #   resp.event_log[0].action_invocations[0].error_code #=> String
         | 
| 3004 | 
            +
                #   resp.event_log[0].action_invocations[0].invocation_id #=> String
         | 
| 2342 3005 | 
             
                #   resp.event_log[0].occurred_at #=> Time
         | 
| 2343 3006 | 
             
                #   resp.percentage_complete #=> Float
         | 
| 2344 3007 | 
             
                #   resp.started_at #=> Time
         | 
| 2345 3008 | 
             
                #   resp.completed_at #=> Time
         | 
| 3009 | 
            +
                #   resp.applied_extensions #=> Array
         | 
| 3010 | 
            +
                #   resp.applied_extensions[0].extension_id #=> String
         | 
| 3011 | 
            +
                #   resp.applied_extensions[0].extension_association_id #=> String
         | 
| 3012 | 
            +
                #   resp.applied_extensions[0].version_number #=> Integer
         | 
| 3013 | 
            +
                #   resp.applied_extensions[0].parameters #=> Hash
         | 
| 3014 | 
            +
                #   resp.applied_extensions[0].parameters["ExtensionOrParameterName"] #=> String
         | 
| 3015 | 
            +
                #   resp.kms_key_arn #=> String
         | 
| 3016 | 
            +
                #   resp.kms_key_identifier #=> String
         | 
| 3017 | 
            +
                #   resp.version_label #=> String
         | 
| 2346 3018 | 
             
                #
         | 
| 2347 3019 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/StopDeployment AWS API Documentation
         | 
| 2348 3020 | 
             
                #
         | 
| @@ -2515,6 +3187,15 @@ module Aws::AppConfig | |
| 2515 3187 | 
             
                # @option params [Array<Types::Validator>] :validators
         | 
| 2516 3188 | 
             
                #   A list of methods for validating the configuration.
         | 
| 2517 3189 | 
             
                #
         | 
| 3190 | 
            +
                # @option params [String] :kms_key_identifier
         | 
| 3191 | 
            +
                #   The identifier for a Key Management Service key to encrypt new
         | 
| 3192 | 
            +
                #   configuration data versions in the AppConfig hosted configuration
         | 
| 3193 | 
            +
                #   store. This attribute is only used for `hosted` configuration types.
         | 
| 3194 | 
            +
                #   The identifier can be an KMS key ID, alias, or the Amazon Resource
         | 
| 3195 | 
            +
                #   Name (ARN) of the key ID or alias. To encrypt data managed in other
         | 
| 3196 | 
            +
                #   configuration stores, see the documentation for how to specify an KMS
         | 
| 3197 | 
            +
                #   key for that particular service.
         | 
| 3198 | 
            +
                #
         | 
| 2518 3199 | 
             
                # @return [Types::ConfigurationProfile] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 2519 3200 | 
             
                #
         | 
| 2520 3201 | 
             
                #   * {Types::ConfigurationProfile#application_id #application_id} => String
         | 
| @@ -2525,6 +3206,8 @@ module Aws::AppConfig | |
| 2525 3206 | 
             
                #   * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
         | 
| 2526 3207 | 
             
                #   * {Types::ConfigurationProfile#validators #validators} => Array<Types::Validator>
         | 
| 2527 3208 | 
             
                #   * {Types::ConfigurationProfile#type #type} => String
         | 
| 3209 | 
            +
                #   * {Types::ConfigurationProfile#kms_key_arn #kms_key_arn} => String
         | 
| 3210 | 
            +
                #   * {Types::ConfigurationProfile#kms_key_identifier #kms_key_identifier} => String
         | 
| 2528 3211 | 
             
                #
         | 
| 2529 3212 | 
             
                #
         | 
| 2530 3213 | 
             
                # @example Example: To update a configuration profile
         | 
| @@ -2561,6 +3244,7 @@ module Aws::AppConfig | |
| 2561 3244 | 
             
                #         content: "StringWithLengthBetween0And32768", # required
         | 
| 2562 3245 | 
             
                #       },
         | 
| 2563 3246 | 
             
                #     ],
         | 
| 3247 | 
            +
                #     kms_key_identifier: "KmsKeyIdentifierOrEmpty",
         | 
| 2564 3248 | 
             
                #   })
         | 
| 2565 3249 | 
             
                #
         | 
| 2566 3250 | 
             
                # @example Response structure
         | 
| @@ -2575,6 +3259,8 @@ module Aws::AppConfig | |
| 2575 3259 | 
             
                #   resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
         | 
| 2576 3260 | 
             
                #   resp.validators[0].content #=> String
         | 
| 2577 3261 | 
             
                #   resp.type #=> String
         | 
| 3262 | 
            +
                #   resp.kms_key_arn #=> String
         | 
| 3263 | 
            +
                #   resp.kms_key_identifier #=> String
         | 
| 2578 3264 | 
             
                #
         | 
| 2579 3265 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateConfigurationProfile AWS API Documentation
         | 
| 2580 3266 | 
             
                #
         | 
| @@ -2609,7 +3295,7 @@ module Aws::AppConfig | |
| 2609 3295 | 
             
                #   The algorithm used to define how percentage grows over time. AppConfig
         | 
| 2610 3296 | 
             
                #   supports the following growth types:
         | 
| 2611 3297 | 
             
                #
         | 
| 2612 | 
            -
                #   **Linear | 
| 3298 | 
            +
                #   **Linear**: For this type, AppConfig processes the deployment by
         | 
| 2613 3299 | 
             
                #   increments of the growth factor evenly distributed over the deployment
         | 
| 2614 3300 | 
             
                #   time. For example, a linear deployment that uses a growth factor of 20
         | 
| 2615 3301 | 
             
                #   initially makes the configuration available to 20 percent of the
         | 
| @@ -2617,7 +3303,7 @@ module Aws::AppConfig | |
| 2617 3303 | 
             
                #   updates the percentage to 40 percent. This continues until 100% of the
         | 
| 2618 3304 | 
             
                #   targets are set to receive the deployed configuration.
         | 
| 2619 3305 | 
             
                #
         | 
| 2620 | 
            -
                #   **Exponential | 
| 3306 | 
            +
                #   **Exponential**: For this type, AppConfig processes the deployment
         | 
| 2621 3307 | 
             
                #   exponentially using the following formula: `G*(2^N)`. In this formula,
         | 
| 2622 3308 | 
             
                #   `G` is the growth factor specified by the user and `N` is the number
         | 
| 2623 3309 | 
             
                #   of steps until the configuration is deployed to all targets. For
         | 
| @@ -2779,6 +3465,140 @@ module Aws::AppConfig | |
| 2779 3465 | 
             
                  req.send_request(options)
         | 
| 2780 3466 | 
             
                end
         | 
| 2781 3467 |  | 
| 3468 | 
            +
                # Updates an AppConfig extension. For more information about extensions,
         | 
| 3469 | 
            +
                # see [Working with AppConfig extensions][1] in the *AppConfig User
         | 
| 3470 | 
            +
                # Guide*.
         | 
| 3471 | 
            +
                #
         | 
| 3472 | 
            +
                #
         | 
| 3473 | 
            +
                #
         | 
| 3474 | 
            +
                # [1]: https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html
         | 
| 3475 | 
            +
                #
         | 
| 3476 | 
            +
                # @option params [required, String] :extension_identifier
         | 
| 3477 | 
            +
                #   The name, the ID, or the Amazon Resource Name (ARN) of the extension.
         | 
| 3478 | 
            +
                #
         | 
| 3479 | 
            +
                # @option params [String] :description
         | 
| 3480 | 
            +
                #   Information about the extension.
         | 
| 3481 | 
            +
                #
         | 
| 3482 | 
            +
                # @option params [Hash<String,Array>] :actions
         | 
| 3483 | 
            +
                #   The actions defined in the extension.
         | 
| 3484 | 
            +
                #
         | 
| 3485 | 
            +
                # @option params [Hash<String,Types::Parameter>] :parameters
         | 
| 3486 | 
            +
                #   One or more parameters for the actions called by the extension.
         | 
| 3487 | 
            +
                #
         | 
| 3488 | 
            +
                # @option params [Integer] :version_number
         | 
| 3489 | 
            +
                #   The extension version number.
         | 
| 3490 | 
            +
                #
         | 
| 3491 | 
            +
                # @return [Types::Extension] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 3492 | 
            +
                #
         | 
| 3493 | 
            +
                #   * {Types::Extension#id #id} => String
         | 
| 3494 | 
            +
                #   * {Types::Extension#name #name} => String
         | 
| 3495 | 
            +
                #   * {Types::Extension#version_number #version_number} => Integer
         | 
| 3496 | 
            +
                #   * {Types::Extension#arn #arn} => String
         | 
| 3497 | 
            +
                #   * {Types::Extension#description #description} => String
         | 
| 3498 | 
            +
                #   * {Types::Extension#actions #actions} => Hash<String,Array<Types::Action>>
         | 
| 3499 | 
            +
                #   * {Types::Extension#parameters #parameters} => Hash<String,Types::Parameter>
         | 
| 3500 | 
            +
                #
         | 
| 3501 | 
            +
                # @example Request syntax with placeholder values
         | 
| 3502 | 
            +
                #
         | 
| 3503 | 
            +
                #   resp = client.update_extension({
         | 
| 3504 | 
            +
                #     extension_identifier: "Identifier", # required
         | 
| 3505 | 
            +
                #     description: "Description",
         | 
| 3506 | 
            +
                #     actions: {
         | 
| 3507 | 
            +
                #       "PRE_CREATE_HOSTED_CONFIGURATION_VERSION" => [
         | 
| 3508 | 
            +
                #         {
         | 
| 3509 | 
            +
                #           name: "Name",
         | 
| 3510 | 
            +
                #           description: "Description",
         | 
| 3511 | 
            +
                #           uri: "Uri",
         | 
| 3512 | 
            +
                #           role_arn: "Arn",
         | 
| 3513 | 
            +
                #         },
         | 
| 3514 | 
            +
                #       ],
         | 
| 3515 | 
            +
                #     },
         | 
| 3516 | 
            +
                #     parameters: {
         | 
| 3517 | 
            +
                #       "ExtensionOrParameterName" => {
         | 
| 3518 | 
            +
                #         description: "Description",
         | 
| 3519 | 
            +
                #         required: false,
         | 
| 3520 | 
            +
                #       },
         | 
| 3521 | 
            +
                #     },
         | 
| 3522 | 
            +
                #     version_number: 1,
         | 
| 3523 | 
            +
                #   })
         | 
| 3524 | 
            +
                #
         | 
| 3525 | 
            +
                # @example Response structure
         | 
| 3526 | 
            +
                #
         | 
| 3527 | 
            +
                #   resp.id #=> String
         | 
| 3528 | 
            +
                #   resp.name #=> String
         | 
| 3529 | 
            +
                #   resp.version_number #=> Integer
         | 
| 3530 | 
            +
                #   resp.arn #=> String
         | 
| 3531 | 
            +
                #   resp.description #=> String
         | 
| 3532 | 
            +
                #   resp.actions #=> Hash
         | 
| 3533 | 
            +
                #   resp.actions["ActionPoint"] #=> Array
         | 
| 3534 | 
            +
                #   resp.actions["ActionPoint"][0].name #=> String
         | 
| 3535 | 
            +
                #   resp.actions["ActionPoint"][0].description #=> String
         | 
| 3536 | 
            +
                #   resp.actions["ActionPoint"][0].uri #=> String
         | 
| 3537 | 
            +
                #   resp.actions["ActionPoint"][0].role_arn #=> String
         | 
| 3538 | 
            +
                #   resp.parameters #=> Hash
         | 
| 3539 | 
            +
                #   resp.parameters["ExtensionOrParameterName"].description #=> String
         | 
| 3540 | 
            +
                #   resp.parameters["ExtensionOrParameterName"].required #=> Boolean
         | 
| 3541 | 
            +
                #
         | 
| 3542 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateExtension AWS API Documentation
         | 
| 3543 | 
            +
                #
         | 
| 3544 | 
            +
                # @overload update_extension(params = {})
         | 
| 3545 | 
            +
                # @param [Hash] params ({})
         | 
| 3546 | 
            +
                def update_extension(params = {}, options = {})
         | 
| 3547 | 
            +
                  req = build_request(:update_extension, params)
         | 
| 3548 | 
            +
                  req.send_request(options)
         | 
| 3549 | 
            +
                end
         | 
| 3550 | 
            +
             | 
| 3551 | 
            +
                # Updates an association. For more information about extensions and
         | 
| 3552 | 
            +
                # associations, see [Working with AppConfig extensions][1] in the
         | 
| 3553 | 
            +
                # *AppConfig User Guide*.
         | 
| 3554 | 
            +
                #
         | 
| 3555 | 
            +
                #
         | 
| 3556 | 
            +
                #
         | 
| 3557 | 
            +
                # [1]: https://docs.aws.amazon.com/appconfig/latest/userguide/working-with-appconfig-extensions.html
         | 
| 3558 | 
            +
                #
         | 
| 3559 | 
            +
                # @option params [required, String] :extension_association_id
         | 
| 3560 | 
            +
                #   The system-generated ID for the association.
         | 
| 3561 | 
            +
                #
         | 
| 3562 | 
            +
                # @option params [Hash<String,String>] :parameters
         | 
| 3563 | 
            +
                #   The parameter names and values defined in the extension.
         | 
| 3564 | 
            +
                #
         | 
| 3565 | 
            +
                # @return [Types::ExtensionAssociation] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
         | 
| 3566 | 
            +
                #
         | 
| 3567 | 
            +
                #   * {Types::ExtensionAssociation#id #id} => String
         | 
| 3568 | 
            +
                #   * {Types::ExtensionAssociation#extension_arn #extension_arn} => String
         | 
| 3569 | 
            +
                #   * {Types::ExtensionAssociation#resource_arn #resource_arn} => String
         | 
| 3570 | 
            +
                #   * {Types::ExtensionAssociation#arn #arn} => String
         | 
| 3571 | 
            +
                #   * {Types::ExtensionAssociation#parameters #parameters} => Hash<String,String>
         | 
| 3572 | 
            +
                #   * {Types::ExtensionAssociation#extension_version_number #extension_version_number} => Integer
         | 
| 3573 | 
            +
                #
         | 
| 3574 | 
            +
                # @example Request syntax with placeholder values
         | 
| 3575 | 
            +
                #
         | 
| 3576 | 
            +
                #   resp = client.update_extension_association({
         | 
| 3577 | 
            +
                #     extension_association_id: "Id", # required
         | 
| 3578 | 
            +
                #     parameters: {
         | 
| 3579 | 
            +
                #       "ExtensionOrParameterName" => "StringWithLengthBetween1And2048",
         | 
| 3580 | 
            +
                #     },
         | 
| 3581 | 
            +
                #   })
         | 
| 3582 | 
            +
                #
         | 
| 3583 | 
            +
                # @example Response structure
         | 
| 3584 | 
            +
                #
         | 
| 3585 | 
            +
                #   resp.id #=> String
         | 
| 3586 | 
            +
                #   resp.extension_arn #=> String
         | 
| 3587 | 
            +
                #   resp.resource_arn #=> String
         | 
| 3588 | 
            +
                #   resp.arn #=> String
         | 
| 3589 | 
            +
                #   resp.parameters #=> Hash
         | 
| 3590 | 
            +
                #   resp.parameters["ExtensionOrParameterName"] #=> String
         | 
| 3591 | 
            +
                #   resp.extension_version_number #=> Integer
         | 
| 3592 | 
            +
                #
         | 
| 3593 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateExtensionAssociation AWS API Documentation
         | 
| 3594 | 
            +
                #
         | 
| 3595 | 
            +
                # @overload update_extension_association(params = {})
         | 
| 3596 | 
            +
                # @param [Hash] params ({})
         | 
| 3597 | 
            +
                def update_extension_association(params = {}, options = {})
         | 
| 3598 | 
            +
                  req = build_request(:update_extension_association, params)
         | 
| 3599 | 
            +
                  req.send_request(options)
         | 
| 3600 | 
            +
                end
         | 
| 3601 | 
            +
             | 
| 2782 3602 | 
             
                # Uses the validators in a configuration profile to validate a
         | 
| 2783 3603 | 
             
                # configuration.
         | 
| 2784 3604 | 
             
                #
         | 
| @@ -2834,7 +3654,7 @@ module Aws::AppConfig | |
| 2834 3654 | 
             
                    params: params,
         | 
| 2835 3655 | 
             
                    config: config)
         | 
| 2836 3656 | 
             
                  context[:gem_name] = 'aws-sdk-appconfig'
         | 
| 2837 | 
            -
                  context[:gem_version] = '1. | 
| 3657 | 
            +
                  context[:gem_version] = '1.40.0'
         | 
| 2838 3658 | 
             
                  Seahorse::Client::Request.new(handlers, context)
         | 
| 2839 3659 | 
             
                end
         | 
| 2840 3660 |  |