aws-sdk-appconfig 1.19.0 → 1.20.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.
@@ -336,11 +336,12 @@ module Aws::AppConfig
336
336
 
337
337
  # @!group API Operations
338
338
 
339
- # An application in AppConfig is a logical unit of code that provides
340
- # capabilities for your customers. For example, an application can be a
341
- # microservice that runs on Amazon EC2 instances, a mobile application
342
- # installed by your users, a serverless application using Amazon API
343
- # Gateway and AWS Lambda, or any system you run on behalf of others.
339
+ # Creates an application. An application in AppConfig is a logical unit
340
+ # of code that provides capabilities for your customers. For example, an
341
+ # application can be a microservice that runs on Amazon EC2 instances, a
342
+ # mobile application installed by your users, a serverless application
343
+ # using Amazon API Gateway and Lambda, or any system you run on behalf
344
+ # of others.
344
345
  #
345
346
  # @option params [required, String] :name
346
347
  # A name for the application.
@@ -359,6 +360,23 @@ module Aws::AppConfig
359
360
  # * {Types::Application#name #name} => String
360
361
  # * {Types::Application#description #description} => String
361
362
  #
363
+ #
364
+ # @example Example: To create an application
365
+ #
366
+ # # The following create-application example creates an application in AWS AppConfig.
367
+ #
368
+ # resp = client.create_application({
369
+ # description: "An application used for creating an example.",
370
+ # name: "example-application",
371
+ # })
372
+ #
373
+ # resp.to_h outputs the following:
374
+ # {
375
+ # description: "An application used for creating an example.",
376
+ # id: "339ohji",
377
+ # name: "example-application",
378
+ # }
379
+ #
362
380
  # @example Request syntax with placeholder values
363
381
  #
364
382
  # resp = client.create_application({
@@ -384,25 +402,29 @@ module Aws::AppConfig
384
402
  req.send_request(options)
385
403
  end
386
404
 
387
- # Information that enables AppConfig to access the configuration source.
388
- # Valid configuration sources include Systems Manager (SSM) documents,
389
- # SSM Parameter Store parameters, and Amazon S3 objects. A configuration
390
- # profile includes the following information.
405
+ # Creates a configuration profile, which is information that enables
406
+ # AppConfig to access the configuration source. Valid configuration
407
+ # sources include the AppConfig hosted configuration store, Amazon Web
408
+ # Services Systems Manager (SSM) documents, SSM Parameter Store
409
+ # parameters, Amazon S3 objects, or any [integration source action][1]
410
+ # supported by CodePipeline. A configuration profile includes the
411
+ # following information:
391
412
  #
392
- # * The Uri location of the configuration data.
413
+ # * The URI location of the configuration data.
393
414
  #
394
- # * The AWS Identity and Access Management (IAM) role that provides
395
- # access to the configuration data.
415
+ # * The Identity and Access Management (IAM) role that provides access
416
+ # to the configuration data.
396
417
  #
397
418
  # * A validator for the configuration data. Available validators include
398
- # either a JSON Schema or an AWS Lambda function.
419
+ # either a JSON Schema or an Lambda function.
399
420
  #
400
421
  # For more information, see [Create a Configuration and a Configuration
401
- # Profile][1] in the *AWS AppConfig User Guide*.
422
+ # Profile][2] in the *AppConfig User Guide*.
402
423
  #
403
424
  #
404
425
  #
405
- # [1]: http://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-creating-configuration-and-profile.html
426
+ # [1]: http://docs.aws.amazon.com/codepipeline/latest/userguide/integrations-action-type.html#integrations-source
427
+ # [2]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-configuration-and-profile.html
406
428
  #
407
429
  # @option params [required, String] :application_id
408
430
  # The application ID.
@@ -414,19 +436,25 @@ module Aws::AppConfig
414
436
  # A description of the configuration profile.
415
437
  #
416
438
  # @option params [required, String] :location_uri
417
- # A URI to locate the configuration. You can specify a Systems Manager
418
- # (SSM) document, an SSM Parameter Store parameter, or an Amazon S3
419
- # object. For an SSM document, specify either the document name in the
420
- # format `ssm-document://<Document_name>` or the Amazon Resource Name
421
- # (ARN). For a parameter, specify either the parameter name in the
422
- # format `ssm-parameter://<Parameter_name>` or the ARN. For an Amazon S3
439
+ # A URI to locate the configuration. You can specify the AppConfig
440
+ # hosted configuration store, Systems Manager (SSM) document, an SSM
441
+ # Parameter Store parameter, or an Amazon S3 object. For the hosted
442
+ # configuration store and for feature flags, specify `hosted`. For an
443
+ # SSM document, specify either the document name in the format
444
+ # `ssm-document://<Document_name>` or the Amazon Resource Name (ARN).
445
+ # For a parameter, specify either the parameter name in the format
446
+ # `ssm-parameter://<Parameter_name>` or the ARN. For an Amazon S3
423
447
  # object, specify the URI in the following format:
424
448
  # `s3://<bucket>/<objectKey> `. Here is an example:
425
- # s3://my-bucket/my-app/us-east-1/my-config.json
449
+ # `s3://my-bucket/my-app/us-east-1/my-config.json`
426
450
  #
427
451
  # @option params [String] :retrieval_role_arn
428
452
  # The ARN of an IAM role with permission to access the configuration at
429
- # the specified LocationUri.
453
+ # the specified `LocationUri`.
454
+ #
455
+ # A retrieval role ARN is not required for configurations stored in the
456
+ # AppConfig hosted configuration store. It is required for all other
457
+ # sources that store your configuration.
430
458
  #
431
459
  # @option params [Array<Types::Validator>] :validators
432
460
  # A list of methods for validating the configuration.
@@ -436,6 +464,12 @@ module Aws::AppConfig
436
464
  # and categorize your AppConfig resources. Each tag consists of a key
437
465
  # and an optional value, both of which you define.
438
466
  #
467
+ # @option params [String] :type
468
+ # The type of configurations that the configuration profile contains. A
469
+ # configuration can be a feature flag used for enabling or disabling new
470
+ # features or a free-form configuration used for distributing
471
+ # configurations to your application.
472
+ #
439
473
  # @return [Types::ConfigurationProfile] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
440
474
  #
441
475
  # * {Types::ConfigurationProfile#application_id #application_id} => String
@@ -445,6 +479,29 @@ module Aws::AppConfig
445
479
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
446
480
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
447
481
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
482
+ # * {Types::ConfigurationProfile#type #type} => String
483
+ #
484
+ #
485
+ # @example Example: To create a configuration profile
486
+ #
487
+ # # The following create-configuration-profile example creates a configuration profile using a configuration stored in
488
+ # # Parameter Store, a capability of Systems Manager.
489
+ #
490
+ # resp = client.create_configuration_profile({
491
+ # application_id: "339ohji",
492
+ # location_uri: "ssm-parameter://Example-Parameter",
493
+ # name: "Example-Configuration-Profile",
494
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
495
+ # })
496
+ #
497
+ # resp.to_h outputs the following:
498
+ # {
499
+ # application_id: "339ohji",
500
+ # id: "ur8hx2f",
501
+ # location_uri: "ssm-parameter://Example-Parameter",
502
+ # name: "Example-Configuration-Profile",
503
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
504
+ # }
448
505
  #
449
506
  # @example Request syntax with placeholder values
450
507
  #
@@ -463,6 +520,7 @@ module Aws::AppConfig
463
520
  # tags: {
464
521
  # "TagKey" => "TagValue",
465
522
  # },
523
+ # type: "ConfigurationProfileType",
466
524
  # })
467
525
  #
468
526
  # @example Response structure
@@ -476,6 +534,7 @@ module Aws::AppConfig
476
534
  # resp.validators #=> Array
477
535
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
478
536
  # resp.validators[0].content #=> String
537
+ # resp.type #=> String
479
538
  #
480
539
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/CreateConfigurationProfile AWS API Documentation
481
540
  #
@@ -486,11 +545,11 @@ module Aws::AppConfig
486
545
  req.send_request(options)
487
546
  end
488
547
 
489
- # A deployment strategy defines important criteria for rolling out your
490
- # configuration to the designated targets. A deployment strategy
491
- # includes: the overall duration required, a percentage of targets to
492
- # receive the deployment during each interval, an algorithm that defines
493
- # how percentage grows, and bake time.
548
+ # Creates a deployment strategy that defines important criteria for
549
+ # rolling out your configuration to the designated targets. A deployment
550
+ # strategy includes the overall duration required, a percentage of
551
+ # targets to receive the deployment during each interval, an algorithm
552
+ # that defines how percentage grows, and bake time.
494
553
  #
495
554
  # @option params [required, String] :name
496
555
  # A name for the deployment strategy.
@@ -511,8 +570,8 @@ module Aws::AppConfig
511
570
  # each interval.
512
571
  #
513
572
  # @option params [String] :growth_type
514
- # The algorithm used to define how percentage grows over time. AWS
515
- # AppConfig supports the following growth types:
573
+ # The algorithm used to define how percentage grows over time. AppConfig
574
+ # supports the following growth types:
516
575
  #
517
576
  # **Linear**\: For this type, AppConfig processes the deployment by
518
577
  # dividing the total number of targets by the value specified for `Step
@@ -558,6 +617,31 @@ module Aws::AppConfig
558
617
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
559
618
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
560
619
  #
620
+ #
621
+ # @example Example: To create a deployment strategy
622
+ #
623
+ # # The following create-deployment-strategy example creates a deployment strategy called Example-Deployment that takes 15
624
+ # # minutes and deploys the configuration to 25% of the application at a time. The strategy is also copied to an SSM
625
+ # # Document.
626
+ #
627
+ # resp = client.create_deployment_strategy({
628
+ # deployment_duration_in_minutes: 15,
629
+ # growth_factor: 25,
630
+ # name: "Example-Deployment",
631
+ # replicate_to: "SSM_DOCUMENT",
632
+ # })
633
+ #
634
+ # resp.to_h outputs the following:
635
+ # {
636
+ # deployment_duration_in_minutes: 15,
637
+ # final_bake_time_in_minutes: 0,
638
+ # growth_factor: 25,
639
+ # growth_type: "LINEAR",
640
+ # id: "1225qzk",
641
+ # name: "Example-Deployment",
642
+ # replicate_to: "SSM_DOCUMENT",
643
+ # }
644
+ #
561
645
  # @example Request syntax with placeholder values
562
646
  #
563
647
  # resp = client.create_deployment_strategy({
@@ -593,14 +677,15 @@ module Aws::AppConfig
593
677
  req.send_request(options)
594
678
  end
595
679
 
596
- # For each application, you define one or more environments. An
597
- # environment is a logical deployment group of AppConfig targets, such
598
- # as applications in a `Beta` or `Production` environment. You can also
599
- # define environments for application subcomponents such as the `Web`,
600
- # `Mobile` and `Back-end` components for your application. You can
601
- # configure Amazon CloudWatch alarms for each environment. The system
602
- # monitors alarms during a configuration deployment. If an alarm is
603
- # triggered, the system rolls back the configuration.
680
+ # Creates an environment. For each application, you define one or more
681
+ # environments. An environment is a logical deployment group of
682
+ # AppConfig targets, such as applications in a `Beta` or `Production`
683
+ # environment. You can also define environments for application
684
+ # subcomponents such as the `Web`, `Mobile` and `Back-end` components
685
+ # for your application. You can configure Amazon CloudWatch alarms for
686
+ # each environment. The system monitors alarms during a configuration
687
+ # deployment. If an alarm is triggered, the system rolls back the
688
+ # configuration.
604
689
  #
605
690
  # @option params [required, String] :application_id
606
691
  # The application ID.
@@ -628,6 +713,25 @@ module Aws::AppConfig
628
713
  # * {Types::Environment#state #state} => String
629
714
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
630
715
  #
716
+ #
717
+ # @example Example: To create an environment
718
+ #
719
+ # # The following create-environment example creates an AWS AppConfig environment named Example-Environment using the
720
+ # # application you created using create-application
721
+ #
722
+ # resp = client.create_environment({
723
+ # application_id: "339ohji",
724
+ # name: "Example-Environment",
725
+ # })
726
+ #
727
+ # resp.to_h outputs the following:
728
+ # {
729
+ # application_id: "339ohji",
730
+ # id: "54j1r29",
731
+ # name: "Example-Environment",
732
+ # state: "READY_FOR_DEPLOYMENT",
733
+ # }
734
+ #
631
735
  # @example Request syntax with placeholder values
632
736
  #
633
737
  # resp = client.create_environment({
@@ -636,7 +740,7 @@ module Aws::AppConfig
636
740
  # description: "Description",
637
741
  # monitors: [
638
742
  # {
639
- # alarm_arn: "Arn",
743
+ # alarm_arn: "StringWithLengthBetween1And2048", # required
640
744
  # alarm_role_arn: "RoleArn",
641
745
  # },
642
746
  # ],
@@ -665,7 +769,8 @@ module Aws::AppConfig
665
769
  req.send_request(options)
666
770
  end
667
771
 
668
- # Create a new configuration in the AppConfig configuration store.
772
+ # Creates a new configuration in the AppConfig hosted configuration
773
+ # store.
669
774
  #
670
775
  # @option params [required, String] :application_id
671
776
  # The application ID.
@@ -685,14 +790,14 @@ module Aws::AppConfig
685
790
  #
686
791
  #
687
792
  #
688
- # [1]: https://docs.aws.amazon.com/https:/www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
793
+ # [1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
689
794
  #
690
795
  # @option params [Integer] :latest_version_number
691
796
  # An optional locking token used to prevent race conditions from
692
797
  # overwriting configuration updates when creating a new version. To
693
798
  # ensure your data is not overwritten when creating multiple hosted
694
- # configuration versions in rapid succession, specify the version of the
695
- # latest hosted configuration version.
799
+ # configuration versions in rapid succession, specify the version number
800
+ # of the latest hosted configuration version.
696
801
  #
697
802
  # @return [Types::HostedConfigurationVersion] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
698
803
  #
@@ -703,6 +808,28 @@ module Aws::AppConfig
703
808
  # * {Types::HostedConfigurationVersion#content #content} => String
704
809
  # * {Types::HostedConfigurationVersion#content_type #content_type} => String
705
810
  #
811
+ #
812
+ # @example Example: To create a hosted configuration version
813
+ #
814
+ # # The following create-hosted-configuration-version example creates a new configuration in the AWS AppConfig configuration
815
+ # # store.
816
+ #
817
+ # resp = client.create_hosted_configuration_version({
818
+ # application_id: "339ohji",
819
+ # configuration_profile_id: "ur8hx2f",
820
+ # content: "eyAiTmFtZSI6ICJFeGFtcGxlQXBwbGljYXRpb24iLCAiSWQiOiBFeGFtcGxlSUQsICJSYW5rIjogNyB9",
821
+ # content_type: "text",
822
+ # latest_version_number: 1,
823
+ # })
824
+ #
825
+ # resp.to_h outputs the following:
826
+ # {
827
+ # application_id: "339ohji",
828
+ # configuration_profile_id: "ur8hx2f",
829
+ # content_type: "text",
830
+ # version_number: 1,
831
+ # }
832
+ #
706
833
  # @example Request syntax with placeholder values
707
834
  #
708
835
  # resp = client.create_hosted_configuration_version({
@@ -732,7 +859,7 @@ module Aws::AppConfig
732
859
  req.send_request(options)
733
860
  end
734
861
 
735
- # Delete an application. Deleting an application does not delete a
862
+ # Deletes an application. Deleting an application does not delete a
736
863
  # configuration from a host.
737
864
  #
738
865
  # @option params [required, String] :application_id
@@ -740,6 +867,15 @@ module Aws::AppConfig
740
867
  #
741
868
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
742
869
  #
870
+ #
871
+ # @example Example: To delete an application
872
+ #
873
+ # # The following delete-application example deletes the specified application.
874
+ #
875
+ # resp = client.delete_application({
876
+ # application_id: "339ohji",
877
+ # })
878
+ #
743
879
  # @example Request syntax with placeholder values
744
880
  #
745
881
  # resp = client.delete_application({
@@ -755,7 +891,7 @@ module Aws::AppConfig
755
891
  req.send_request(options)
756
892
  end
757
893
 
758
- # Delete a configuration profile. Deleting a configuration profile does
894
+ # Deletes a configuration profile. Deleting a configuration profile does
759
895
  # not delete a configuration from a host.
760
896
  #
761
897
  # @option params [required, String] :application_id
@@ -767,6 +903,16 @@ module Aws::AppConfig
767
903
  #
768
904
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
769
905
  #
906
+ #
907
+ # @example Example: To delete a configuration profile
908
+ #
909
+ # # The following delete-configuration-profile example deletes the specified configuration profile.
910
+ #
911
+ # resp = client.delete_configuration_profile({
912
+ # application_id: "339ohji",
913
+ # configuration_profile_id: "ur8hx2f",
914
+ # })
915
+ #
770
916
  # @example Request syntax with placeholder values
771
917
  #
772
918
  # resp = client.delete_configuration_profile({
@@ -783,7 +929,7 @@ module Aws::AppConfig
783
929
  req.send_request(options)
784
930
  end
785
931
 
786
- # Delete a deployment strategy. Deleting a deployment strategy does not
932
+ # Deletes a deployment strategy. Deleting a deployment strategy does not
787
933
  # delete a configuration from a host.
788
934
  #
789
935
  # @option params [required, String] :deployment_strategy_id
@@ -791,6 +937,15 @@ module Aws::AppConfig
791
937
  #
792
938
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
793
939
  #
940
+ #
941
+ # @example Example: To delete a deployment strategy
942
+ #
943
+ # # The following delete-deployment-strategy example deletes the specified deployment strategy.
944
+ #
945
+ # resp = client.delete_deployment_strategy({
946
+ # deployment_strategy_id: "1225qzk",
947
+ # })
948
+ #
794
949
  # @example Request syntax with placeholder values
795
950
  #
796
951
  # resp = client.delete_deployment_strategy({
@@ -806,17 +961,28 @@ module Aws::AppConfig
806
961
  req.send_request(options)
807
962
  end
808
963
 
809
- # Delete an environment. Deleting an environment does not delete a
964
+ # Deletes an environment. Deleting an environment does not delete a
810
965
  # configuration from a host.
811
966
  #
812
967
  # @option params [required, String] :application_id
813
- # The application ID that includes the environment you want to delete.
968
+ # The application ID that includes the environment that you want to
969
+ # delete.
814
970
  #
815
971
  # @option params [required, String] :environment_id
816
- # The ID of the environment you want to delete.
972
+ # The ID of the environment that you want to delete.
817
973
  #
818
974
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
819
975
  #
976
+ #
977
+ # @example Example: To delete an environment
978
+ #
979
+ # # The following delete-environment example deletes the specified application environment.
980
+ #
981
+ # resp = client.delete_environment({
982
+ # application_id: "339ohji",
983
+ # environment_id: "54j1r29",
984
+ # })
985
+ #
820
986
  # @example Request syntax with placeholder values
821
987
  #
822
988
  # resp = client.delete_environment({
@@ -833,8 +999,8 @@ module Aws::AppConfig
833
999
  req.send_request(options)
834
1000
  end
835
1001
 
836
- # Delete a version of a configuration from the AppConfig configuration
837
- # store.
1002
+ # Deletes a version of a configuration from the AppConfig hosted
1003
+ # configuration store.
838
1004
  #
839
1005
  # @option params [required, String] :application_id
840
1006
  # The application ID.
@@ -847,6 +1013,18 @@ module Aws::AppConfig
847
1013
  #
848
1014
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
849
1015
  #
1016
+ #
1017
+ # @example Example: To delete a hosted configuration version
1018
+ #
1019
+ # # The following delete-hosted-configuration-version example deletes a configuration version hosted in the AWS AppConfig
1020
+ # # configuration store.
1021
+ #
1022
+ # resp = client.delete_hosted_configuration_version({
1023
+ # application_id: "339ohji",
1024
+ # configuration_profile_id: "ur8hx2f",
1025
+ # version_number: 1,
1026
+ # })
1027
+ #
850
1028
  # @example Request syntax with placeholder values
851
1029
  #
852
1030
  # resp = client.delete_hosted_configuration_version({
@@ -864,7 +1042,7 @@ module Aws::AppConfig
864
1042
  req.send_request(options)
865
1043
  end
866
1044
 
867
- # Retrieve information about an application.
1045
+ # Retrieves information about an application.
868
1046
  #
869
1047
  # @option params [required, String] :application_id
870
1048
  # The ID of the application you want to get.
@@ -875,6 +1053,21 @@ module Aws::AppConfig
875
1053
  # * {Types::Application#name #name} => String
876
1054
  # * {Types::Application#description #description} => String
877
1055
  #
1056
+ #
1057
+ # @example Example: To list details of an application
1058
+ #
1059
+ # # The following get-application example lists the details of the specified application.
1060
+ #
1061
+ # resp = client.get_application({
1062
+ # application_id: "339ohji",
1063
+ # })
1064
+ #
1065
+ # resp.to_h outputs the following:
1066
+ # {
1067
+ # id: "339ohji",
1068
+ # name: "example-application",
1069
+ # }
1070
+ #
878
1071
  # @example Request syntax with placeholder values
879
1072
  #
880
1073
  # resp = client.get_application({
@@ -896,11 +1089,11 @@ module Aws::AppConfig
896
1089
  req.send_request(options)
897
1090
  end
898
1091
 
899
- # Receive information about a configuration.
1092
+ # Retrieves information about a configuration.
900
1093
  #
901
- # AWS AppConfig uses the value of the `ClientConfigurationVersion`
902
- # parameter to identify the configuration version on your clients. If
903
- # you don’t send `ClientConfigurationVersion` with each call to
1094
+ # AppConfig uses the value of the `ClientConfigurationVersion` parameter
1095
+ # to identify the configuration version on your clients. If you don’t
1096
+ # send `ClientConfigurationVersion` with each call to
904
1097
  # `GetConfiguration`, your clients receive the current configuration.
905
1098
  # You are charged each time your clients receive a configuration.
906
1099
  #
@@ -923,17 +1116,18 @@ module Aws::AppConfig
923
1116
  # configuration ID.
924
1117
  #
925
1118
  # @option params [required, String] :client_id
926
- # A unique ID to identify the client for the configuration. This ID
927
- # enables AppConfig to deploy the configuration in intervals, as defined
928
- # in the deployment strategy.
1119
+ # The clientId parameter in the following command is a unique,
1120
+ # user-specified ID to identify the client for the configuration. This
1121
+ # ID enables AppConfig to deploy the configuration in intervals, as
1122
+ # defined in the deployment strategy.
929
1123
  #
930
1124
  # @option params [String] :client_configuration_version
931
1125
  # The configuration version returned in the most recent
932
1126
  # `GetConfiguration` response.
933
1127
  #
934
- # AWS AppConfig uses the value of the `ClientConfigurationVersion`
935
- # parameter to identify the configuration version on your clients. If
936
- # you don’t send `ClientConfigurationVersion` with each call to
1128
+ # AppConfig uses the value of the `ClientConfigurationVersion` parameter
1129
+ # to identify the configuration version on your clients. If you don’t
1130
+ # send `ClientConfigurationVersion` with each call to
937
1131
  # `GetConfiguration`, your clients receive the current configuration.
938
1132
  # You are charged each time your clients receive a configuration.
939
1133
  #
@@ -944,11 +1138,11 @@ module Aws::AppConfig
944
1138
  # the `ClientConfigurationVersion` parameter.
945
1139
  #
946
1140
  # For more information about working with configurations, see
947
- # [Retrieving the Configuration][1] in the *AWS AppConfig User Guide*.
1141
+ # [Retrieving the Configuration][1] in the *AppConfig User Guide*.
948
1142
  #
949
1143
  #
950
1144
  #
951
- # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-retrieving-the-configuration.html
1145
+ # [1]: http://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-retrieving-the-configuration.html
952
1146
  #
953
1147
  # @return [Types::Configuration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
954
1148
  #
@@ -956,6 +1150,27 @@ module Aws::AppConfig
956
1150
  # * {Types::Configuration#configuration_version #configuration_version} => String
957
1151
  # * {Types::Configuration#content_type #content_type} => String
958
1152
  #
1153
+ #
1154
+ # @example Example: To retrieve configuration details
1155
+ #
1156
+ # # The following get-configuration example returns the configuration details of the example application. On subsequent
1157
+ # # calls to get-configuration, use the client-configuration-version parameter to only update the configuration of your
1158
+ # # application if the version has changed. Only updating the configuration when the version has changed avoids excess
1159
+ # # charges incurred by calling get-configuration.
1160
+ #
1161
+ # resp = client.get_configuration({
1162
+ # application: "example-application",
1163
+ # client_id: "example-id",
1164
+ # configuration: "Example-Configuration-Profile",
1165
+ # environment: "Example-Environment",
1166
+ # })
1167
+ #
1168
+ # resp.to_h outputs the following:
1169
+ # {
1170
+ # configuration_version: "1",
1171
+ # content_type: "application/octet-stream",
1172
+ # }
1173
+ #
959
1174
  # @example Request syntax with placeholder values
960
1175
  #
961
1176
  # resp = client.get_configuration({
@@ -981,14 +1196,14 @@ module Aws::AppConfig
981
1196
  req.send_request(options)
982
1197
  end
983
1198
 
984
- # Retrieve information about a configuration profile.
1199
+ # Retrieves information about a configuration profile.
985
1200
  #
986
1201
  # @option params [required, String] :application_id
987
1202
  # The ID of the application that includes the configuration profile you
988
1203
  # want to get.
989
1204
  #
990
1205
  # @option params [required, String] :configuration_profile_id
991
- # The ID of the configuration profile you want to get.
1206
+ # The ID of the configuration profile that you want to get.
992
1207
  #
993
1208
  # @return [Types::ConfigurationProfile] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
994
1209
  #
@@ -999,6 +1214,26 @@ module Aws::AppConfig
999
1214
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
1000
1215
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
1001
1216
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
1217
+ # * {Types::ConfigurationProfile#type #type} => String
1218
+ #
1219
+ #
1220
+ # @example Example: To retrieve configuration profile details
1221
+ #
1222
+ # # The following get-configuration-profile example returns the details of the specified configuration profile.
1223
+ #
1224
+ # resp = client.get_configuration_profile({
1225
+ # application_id: "339ohji",
1226
+ # configuration_profile_id: "ur8hx2f",
1227
+ # })
1228
+ #
1229
+ # resp.to_h outputs the following:
1230
+ # {
1231
+ # application_id: "339ohji",
1232
+ # id: "ur8hx2f",
1233
+ # location_uri: "ssm-parameter://Example-Parameter",
1234
+ # name: "Example-Configuration-Profile",
1235
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
1236
+ # }
1002
1237
  #
1003
1238
  # @example Request syntax with placeholder values
1004
1239
  #
@@ -1018,6 +1253,7 @@ module Aws::AppConfig
1018
1253
  # resp.validators #=> Array
1019
1254
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
1020
1255
  # resp.validators[0].content #=> String
1256
+ # resp.type #=> String
1021
1257
  #
1022
1258
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/GetConfigurationProfile AWS API Documentation
1023
1259
  #
@@ -1028,7 +1264,7 @@ module Aws::AppConfig
1028
1264
  req.send_request(options)
1029
1265
  end
1030
1266
 
1031
- # Retrieve information about a configuration deployment.
1267
+ # Retrieves information about a configuration deployment.
1032
1268
  #
1033
1269
  # @option params [required, String] :application_id
1034
1270
  # The ID of the application that includes the deployment you want to
@@ -1062,6 +1298,82 @@ module Aws::AppConfig
1062
1298
  # * {Types::Deployment#started_at #started_at} => Time
1063
1299
  # * {Types::Deployment#completed_at #completed_at} => Time
1064
1300
  #
1301
+ #
1302
+ # @example Example: To retrieve deployment details
1303
+ #
1304
+ # # The following get-deployment example lists details of the deployment to the application in the specified environment and
1305
+ # # deployment.
1306
+ #
1307
+ # resp = client.get_deployment({
1308
+ # application_id: "339ohji",
1309
+ # deployment_number: 1,
1310
+ # environment_id: "54j1r29",
1311
+ # })
1312
+ #
1313
+ # resp.to_h outputs the following:
1314
+ # {
1315
+ # application_id: "339ohji",
1316
+ # completed_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1317
+ # configuration_location_uri: "ssm-parameter://Example-Parameter",
1318
+ # configuration_name: "Example-Configuration-Profile",
1319
+ # configuration_profile_id: "ur8hx2f",
1320
+ # configuration_version: "1",
1321
+ # deployment_duration_in_minutes: 15,
1322
+ # deployment_number: 1,
1323
+ # deployment_strategy_id: "1225qzk",
1324
+ # environment_id: "54j1r29",
1325
+ # event_log: [
1326
+ # {
1327
+ # description: "Deployment completed",
1328
+ # event_type: "DEPLOYMENT_COMPLETED",
1329
+ # occurred_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1330
+ # triggered_by: "APPCONFIG",
1331
+ # },
1332
+ # {
1333
+ # description: "Deployment bake time started",
1334
+ # event_type: "BAKE_TIME_STARTED",
1335
+ # occurred_at: Time.parse("2021-09-17T21:58:57.722000+00:00"),
1336
+ # triggered_by: "APPCONFIG",
1337
+ # },
1338
+ # {
1339
+ # description: "Configuration available to 100.00% of clients",
1340
+ # event_type: "PERCENTAGE_UPDATED",
1341
+ # occurred_at: Time.parse("2021-09-17T21:55:56.816000+00:00"),
1342
+ # triggered_by: "APPCONFIG",
1343
+ # },
1344
+ # {
1345
+ # description: "Configuration available to 75.00% of clients",
1346
+ # event_type: "PERCENTAGE_UPDATED",
1347
+ # occurred_at: Time.parse("2021-09-17T21:52:56.567000+00:00"),
1348
+ # triggered_by: "APPCONFIG",
1349
+ # },
1350
+ # {
1351
+ # description: "Configuration available to 50.00% of clients",
1352
+ # event_type: "PERCENTAGE_UPDATED",
1353
+ # occurred_at: Time.parse("2021-09-17T21:49:55.737000+00:00"),
1354
+ # triggered_by: "APPCONFIG",
1355
+ # },
1356
+ # {
1357
+ # description: "Configuration available to 25.00% of clients",
1358
+ # event_type: "PERCENTAGE_UPDATED",
1359
+ # occurred_at: Time.parse("2021-09-17T21:46:55.187000+00:00"),
1360
+ # triggered_by: "APPCONFIG",
1361
+ # },
1362
+ # {
1363
+ # description: "Deployment started",
1364
+ # event_type: "DEPLOYMENT_STARTED",
1365
+ # occurred_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1366
+ # triggered_by: "USER",
1367
+ # },
1368
+ # ],
1369
+ # final_bake_time_in_minutes: 0,
1370
+ # growth_factor: 25,
1371
+ # growth_type: "LINEAR",
1372
+ # percentage_complete: 100,
1373
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1374
+ # state: "COMPLETE",
1375
+ # }
1376
+ #
1065
1377
  # @example Request syntax with placeholder values
1066
1378
  #
1067
1379
  # resp = client.get_deployment({
@@ -1104,9 +1416,9 @@ module Aws::AppConfig
1104
1416
  req.send_request(options)
1105
1417
  end
1106
1418
 
1107
- # Retrieve information about a deployment strategy. A deployment
1419
+ # Retrieves information about a deployment strategy. A deployment
1108
1420
  # strategy defines important criteria for rolling out your configuration
1109
- # to the designated targets. A deployment strategy includes: the overall
1421
+ # to the designated targets. A deployment strategy includes the overall
1110
1422
  # duration required, a percentage of targets to receive the deployment
1111
1423
  # during each interval, an algorithm that defines how percentage grows,
1112
1424
  # and bake time.
@@ -1125,6 +1437,26 @@ module Aws::AppConfig
1125
1437
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
1126
1438
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
1127
1439
  #
1440
+ #
1441
+ # @example Example: To retrieve details of a deployment strategy
1442
+ #
1443
+ # # The following get-deployment-strategy example lists the details of the specified deployment strategy.
1444
+ #
1445
+ # resp = client.get_deployment_strategy({
1446
+ # deployment_strategy_id: "1225qzk",
1447
+ # })
1448
+ #
1449
+ # resp.to_h outputs the following:
1450
+ # {
1451
+ # deployment_duration_in_minutes: 15,
1452
+ # final_bake_time_in_minutes: 0,
1453
+ # growth_factor: 25,
1454
+ # growth_type: "LINEAR",
1455
+ # id: "1225qzk",
1456
+ # name: "Example-Deployment",
1457
+ # replicate_to: "SSM_DOCUMENT",
1458
+ # }
1459
+ #
1128
1460
  # @example Request syntax with placeholder values
1129
1461
  #
1130
1462
  # resp = client.get_deployment_strategy({
@@ -1151,19 +1483,20 @@ module Aws::AppConfig
1151
1483
  req.send_request(options)
1152
1484
  end
1153
1485
 
1154
- # Retrieve information about an environment. An environment is a logical
1155
- # deployment group of AppConfig applications, such as applications in a
1156
- # `Production` environment or in an `EU_Region` environment. Each
1157
- # configuration deployment targets an environment. You can enable one or
1158
- # more Amazon CloudWatch alarms for an environment. If an alarm is
1159
- # triggered during a deployment, AppConfig roles back the configuration.
1486
+ # Retrieves information about an environment. An environment is a
1487
+ # logical deployment group of AppConfig applications, such as
1488
+ # applications in a `Production` environment or in an `EU_Region`
1489
+ # environment. Each configuration deployment targets an environment. You
1490
+ # can enable one or more Amazon CloudWatch alarms for an environment. If
1491
+ # an alarm is triggered during a deployment, AppConfig roles back the
1492
+ # configuration.
1160
1493
  #
1161
1494
  # @option params [required, String] :application_id
1162
1495
  # The ID of the application that includes the environment you want to
1163
1496
  # get.
1164
1497
  #
1165
1498
  # @option params [required, String] :environment_id
1166
- # The ID of the environment you wnat to get.
1499
+ # The ID of the environment that you want to get.
1167
1500
  #
1168
1501
  # @return [Types::Environment] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1169
1502
  #
@@ -1174,6 +1507,24 @@ module Aws::AppConfig
1174
1507
  # * {Types::Environment#state #state} => String
1175
1508
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
1176
1509
  #
1510
+ #
1511
+ # @example Example: To retrieve environment details
1512
+ #
1513
+ # # The following get-environment example returns the details and state of the specified environment.
1514
+ #
1515
+ # resp = client.get_environment({
1516
+ # application_id: "339ohji",
1517
+ # environment_id: "54j1r29",
1518
+ # })
1519
+ #
1520
+ # resp.to_h outputs the following:
1521
+ # {
1522
+ # application_id: "339ohji",
1523
+ # id: "54j1r29",
1524
+ # name: "Example-Environment",
1525
+ # state: "READY_FOR_DEPLOYMENT",
1526
+ # }
1527
+ #
1177
1528
  # @example Request syntax with placeholder values
1178
1529
  #
1179
1530
  # resp = client.get_environment({
@@ -1201,7 +1552,7 @@ module Aws::AppConfig
1201
1552
  req.send_request(options)
1202
1553
  end
1203
1554
 
1204
- # Get information about a specific configuration version.
1555
+ # Retrieves information about a specific configuration version.
1205
1556
  #
1206
1557
  # @option params [required, String] :application_id
1207
1558
  # The application ID.
@@ -1221,6 +1572,26 @@ module Aws::AppConfig
1221
1572
  # * {Types::HostedConfigurationVersion#content #content} => String
1222
1573
  # * {Types::HostedConfigurationVersion#content_type #content_type} => String
1223
1574
  #
1575
+ #
1576
+ # @example Example: To retrieve hosted configuration details
1577
+ #
1578
+ # # The following get-hosted-configuration-version example retrieves the configuration details of the AWS AppConfig hosted
1579
+ # # configuration.
1580
+ #
1581
+ # resp = client.get_hosted_configuration_version({
1582
+ # application_id: "339ohji",
1583
+ # configuration_profile_id: "ur8hx2f",
1584
+ # version_number: 1,
1585
+ # })
1586
+ #
1587
+ # resp.to_h outputs the following:
1588
+ # {
1589
+ # application_id: "339ohji",
1590
+ # configuration_profile_id: "ur8hx2f",
1591
+ # content_type: "application/json",
1592
+ # version_number: 1,
1593
+ # }
1594
+ #
1224
1595
  # @example Request syntax with placeholder values
1225
1596
  #
1226
1597
  # resp = client.get_hosted_configuration_version({
@@ -1247,7 +1618,7 @@ module Aws::AppConfig
1247
1618
  req.send_request(options)
1248
1619
  end
1249
1620
 
1250
- # List all applications in your AWS account.
1621
+ # Lists all applications in your Amazon Web Services account.
1251
1622
  #
1252
1623
  # @option params [Integer] :max_results
1253
1624
  # The maximum number of items to return for this call. The call also
@@ -1255,8 +1626,12 @@ module Aws::AppConfig
1255
1626
  # next set of results.
1256
1627
  #
1257
1628
  # @option params [String] :next_token
1258
- # A token to start the list. Use this token to get the next set of
1259
- # results.
1629
+ # A token to start the list. Next token is a pagination token generated
1630
+ # by AppConfig to describe what page the previous List call ended on.
1631
+ # For the first List request, the nextToken should not be set. On
1632
+ # subsequent calls, the nextToken parameter should be set to the
1633
+ # previous responses nextToken value. Use this token to get the next set
1634
+ # of results.
1260
1635
  #
1261
1636
  # @return [Types::Applications] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1262
1637
  #
@@ -1265,6 +1640,29 @@ module Aws::AppConfig
1265
1640
  #
1266
1641
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1267
1642
  #
1643
+ #
1644
+ # @example Example: To list the available applications
1645
+ #
1646
+ # # The following list-applications example lists the available applications in your AWS account.
1647
+ #
1648
+ # resp = client.list_applications({
1649
+ # })
1650
+ #
1651
+ # resp.to_h outputs the following:
1652
+ # {
1653
+ # items: [
1654
+ # {
1655
+ # description: "An application used for creating an example.",
1656
+ # id: "339ohji",
1657
+ # name: "test-application",
1658
+ # },
1659
+ # {
1660
+ # id: "rwalwu7",
1661
+ # name: "Test-Application",
1662
+ # },
1663
+ # ],
1664
+ # }
1665
+ #
1268
1666
  # @example Request syntax with placeholder values
1269
1667
  #
1270
1668
  # resp = client.list_applications({
@@ -1303,6 +1701,11 @@ module Aws::AppConfig
1303
1701
  # A token to start the list. Use this token to get the next set of
1304
1702
  # results.
1305
1703
  #
1704
+ # @option params [String] :type
1705
+ # A filter based on the type of configurations that the configuration
1706
+ # profile contains. A configuration can be a feature flag or a free-form
1707
+ # configuration.
1708
+ #
1306
1709
  # @return [Types::ConfigurationProfiles] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1307
1710
  #
1308
1711
  # * {Types::ConfigurationProfiles#items #items} => Array&lt;Types::ConfigurationProfileSummary&gt;
@@ -1310,12 +1713,35 @@ module Aws::AppConfig
1310
1713
  #
1311
1714
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1312
1715
  #
1716
+ #
1717
+ # @example Example: To list the available configuration profiles
1718
+ #
1719
+ # # The following list-configuration-profiles example lists the available configuration profiles for the specified
1720
+ # # application.
1721
+ #
1722
+ # resp = client.list_configuration_profiles({
1723
+ # application_id: "339ohji",
1724
+ # })
1725
+ #
1726
+ # resp.to_h outputs the following:
1727
+ # {
1728
+ # items: [
1729
+ # {
1730
+ # application_id: "339ohji",
1731
+ # id: "ur8hx2f",
1732
+ # location_uri: "ssm-parameter://Example-Parameter",
1733
+ # name: "Example-Configuration-Profile",
1734
+ # },
1735
+ # ],
1736
+ # }
1737
+ #
1313
1738
  # @example Request syntax with placeholder values
1314
1739
  #
1315
1740
  # resp = client.list_configuration_profiles({
1316
1741
  # application_id: "Id", # required
1317
1742
  # max_results: 1,
1318
1743
  # next_token: "NextToken",
1744
+ # type: "ConfigurationProfileType",
1319
1745
  # })
1320
1746
  #
1321
1747
  # @example Response structure
@@ -1327,6 +1753,7 @@ module Aws::AppConfig
1327
1753
  # resp.items[0].location_uri #=> String
1328
1754
  # resp.items[0].validator_types #=> Array
1329
1755
  # resp.items[0].validator_types[0] #=> String, one of "JSON_SCHEMA", "LAMBDA"
1756
+ # resp.items[0].type #=> String
1330
1757
  # resp.next_token #=> String
1331
1758
  #
1332
1759
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/ListConfigurationProfiles AWS API Documentation
@@ -1338,7 +1765,7 @@ module Aws::AppConfig
1338
1765
  req.send_request(options)
1339
1766
  end
1340
1767
 
1341
- # List deployment strategies.
1768
+ # Lists deployment strategies.
1342
1769
  #
1343
1770
  # @option params [Integer] :max_results
1344
1771
  # The maximum number of items to return for this call. The call also
@@ -1356,6 +1783,29 @@ module Aws::AppConfig
1356
1783
  #
1357
1784
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1358
1785
  #
1786
+ #
1787
+ # @example Example: To list the available deployment strategies
1788
+ #
1789
+ # # The following list-deployment-strategies example lists the available deployment strategies in your AWS account.
1790
+ #
1791
+ # resp = client.list_deployment_strategies({
1792
+ # })
1793
+ #
1794
+ # resp.to_h outputs the following:
1795
+ # {
1796
+ # items: [
1797
+ # {
1798
+ # deployment_duration_in_minutes: 15,
1799
+ # final_bake_time_in_minutes: 0,
1800
+ # growth_factor: 25,
1801
+ # growth_type: "LINEAR",
1802
+ # id: "1225qzk",
1803
+ # name: "Example-Deployment",
1804
+ # replicate_to: "SSM_DOCUMENT",
1805
+ # },
1806
+ # ],
1807
+ # }
1808
+ #
1359
1809
  # @example Request syntax with placeholder values
1360
1810
  #
1361
1811
  # resp = client.list_deployment_strategies({
@@ -1409,6 +1859,36 @@ module Aws::AppConfig
1409
1859
  #
1410
1860
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1411
1861
  #
1862
+ #
1863
+ # @example Example: To list the available deployments
1864
+ #
1865
+ # # The following list-deployments example lists the available deployments in your AWS account for the specified application
1866
+ # # and environment.
1867
+ #
1868
+ # resp = client.list_deployments({
1869
+ # application_id: "339ohji",
1870
+ # environment_id: "54j1r29",
1871
+ # })
1872
+ #
1873
+ # resp.to_h outputs the following:
1874
+ # {
1875
+ # items: [
1876
+ # {
1877
+ # completed_at: Time.parse("2021-09-17T21:59:03.888000+00:00"),
1878
+ # configuration_name: "Example-Configuration-Profile",
1879
+ # configuration_version: "1",
1880
+ # deployment_duration_in_minutes: 15,
1881
+ # deployment_number: 1,
1882
+ # final_bake_time_in_minutes: 0,
1883
+ # growth_factor: 25,
1884
+ # growth_type: "LINEAR",
1885
+ # percentage_complete: 100,
1886
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
1887
+ # state: "COMPLETE",
1888
+ # },
1889
+ # ],
1890
+ # }
1891
+ #
1412
1892
  # @example Request syntax with placeholder values
1413
1893
  #
1414
1894
  # resp = client.list_deployments({
@@ -1443,7 +1923,7 @@ module Aws::AppConfig
1443
1923
  req.send_request(options)
1444
1924
  end
1445
1925
 
1446
- # List the environments for an application.
1926
+ # Lists the environments for an application.
1447
1927
  #
1448
1928
  # @option params [required, String] :application_id
1449
1929
  # The application ID.
@@ -1464,6 +1944,28 @@ module Aws::AppConfig
1464
1944
  #
1465
1945
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1466
1946
  #
1947
+ #
1948
+ # @example Example: To list the available environments
1949
+ #
1950
+ # # The following list-environments example lists the available environments in your AWS account for the specified
1951
+ # # application.
1952
+ #
1953
+ # resp = client.list_environments({
1954
+ # application_id: "339ohji",
1955
+ # })
1956
+ #
1957
+ # resp.to_h outputs the following:
1958
+ # {
1959
+ # items: [
1960
+ # {
1961
+ # application_id: "339ohji",
1962
+ # id: "54j1r29",
1963
+ # name: "Example-Environment",
1964
+ # state: "READY_FOR_DEPLOYMENT",
1965
+ # },
1966
+ # ],
1967
+ # }
1968
+ #
1467
1969
  # @example Request syntax with placeholder values
1468
1970
  #
1469
1971
  # resp = client.list_environments({
@@ -1494,7 +1996,7 @@ module Aws::AppConfig
1494
1996
  req.send_request(options)
1495
1997
  end
1496
1998
 
1497
- # View a list of configurations stored in the AppConfig configuration
1999
+ # Lists configurations stored in the AppConfig hosted configuration
1498
2000
  # store by version.
1499
2001
  #
1500
2002
  # @option params [required, String] :application_id
@@ -1519,6 +2021,29 @@ module Aws::AppConfig
1519
2021
  #
1520
2022
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1521
2023
  #
2024
+ #
2025
+ # @example Example: To list the available hosted configuration versions
2026
+ #
2027
+ # # The following list-hosted-configuration-versions example lists the configurations versions hosted in the AWS AppConfig
2028
+ # # hosted configuration store for the specified application and configuration profile.
2029
+ #
2030
+ # resp = client.list_hosted_configuration_versions({
2031
+ # application_id: "339ohji",
2032
+ # configuration_profile_id: "ur8hx2f",
2033
+ # })
2034
+ #
2035
+ # resp.to_h outputs the following:
2036
+ # {
2037
+ # items: [
2038
+ # {
2039
+ # application_id: "339ohji",
2040
+ # configuration_profile_id: "ur8hx2f",
2041
+ # content_type: "application/json",
2042
+ # version_number: 1,
2043
+ # },
2044
+ # ],
2045
+ # }
2046
+ #
1522
2047
  # @example Request syntax with placeholder values
1523
2048
  #
1524
2049
  # resp = client.list_hosted_configuration_versions({
@@ -1556,6 +2081,22 @@ module Aws::AppConfig
1556
2081
  #
1557
2082
  # * {Types::ResourceTags#tags #tags} => Hash&lt;String,String&gt;
1558
2083
  #
2084
+ #
2085
+ # @example Example: To list the tags of an application
2086
+ #
2087
+ # # The following list-tags-for-resource example lists the tags of a specified application.
2088
+ #
2089
+ # resp = client.list_tags_for_resource({
2090
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2091
+ # })
2092
+ #
2093
+ # resp.to_h outputs the following:
2094
+ # {
2095
+ # tags: {
2096
+ # "group1" => "1",
2097
+ # },
2098
+ # }
2099
+ #
1559
2100
  # @example Request syntax with placeholder values
1560
2101
  #
1561
2102
  # resp = client.list_tags_for_resource({
@@ -1622,6 +2163,50 @@ module Aws::AppConfig
1622
2163
  # * {Types::Deployment#started_at #started_at} => Time
1623
2164
  # * {Types::Deployment#completed_at #completed_at} => Time
1624
2165
  #
2166
+ #
2167
+ # @example Example: To start a configuration deployment
2168
+ #
2169
+ # # The following start-deployment example starts a deployment to the application using the specified environment,
2170
+ # # deployment strategy, and configuration profile.
2171
+ #
2172
+ # resp = client.start_deployment({
2173
+ # application_id: "339ohji",
2174
+ # configuration_profile_id: "ur8hx2f",
2175
+ # configuration_version: "1",
2176
+ # deployment_strategy_id: "1225qzk",
2177
+ # description: "",
2178
+ # environment_id: "54j1r29",
2179
+ # tags: {
2180
+ # },
2181
+ # })
2182
+ #
2183
+ # resp.to_h outputs the following:
2184
+ # {
2185
+ # application_id: "339ohji",
2186
+ # configuration_location_uri: "ssm-parameter://Example-Parameter",
2187
+ # configuration_name: "Example-Configuration-Profile",
2188
+ # configuration_profile_id: "ur8hx2f",
2189
+ # configuration_version: "1",
2190
+ # deployment_duration_in_minutes: 15,
2191
+ # deployment_number: 1,
2192
+ # deployment_strategy_id: "1225qzk",
2193
+ # environment_id: "54j1r29",
2194
+ # event_log: [
2195
+ # {
2196
+ # description: "Deployment started",
2197
+ # event_type: "DEPLOYMENT_STARTED",
2198
+ # occurred_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
2199
+ # triggered_by: "USER",
2200
+ # },
2201
+ # ],
2202
+ # final_bake_time_in_minutes: 0,
2203
+ # growth_factor: 25,
2204
+ # growth_type: "LINEAR",
2205
+ # percentage_complete: 1.0,
2206
+ # started_at: Time.parse("2021-09-17T21:43:54.205000+00:00"),
2207
+ # state: "DEPLOYING",
2208
+ # }
2209
+ #
1625
2210
  # @example Request syntax with placeholder values
1626
2211
  #
1627
2212
  # resp = client.start_deployment({
@@ -1704,6 +2289,26 @@ module Aws::AppConfig
1704
2289
  # * {Types::Deployment#started_at #started_at} => Time
1705
2290
  # * {Types::Deployment#completed_at #completed_at} => Time
1706
2291
  #
2292
+ #
2293
+ # @example Example: To stop configuration deployment
2294
+ #
2295
+ # # The following stop-deployment example stops the deployment of an application configuration to the specified environment.
2296
+ #
2297
+ # resp = client.stop_deployment({
2298
+ # application_id: "339ohji",
2299
+ # deployment_number: 2,
2300
+ # environment_id: "54j1r29",
2301
+ # })
2302
+ #
2303
+ # resp.to_h outputs the following:
2304
+ # {
2305
+ # deployment_duration_in_minutes: 15,
2306
+ # deployment_number: 2,
2307
+ # final_bake_time_in_minutes: 0,
2308
+ # growth_factor: 25.0,
2309
+ # percentage_complete: 1.0,
2310
+ # }
2311
+ #
1707
2312
  # @example Request syntax with placeholder values
1708
2313
  #
1709
2314
  # resp = client.stop_deployment({
@@ -1746,7 +2351,7 @@ module Aws::AppConfig
1746
2351
  req.send_request(options)
1747
2352
  end
1748
2353
 
1749
- # Metadata to assign to an AppConfig resource. Tags help organize and
2354
+ # Assigns metadata to an AppConfig resource. Tags help organize and
1750
2355
  # categorize your AppConfig resources. Each tag consists of a key and an
1751
2356
  # optional value, both of which you define. You can specify a maximum of
1752
2357
  # 50 tags for a resource.
@@ -1761,6 +2366,18 @@ module Aws::AppConfig
1761
2366
  #
1762
2367
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1763
2368
  #
2369
+ #
2370
+ # @example Example: To tag an application
2371
+ #
2372
+ # # The following tag-resource example tags an application resource.
2373
+ #
2374
+ # resp = client.tag_resource({
2375
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2376
+ # tags: {
2377
+ # "group1" => "1",
2378
+ # },
2379
+ # })
2380
+ #
1764
2381
  # @example Request syntax with placeholder values
1765
2382
  #
1766
2383
  # resp = client.tag_resource({
@@ -1789,6 +2406,18 @@ module Aws::AppConfig
1789
2406
  #
1790
2407
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1791
2408
  #
2409
+ #
2410
+ # @example Example: To remove a tag from an application
2411
+ #
2412
+ # # The following untag-resource example removes the group1 tag from the specified application.
2413
+ #
2414
+ # resp = client.untag_resource({
2415
+ # resource_arn: "arn:aws:appconfig:us-east-1:111122223333:application/339ohji",
2416
+ # tag_keys: [
2417
+ # "group1",
2418
+ # ],
2419
+ # })
2420
+ #
1792
2421
  # @example Request syntax with placeholder values
1793
2422
  #
1794
2423
  # resp = client.untag_resource({
@@ -1822,6 +2451,24 @@ module Aws::AppConfig
1822
2451
  # * {Types::Application#name #name} => String
1823
2452
  # * {Types::Application#description #description} => String
1824
2453
  #
2454
+ #
2455
+ # @example Example: To update an application
2456
+ #
2457
+ # # The following update-application example updates the name of the specified application.
2458
+ #
2459
+ # resp = client.update_application({
2460
+ # application_id: "339ohji",
2461
+ # description: "",
2462
+ # name: "Example-Application",
2463
+ # })
2464
+ #
2465
+ # resp.to_h outputs the following:
2466
+ # {
2467
+ # description: "An application used for creating an example.",
2468
+ # id: "339ohji",
2469
+ # name: "Example-Application",
2470
+ # }
2471
+ #
1825
2472
  # @example Request syntax with placeholder values
1826
2473
  #
1827
2474
  # resp = client.update_application({
@@ -1861,7 +2508,7 @@ module Aws::AppConfig
1861
2508
  #
1862
2509
  # @option params [String] :retrieval_role_arn
1863
2510
  # The ARN of an IAM role with permission to access the configuration at
1864
- # the specified LocationUri.
2511
+ # the specified `LocationUri`.
1865
2512
  #
1866
2513
  # @option params [Array<Types::Validator>] :validators
1867
2514
  # A list of methods for validating the configuration.
@@ -1875,6 +2522,28 @@ module Aws::AppConfig
1875
2522
  # * {Types::ConfigurationProfile#location_uri #location_uri} => String
1876
2523
  # * {Types::ConfigurationProfile#retrieval_role_arn #retrieval_role_arn} => String
1877
2524
  # * {Types::ConfigurationProfile#validators #validators} => Array&lt;Types::Validator&gt;
2525
+ # * {Types::ConfigurationProfile#type #type} => String
2526
+ #
2527
+ #
2528
+ # @example Example: To update a configuration profile
2529
+ #
2530
+ # # The following update-configuration-profile example updates the description of the specified configuration profile.
2531
+ #
2532
+ # resp = client.update_configuration_profile({
2533
+ # application_id: "339ohji",
2534
+ # configuration_profile_id: "ur8hx2f",
2535
+ # description: "Configuration profile used for examples.",
2536
+ # })
2537
+ #
2538
+ # resp.to_h outputs the following:
2539
+ # {
2540
+ # application_id: "339ohji",
2541
+ # description: "Configuration profile used for examples.",
2542
+ # id: "ur8hx2f",
2543
+ # location_uri: "ssm-parameter://Example-Parameter",
2544
+ # name: "Example-Configuration-Profile",
2545
+ # retrieval_role_arn: "arn:aws:iam::111122223333:role/Example-App-Config-Role",
2546
+ # }
1878
2547
  #
1879
2548
  # @example Request syntax with placeholder values
1880
2549
  #
@@ -1903,6 +2572,7 @@ module Aws::AppConfig
1903
2572
  # resp.validators #=> Array
1904
2573
  # resp.validators[0].type #=> String, one of "JSON_SCHEMA", "LAMBDA"
1905
2574
  # resp.validators[0].content #=> String
2575
+ # resp.type #=> String
1906
2576
  #
1907
2577
  # @see http://docs.aws.amazon.com/goto/WebAPI/appconfig-2019-10-09/UpdateConfigurationProfile AWS API Documentation
1908
2578
  #
@@ -1925,17 +2595,17 @@ module Aws::AppConfig
1925
2595
  # Total amount of time for a deployment to last.
1926
2596
  #
1927
2597
  # @option params [Integer] :final_bake_time_in_minutes
1928
- # The amount of time AppConfig monitors for alarms before considering
1929
- # the deployment to be complete and no longer eligible for automatic
1930
- # roll back.
2598
+ # The amount of time that AppConfig monitors for alarms before
2599
+ # considering the deployment to be complete and no longer eligible for
2600
+ # automatic rollback.
1931
2601
  #
1932
2602
  # @option params [Float] :growth_factor
1933
2603
  # The percentage of targets to receive a deployed configuration during
1934
2604
  # each interval.
1935
2605
  #
1936
2606
  # @option params [String] :growth_type
1937
- # The algorithm used to define how percentage grows over time. AWS
1938
- # AppConfig supports the following growth types:
2607
+ # The algorithm used to define how percentage grows over time. AppConfig
2608
+ # supports the following growth types:
1939
2609
  #
1940
2610
  # **Linear**\: For this type, AppConfig processes the deployment by
1941
2611
  # increments of the growth factor evenly distributed over the deployment
@@ -1973,6 +2643,28 @@ module Aws::AppConfig
1973
2643
  # * {Types::DeploymentStrategy#final_bake_time_in_minutes #final_bake_time_in_minutes} => Integer
1974
2644
  # * {Types::DeploymentStrategy#replicate_to #replicate_to} => String
1975
2645
  #
2646
+ #
2647
+ # @example Example: To update a deployment strategy
2648
+ #
2649
+ # # The following update-deployment-strategy example updates final bake time to 20 minutes in the specified deployment
2650
+ # # strategy. ::
2651
+ #
2652
+ # resp = client.update_deployment_strategy({
2653
+ # deployment_strategy_id: "1225qzk",
2654
+ # final_bake_time_in_minutes: 20,
2655
+ # })
2656
+ #
2657
+ # resp.to_h outputs the following:
2658
+ # {
2659
+ # deployment_duration_in_minutes: 15,
2660
+ # final_bake_time_in_minutes: 20,
2661
+ # growth_factor: 25,
2662
+ # growth_type: "LINEAR",
2663
+ # id: "1225qzk",
2664
+ # name: "Example-Deployment",
2665
+ # replicate_to: "SSM_DOCUMENT",
2666
+ # }
2667
+ #
1976
2668
  # @example Request syntax with placeholder values
1977
2669
  #
1978
2670
  # resp = client.update_deployment_strategy({
@@ -2030,6 +2722,26 @@ module Aws::AppConfig
2030
2722
  # * {Types::Environment#state #state} => String
2031
2723
  # * {Types::Environment#monitors #monitors} => Array&lt;Types::Monitor&gt;
2032
2724
  #
2725
+ #
2726
+ # @example Example: To update an environment
2727
+ #
2728
+ # # The following update-environment example updates an environment's description.
2729
+ #
2730
+ # resp = client.update_environment({
2731
+ # application_id: "339ohji",
2732
+ # description: "An environment for examples.",
2733
+ # environment_id: "54j1r29",
2734
+ # })
2735
+ #
2736
+ # resp.to_h outputs the following:
2737
+ # {
2738
+ # application_id: "339ohji",
2739
+ # description: "An environment for examples.",
2740
+ # id: "54j1r29",
2741
+ # name: "Example-Environment",
2742
+ # state: "ROLLED_BACK",
2743
+ # }
2744
+ #
2033
2745
  # @example Request syntax with placeholder values
2034
2746
  #
2035
2747
  # resp = client.update_environment({
@@ -2039,7 +2751,7 @@ module Aws::AppConfig
2039
2751
  # description: "Description",
2040
2752
  # monitors: [
2041
2753
  # {
2042
- # alarm_arn: "Arn",
2754
+ # alarm_arn: "StringWithLengthBetween1And2048", # required
2043
2755
  # alarm_role_arn: "RoleArn",
2044
2756
  # },
2045
2757
  # ],
@@ -2079,6 +2791,17 @@ module Aws::AppConfig
2079
2791
  #
2080
2792
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2081
2793
  #
2794
+ #
2795
+ # @example Example: To validate a configuration
2796
+ #
2797
+ # # The following validate-configuration example uses the validators in a configuration profile to validate a configuration.
2798
+ #
2799
+ # resp = client.validate_configuration({
2800
+ # application_id: "abc1234",
2801
+ # configuration_profile_id: "ur8hx2f",
2802
+ # configuration_version: "1",
2803
+ # })
2804
+ #
2082
2805
  # @example Request syntax with placeholder values
2083
2806
  #
2084
2807
  # resp = client.validate_configuration({
@@ -2109,7 +2832,7 @@ module Aws::AppConfig
2109
2832
  params: params,
2110
2833
  config: config)
2111
2834
  context[:gem_name] = 'aws-sdk-appconfig'
2112
- context[:gem_version] = '1.19.0'
2835
+ context[:gem_version] = '1.20.0'
2113
2836
  Seahorse::Client::Request.new(handlers, context)
2114
2837
  end
2115
2838