aws-sdk-ssmcontacts 1.16.0 → 1.17.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -394,7 +394,7 @@ module Aws::SSMContacts
394
394
  # Information provided by the user when the user acknowledges the page.
395
395
  #
396
396
  # @option params [required, String] :accept_code
397
- # The accept code is a 6-digit code used to acknowledge the page.
397
+ # A 6-digit code used to acknowledge the page.
398
398
  #
399
399
  # @option params [String] :accept_code_validation
400
400
  # An optional field that Incident Manager uses to `ENFORCE` `AcceptCode`
@@ -410,21 +410,6 @@ module Aws::SSMContacts
410
410
  #
411
411
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
412
412
  #
413
- #
414
- # @example Example: To accept a page during and engagement
415
- #
416
- # # The following accept-page operation uses an accept code sent to the contact channel to accept a page.
417
- #
418
- # resp = client.accept_page({
419
- # accept_code: "425440",
420
- # accept_type: "READ",
421
- # page_id: "arn:aws:ssm-contacts:us-east-2:682428703967:page/akuam/94ea0c7b-56d9-46c3-b84a-a37c8b067ad3",
422
- # })
423
- #
424
- # resp.to_h outputs the following:
425
- # {
426
- # }
427
- #
428
413
  # @example Request syntax with placeholder values
429
414
  #
430
415
  # resp = client.accept_page({
@@ -457,20 +442,6 @@ module Aws::SSMContacts
457
442
  #
458
443
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
459
444
  #
460
- #
461
- # @example Example: Activate a contact's contact channel
462
- #
463
- # # The following activate-contact-channel example activates a contact channel and makes it usable as part of an incident.
464
- #
465
- # resp = client.activate_contact_channel({
466
- # activation_code: "466136",
467
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/fc7405c4-46b2-48b7-87b2-93e2f225b90d",
468
- # })
469
- #
470
- # resp.to_h outputs the following:
471
- # {
472
- # }
473
- #
474
445
  # @example Request syntax with placeholder values
475
446
  #
476
447
  # resp = client.activate_contact_channel({
@@ -522,36 +493,14 @@ module Aws::SSMContacts
522
493
  #
523
494
  # * {Types::CreateContactResult#contact_arn #contact_arn} => String
524
495
  #
525
- #
526
- # @example Example: To create a contact
527
- #
528
- # # The following create-contact example creates a contact in your environment with a blank plan. The plan can be updated
529
- # # after creating contact channels. Use the create-contact-channel operation with the output ARN of this command. After you
530
- # # have created contact channels for this contact use update-contact to update the plan.
531
- #
532
- # resp = client.create_contact({
533
- # alias: "akuam",
534
- # display_name: "Akua Mansa",
535
- # plan: {
536
- # stages: [
537
- # ],
538
- # },
539
- # type: "PERSONAL",
540
- # })
541
- #
542
- # resp.to_h outputs the following:
543
- # {
544
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
545
- # }
546
- #
547
496
  # @example Request syntax with placeholder values
548
497
  #
549
498
  # resp = client.create_contact({
550
499
  # alias: "ContactAlias", # required
551
500
  # display_name: "ContactName",
552
- # type: "PERSONAL", # required, accepts PERSONAL, ESCALATION
501
+ # type: "PERSONAL", # required, accepts PERSONAL, ESCALATION, ONCALL_SCHEDULE
553
502
  # plan: { # required
554
- # stages: [ # required
503
+ # stages: [
555
504
  # {
556
505
  # duration_in_minutes: 1, # required
557
506
  # targets: [ # required
@@ -568,6 +517,7 @@ module Aws::SSMContacts
568
517
  # ],
569
518
  # },
570
519
  # ],
520
+ # rotation_ids: ["SsmContactsArn"],
571
521
  # },
572
522
  # tags: [
573
523
  # {
@@ -637,26 +587,6 @@ module Aws::SSMContacts
637
587
  #
638
588
  # * {Types::CreateContactChannelResult#contact_channel_arn #contact_channel_arn} => String
639
589
  #
640
- #
641
- # @example Example: To create a contact channel
642
- #
643
- # # Creates a contact channel of type SMS for the contact Akua Mansa. Contact channels can be created of type SMS, EMAIL, or
644
- # # VOICE.
645
- #
646
- # resp = client.create_contact_channel({
647
- # contact_id: "arn:aws:ssm-contacts:us-east-1:111122223333:contact/akuam",
648
- # delivery_address: {
649
- # simple_address: "+15005550199",
650
- # },
651
- # name: "akuas sms-test",
652
- # type: "SMS",
653
- # })
654
- #
655
- # resp.to_h outputs the following:
656
- # {
657
- # contact_channel_arn: "arn:aws:ssm-contacts:us-east-1:111122223333:contact-channel/akuam/02f506b9-ea5d-4764-af89-2daa793ff024",
658
- # }
659
- #
660
590
  # @example Request syntax with placeholder values
661
591
  #
662
592
  # resp = client.create_contact_channel({
@@ -683,29 +613,189 @@ module Aws::SSMContacts
683
613
  req.send_request(options)
684
614
  end
685
615
 
686
- # To no longer receive Incident Manager engagements to a contact
687
- # channel, you can deactivate the channel.
616
+ # Creates a rotation in an on-call schedule.
688
617
  #
689
- # @option params [required, String] :contact_channel_id
690
- # The Amazon Resource Name (ARN) of the contact channel you're
691
- # deactivating.
618
+ # @option params [required, String] :name
619
+ # The name of the rotation.
692
620
  #
693
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
621
+ # @option params [required, Array<String>] :contact_ids
622
+ # The Amazon Resource Names (ARNs) of the contacts to add to the
623
+ # rotation.
694
624
  #
625
+ # The order that you list the contacts in is their shift order in the
626
+ # rotation schedule. To change the order of the contact's shifts, use
627
+ # the UpdateRotation operation.
695
628
  #
696
- # @example Example: To deactivate a contact channel
629
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
630
+ # The date and time that the rotation goes into effect.
697
631
  #
698
- # # The following ``deactivate-contact-channel`` example deactivates a contact channel. Deactivating a contact channel means
699
- # # the contact channel will no longer be paged during an incident. You can also reactivate a contact channel at any time
700
- # # using the activate-contact-channel operation.
632
+ # @option params [required, String] :time_zone_id
633
+ # The time zone to base the rotation’s activity on in Internet Assigned
634
+ # Numbers Authority (IANA) format. For example:
635
+ # "America/Los\_Angeles", "UTC", or "Asia/Seoul". For more
636
+ # information, see the [Time Zone Database][1] on the IANA website.
701
637
  #
702
- # resp = client.deactivate_contact_channel({
703
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/fc7405c4-46b2-48b7-87b2-93e2f225b90d",
638
+ # <note markdown="1"> Designators for time zones that don’t support Daylight Savings Time
639
+ # rules, such as Pacific Standard Time (PST) and Pacific Daylight Time
640
+ # (PDT), are not supported.
641
+ #
642
+ # </note>
643
+ #
644
+ #
645
+ #
646
+ # [1]: https://www.iana.org/time-zones
647
+ #
648
+ # @option params [required, Types::RecurrenceSettings] :recurrence
649
+ # Information about the rule that specifies when a shift's team members
650
+ # rotate.
651
+ #
652
+ # @option params [Array<Types::Tag>] :tags
653
+ # Optional metadata to assign to the rotation. Tags enable you to
654
+ # categorize a resource in different ways, such as by purpose, owner, or
655
+ # environment. For more information, see [Tagging Incident Manager
656
+ # resources][1] in the *Incident Manager User Guide*.
657
+ #
658
+ #
659
+ #
660
+ # [1]: https://docs.aws.amazon.com/incident-manager/latest/userguide/tagging.html
661
+ #
662
+ # @option params [String] :idempotency_token
663
+ # A token that ensures that the operation is called only once with the
664
+ # specified details.
665
+ #
666
+ # @return [Types::CreateRotationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
667
+ #
668
+ # * {Types::CreateRotationResult#rotation_arn #rotation_arn} => String
669
+ #
670
+ # @example Request syntax with placeholder values
671
+ #
672
+ # resp = client.create_rotation({
673
+ # name: "RotationName", # required
674
+ # contact_ids: ["SsmContactsArn"], # required
675
+ # start_time: Time.now,
676
+ # time_zone_id: "TimeZoneId", # required
677
+ # recurrence: { # required
678
+ # monthly_settings: [
679
+ # {
680
+ # day_of_month: 1, # required
681
+ # hand_off_time: { # required
682
+ # hour_of_day: 1, # required
683
+ # minute_of_hour: 1, # required
684
+ # },
685
+ # },
686
+ # ],
687
+ # weekly_settings: [
688
+ # {
689
+ # day_of_week: "MON", # required, accepts MON, TUE, WED, THU, FRI, SAT, SUN
690
+ # hand_off_time: { # required
691
+ # hour_of_day: 1, # required
692
+ # minute_of_hour: 1, # required
693
+ # },
694
+ # },
695
+ # ],
696
+ # daily_settings: [
697
+ # {
698
+ # hour_of_day: 1, # required
699
+ # minute_of_hour: 1, # required
700
+ # },
701
+ # ],
702
+ # number_of_on_calls: 1, # required
703
+ # shift_coverages: {
704
+ # "MON" => [
705
+ # {
706
+ # start: {
707
+ # hour_of_day: 1, # required
708
+ # minute_of_hour: 1, # required
709
+ # },
710
+ # end: {
711
+ # hour_of_day: 1, # required
712
+ # minute_of_hour: 1, # required
713
+ # },
714
+ # },
715
+ # ],
716
+ # },
717
+ # recurrence_multiplier: 1, # required
718
+ # },
719
+ # tags: [
720
+ # {
721
+ # key: "TagKey",
722
+ # value: "TagValue",
723
+ # },
724
+ # ],
725
+ # idempotency_token: "IdempotencyToken",
726
+ # })
727
+ #
728
+ # @example Response structure
729
+ #
730
+ # resp.rotation_arn #=> String
731
+ #
732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/CreateRotation AWS API Documentation
733
+ #
734
+ # @overload create_rotation(params = {})
735
+ # @param [Hash] params ({})
736
+ def create_rotation(params = {}, options = {})
737
+ req = build_request(:create_rotation, params)
738
+ req.send_request(options)
739
+ end
740
+
741
+ # Creates an override for a rotation in an on-call schedule.
742
+ #
743
+ # @option params [required, String] :rotation_id
744
+ # The Amazon Resource Name (ARN) of the rotation to create an override
745
+ # for.
746
+ #
747
+ # @option params [required, Array<String>] :new_contact_ids
748
+ # The Amazon Resource Names (ARNs) of the contacts to replace those in
749
+ # the current on-call rotation with.
750
+ #
751
+ # If you want to include any current team members in the override shift,
752
+ # you must include their ARNs in the new contact ID list.
753
+ #
754
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
755
+ # The date and time when the override goes into effect.
756
+ #
757
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
758
+ # The date and time when the override ends.
759
+ #
760
+ # @option params [String] :idempotency_token
761
+ # A token that ensures that the operation is called only once with the
762
+ # specified details.
763
+ #
764
+ # @return [Types::CreateRotationOverrideResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
765
+ #
766
+ # * {Types::CreateRotationOverrideResult#rotation_override_id #rotation_override_id} => String
767
+ #
768
+ # @example Request syntax with placeholder values
769
+ #
770
+ # resp = client.create_rotation_override({
771
+ # rotation_id: "SsmContactsArn", # required
772
+ # new_contact_ids: ["SsmContactsArn"], # required
773
+ # start_time: Time.now, # required
774
+ # end_time: Time.now, # required
775
+ # idempotency_token: "IdempotencyToken",
704
776
  # })
705
777
  #
706
- # resp.to_h outputs the following:
707
- # {
708
- # }
778
+ # @example Response structure
779
+ #
780
+ # resp.rotation_override_id #=> String
781
+ #
782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/CreateRotationOverride AWS API Documentation
783
+ #
784
+ # @overload create_rotation_override(params = {})
785
+ # @param [Hash] params ({})
786
+ def create_rotation_override(params = {}, options = {})
787
+ req = build_request(:create_rotation_override, params)
788
+ req.send_request(options)
789
+ end
790
+
791
+ # To no longer receive Incident Manager engagements to a contact
792
+ # channel, you can deactivate the channel.
793
+ #
794
+ # @option params [required, String] :contact_channel_id
795
+ # The Amazon Resource Name (ARN) of the contact channel you're
796
+ # deactivating.
797
+ #
798
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
709
799
  #
710
800
  # @example Request syntax with placeholder values
711
801
  #
@@ -733,20 +823,6 @@ module Aws::SSMContacts
733
823
  #
734
824
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
735
825
  #
736
- #
737
- # @example Example: To delete a contact
738
- #
739
- # # The following delete-contact example deletes a contact. The contact will no longer be reachable from any escalation plan
740
- # # that refers to them.
741
- #
742
- # resp = client.delete_contact({
743
- # contact_id: "arn:aws:ssm-contacts:us-east-1:111122223333:contact/alejr",
744
- # })
745
- #
746
- # resp.to_h outputs the following:
747
- # {
748
- # }
749
- #
750
826
  # @example Request syntax with placeholder values
751
827
  #
752
828
  # resp = client.delete_contact({
@@ -773,20 +849,6 @@ module Aws::SSMContacts
773
849
  #
774
850
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
775
851
  #
776
- #
777
- # @example Example: To delete a contact channel
778
- #
779
- # # The following delete-contact-channel example deletes a contact channel. Deleting a contact channel ensures the contact
780
- # # channel will not be paged during an incident.
781
- #
782
- # resp = client.delete_contact_channel({
783
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-1:111122223333:contact-channel/akuam/13149bad-52ee-45ea-ae1e-45857f78f9b2",
784
- # })
785
- #
786
- # resp.to_h outputs the following:
787
- # {
788
- # }
789
- #
790
852
  # @example Request syntax with placeholder values
791
853
  #
792
854
  # resp = client.delete_contact_channel({
@@ -802,6 +864,56 @@ module Aws::SSMContacts
802
864
  req.send_request(options)
803
865
  end
804
866
 
867
+ # Deletes a rotation from the system. If a rotation belongs to more than
868
+ # one on-call schedule, this operation deletes it from all of them.
869
+ #
870
+ # @option params [required, String] :rotation_id
871
+ # The Amazon Resource Name (ARN) of the on-call rotation to delete.
872
+ #
873
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
874
+ #
875
+ # @example Request syntax with placeholder values
876
+ #
877
+ # resp = client.delete_rotation({
878
+ # rotation_id: "SsmContactsArn", # required
879
+ # })
880
+ #
881
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/DeleteRotation AWS API Documentation
882
+ #
883
+ # @overload delete_rotation(params = {})
884
+ # @param [Hash] params ({})
885
+ def delete_rotation(params = {}, options = {})
886
+ req = build_request(:delete_rotation, params)
887
+ req.send_request(options)
888
+ end
889
+
890
+ # Deletes an existing override for an on-call rotation.
891
+ #
892
+ # @option params [required, String] :rotation_id
893
+ # The Amazon Resource Name (ARN) of the rotation that was overridden.
894
+ #
895
+ # @option params [required, String] :rotation_override_id
896
+ # The Amazon Resource Name (ARN) of the on-call rotation override to
897
+ # delete.
898
+ #
899
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
900
+ #
901
+ # @example Request syntax with placeholder values
902
+ #
903
+ # resp = client.delete_rotation_override({
904
+ # rotation_id: "SsmContactsArn", # required
905
+ # rotation_override_id: "Uuid", # required
906
+ # })
907
+ #
908
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/DeleteRotationOverride AWS API Documentation
909
+ #
910
+ # @overload delete_rotation_override(params = {})
911
+ # @param [Hash] params ({})
912
+ def delete_rotation_override(params = {}, options = {})
913
+ req = build_request(:delete_rotation_override, params)
914
+ req.send_request(options)
915
+ end
916
+
805
917
  # Incident Manager uses engagements to engage contacts and escalation
806
918
  # plans during an incident. Use this command to describe the engagement
807
919
  # that occurred during an incident.
@@ -823,28 +935,6 @@ module Aws::SSMContacts
823
935
  # * {Types::DescribeEngagementResult#start_time #start_time} => Time
824
936
  # * {Types::DescribeEngagementResult#stop_time #stop_time} => Time
825
937
  #
826
- #
827
- # @example Example: To describe the details of an engagement
828
- #
829
- # # The following describe-engagement example lists the details of an engagement to a contact or escalation plan. The
830
- # # subject and content are sent to the contact channels.
831
- #
832
- # resp = client.describe_engagement({
833
- # engagement_id: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/example_escalation/69e40ce1-8dbb-4d57-8962-5fbe7fc53356",
834
- # })
835
- #
836
- # resp.to_h outputs the following:
837
- # {
838
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/example_escalation",
839
- # content: "Testing engagements",
840
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/example_escalation/69e40ce1-8dbb-4d57-8962-5fbe7fc53356",
841
- # public_content: "Testing engagements",
842
- # public_subject: "test",
843
- # sender: "tester",
844
- # start_time: Time.parse("2021-05-18T18:25:41.151000+00:00"),
845
- # subject: "test",
846
- # }
847
- #
848
938
  # @example Request syntax with placeholder values
849
939
  #
850
940
  # resp = client.describe_engagement({
@@ -893,31 +983,6 @@ module Aws::SSMContacts
893
983
  # * {Types::DescribePageResult#read_time #read_time} => Time
894
984
  # * {Types::DescribePageResult#delivery_time #delivery_time} => Time
895
985
  #
896
- #
897
- # @example Example: To list the details of a page to a contact channel
898
- #
899
- # # The following describe-page example lists details of a page to a contact channel. The page will include the subject and
900
- # # content provided.
901
- #
902
- # resp = client.describe_page({
903
- # page_id: "arn:aws:ssm-contacts:us-east-2:111122223333:page/akuam/ad0052bd-e606-498a-861b-25726292eb93",
904
- # })
905
- #
906
- # resp.to_h outputs the following:
907
- # {
908
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
909
- # content: "Testing engagements",
910
- # delivery_time: Time.parse("2021-05-18T18:43:55.265000+00:00"),
911
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/akuam/78a29753-3674-4ac5-9f83-0468563567f0",
912
- # page_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:page/akuam/ad0052bd-e606-498a-861b-25726292eb93",
913
- # public_content: "Testing engagements",
914
- # public_subject: "test",
915
- # read_time: Time.parse("2021-05-18T18:43:55.708000+00:00"),
916
- # sender: "tester",
917
- # sent_time: Time.parse("2021-05-18T18:43:29.301000+00:00"),
918
- # subject: "test",
919
- # }
920
- #
921
986
  # @example Request syntax with placeholder values
922
987
  #
923
988
  # resp = client.describe_page({
@@ -961,113 +1026,6 @@ module Aws::SSMContacts
961
1026
  # * {Types::GetContactResult#type #type} => String
962
1027
  # * {Types::GetContactResult#plan #plan} => Types::Plan
963
1028
  #
964
- #
965
- # @example Example: Example 1: To describe a contact plan
966
- #
967
- # # The following get-contact example describes a contact.
968
- #
969
- # resp = client.get_contact({
970
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
971
- # })
972
- #
973
- # resp.to_h outputs the following:
974
- # {
975
- # alias: "akuam",
976
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
977
- # display_name: "Akua Mansa",
978
- # plan: {
979
- # stages: [
980
- # {
981
- # duration_in_minutes: 5,
982
- # targets: [
983
- # {
984
- # channel_target_info: {
985
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/beb25840-5ac8-4644-95cc-7a8de390fa65",
986
- # retry_interval_in_minutes: 1,
987
- # },
988
- # },
989
- # ],
990
- # },
991
- # {
992
- # duration_in_minutes: 5,
993
- # targets: [
994
- # {
995
- # channel_target_info: {
996
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/49f3c24d-5f9f-4638-ae25-3f49e04229ad",
997
- # retry_interval_in_minutes: 1,
998
- # },
999
- # },
1000
- # ],
1001
- # },
1002
- # {
1003
- # duration_in_minutes: 5,
1004
- # targets: [
1005
- # {
1006
- # channel_target_info: {
1007
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/77d4f447-f619-4954-afff-85551e369c2a",
1008
- # retry_interval_in_minutes: 1,
1009
- # },
1010
- # },
1011
- # ],
1012
- # },
1013
- # ],
1014
- # },
1015
- # type: "PERSONAL",
1016
- # }
1017
- #
1018
- # @example Example: Example 2: To describe an escalation plan
1019
- #
1020
- # # The following get-contact example describes an escalation plan.
1021
- #
1022
- # resp = client.get_contact({
1023
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/example_escalation",
1024
- # })
1025
- #
1026
- # resp.to_h outputs the following:
1027
- # {
1028
- # alias: "example_escalation",
1029
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/example_escalation",
1030
- # display_name: "Example Escalation Plan",
1031
- # plan: {
1032
- # stages: [
1033
- # {
1034
- # duration_in_minutes: 5,
1035
- # targets: [
1036
- # {
1037
- # contact_target_info: {
1038
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1039
- # is_essential: true,
1040
- # },
1041
- # },
1042
- # ],
1043
- # },
1044
- # {
1045
- # duration_in_minutes: 5,
1046
- # targets: [
1047
- # {
1048
- # contact_target_info: {
1049
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/alejr",
1050
- # is_essential: false,
1051
- # },
1052
- # },
1053
- # ],
1054
- # },
1055
- # {
1056
- # duration_in_minutes: 0,
1057
- # targets: [
1058
- # {
1059
- # contact_target_info: {
1060
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/anasi",
1061
- # is_essential: false,
1062
- # },
1063
- # },
1064
- # ],
1065
- # },
1066
- # ],
1067
- # },
1068
- # type: "ESCALATION",
1069
- # }
1070
- #
1071
1029
  # @example Request syntax with placeholder values
1072
1030
  #
1073
1031
  # resp = client.get_contact({
@@ -1079,7 +1037,7 @@ module Aws::SSMContacts
1079
1037
  # resp.contact_arn #=> String
1080
1038
  # resp.alias #=> String
1081
1039
  # resp.display_name #=> String
1082
- # resp.type #=> String, one of "PERSONAL", "ESCALATION"
1040
+ # resp.type #=> String, one of "PERSONAL", "ESCALATION", "ONCALL_SCHEDULE"
1083
1041
  # resp.plan.stages #=> Array
1084
1042
  # resp.plan.stages[0].duration_in_minutes #=> Integer
1085
1043
  # resp.plan.stages[0].targets #=> Array
@@ -1087,6 +1045,8 @@ module Aws::SSMContacts
1087
1045
  # resp.plan.stages[0].targets[0].channel_target_info.retry_interval_in_minutes #=> Integer
1088
1046
  # resp.plan.stages[0].targets[0].contact_target_info.contact_id #=> String
1089
1047
  # resp.plan.stages[0].targets[0].contact_target_info.is_essential #=> Boolean
1048
+ # resp.plan.rotation_ids #=> Array
1049
+ # resp.plan.rotation_ids[0] #=> String
1090
1050
  #
1091
1051
  # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/GetContact AWS API Documentation
1092
1052
  #
@@ -1112,27 +1072,6 @@ module Aws::SSMContacts
1112
1072
  # * {Types::GetContactChannelResult#delivery_address #delivery_address} => Types::ContactChannelAddress
1113
1073
  # * {Types::GetContactChannelResult#activation_status #activation_status} => String
1114
1074
  #
1115
- #
1116
- # @example Example: To list the details of a contact channel
1117
- #
1118
- # # The following get-contact-channel example lists the details of a contact channel.
1119
- #
1120
- # resp = client.get_contact_channel({
1121
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/fc7405c4-46b2-48b7-87b2-93e2f225b90d",
1122
- # })
1123
- #
1124
- # resp.to_h outputs the following:
1125
- # {
1126
- # activation_status: "ACTIVATED",
1127
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1128
- # contact_channel_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/fc7405c4-46b2-48b7-87b2-93e2f225b90d",
1129
- # delivery_address: {
1130
- # simple_address: "+15005550199",
1131
- # },
1132
- # name: "akuas sms",
1133
- # type: "SMS",
1134
- # }
1135
- #
1136
1075
  # @example Request syntax with placeholder values
1137
1076
  #
1138
1077
  # resp = client.get_contact_channel({
@@ -1168,21 +1107,6 @@ module Aws::SSMContacts
1168
1107
  # * {Types::GetContactPolicyResult#contact_arn #contact_arn} => String
1169
1108
  # * {Types::GetContactPolicyResult#policy #policy} => String
1170
1109
  #
1171
- #
1172
- # @example Example: To list the resource policies of a contact
1173
- #
1174
- # # The following get-contact-policy example lists the resource policies associated with the specified contact.
1175
- #
1176
- # resp = client.get_contact_policy({
1177
- # contact_arn: "arn:aws:ssm-contacts:us-east-1:111122223333:contact/akuam",
1178
- # })
1179
- #
1180
- # resp.to_h outputs the following:
1181
- # {
1182
- # contact_arn: "arn:aws:ssm-contacts:us-east-1:111122223333:contact/akuam",
1183
- # policy: "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"SharePolicyForDocumentationDralia\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"222233334444\"},\"Action\":[\"ssm-contacts:GetContact\",\"ssm-contacts:StartEngagement\",\"ssm-contacts:DescribeEngagement\",\"ssm-contacts:ListPagesByEngagement\",\"ssm-contacts:StopEngagement\"],\"Resource\":[\"arn:aws:ssm-contacts:*:111122223333:contact/akuam\",\"arn:aws:ssm-contacts:*:111122223333:engagement/akuam/*\"]}]}",
1184
- # }
1185
- #
1186
1110
  # @example Request syntax with placeholder values
1187
1111
  #
1188
1112
  # resp = client.get_contact_policy({
@@ -1203,63 +1127,141 @@ module Aws::SSMContacts
1203
1127
  req.send_request(options)
1204
1128
  end
1205
1129
 
1206
- # Lists all contact channels for the specified contact.
1130
+ # Retrieves information about an on-call rotation.
1207
1131
  #
1208
- # @option params [required, String] :contact_id
1209
- # The Amazon Resource Name (ARN) of the contact.
1132
+ # @option params [required, String] :rotation_id
1133
+ # The Amazon Resource Name (ARN) of the on-call rotation to retrieve
1134
+ # information about.
1210
1135
  #
1211
- # @option params [String] :next_token
1212
- # The pagination token to continue to the next page of results.
1136
+ # @return [Types::GetRotationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1213
1137
  #
1214
- # @option params [Integer] :max_results
1215
- # The maximum number of contact channels per page.
1138
+ # * {Types::GetRotationResult#rotation_arn #rotation_arn} => String
1139
+ # * {Types::GetRotationResult#name #name} => String
1140
+ # * {Types::GetRotationResult#contact_ids #contact_ids} => Array&lt;String&gt;
1141
+ # * {Types::GetRotationResult#start_time #start_time} => Time
1142
+ # * {Types::GetRotationResult#time_zone_id #time_zone_id} => String
1143
+ # * {Types::GetRotationResult#recurrence #recurrence} => Types::RecurrenceSettings
1216
1144
  #
1217
- # @return [Types::ListContactChannelsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1145
+ # @example Request syntax with placeholder values
1218
1146
  #
1219
- # * {Types::ListContactChannelsResult#next_token #next_token} => String
1220
- # * {Types::ListContactChannelsResult#contact_channels #contact_channels} => Array&lt;Types::ContactChannel&gt;
1147
+ # resp = client.get_rotation({
1148
+ # rotation_id: "SsmContactsArn", # required
1149
+ # })
1221
1150
  #
1222
- # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1151
+ # @example Response structure
1223
1152
  #
1153
+ # resp.rotation_arn #=> String
1154
+ # resp.name #=> String
1155
+ # resp.contact_ids #=> Array
1156
+ # resp.contact_ids[0] #=> String
1157
+ # resp.start_time #=> Time
1158
+ # resp.time_zone_id #=> String
1159
+ # resp.recurrence.monthly_settings #=> Array
1160
+ # resp.recurrence.monthly_settings[0].day_of_month #=> Integer
1161
+ # resp.recurrence.monthly_settings[0].hand_off_time.hour_of_day #=> Integer
1162
+ # resp.recurrence.monthly_settings[0].hand_off_time.minute_of_hour #=> Integer
1163
+ # resp.recurrence.weekly_settings #=> Array
1164
+ # resp.recurrence.weekly_settings[0].day_of_week #=> String, one of "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"
1165
+ # resp.recurrence.weekly_settings[0].hand_off_time.hour_of_day #=> Integer
1166
+ # resp.recurrence.weekly_settings[0].hand_off_time.minute_of_hour #=> Integer
1167
+ # resp.recurrence.daily_settings #=> Array
1168
+ # resp.recurrence.daily_settings[0].hour_of_day #=> Integer
1169
+ # resp.recurrence.daily_settings[0].minute_of_hour #=> Integer
1170
+ # resp.recurrence.number_of_on_calls #=> Integer
1171
+ # resp.recurrence.shift_coverages #=> Hash
1172
+ # resp.recurrence.shift_coverages["DayOfWeek"] #=> Array
1173
+ # resp.recurrence.shift_coverages["DayOfWeek"][0].start.hour_of_day #=> Integer
1174
+ # resp.recurrence.shift_coverages["DayOfWeek"][0].start.minute_of_hour #=> Integer
1175
+ # resp.recurrence.shift_coverages["DayOfWeek"][0].end.hour_of_day #=> Integer
1176
+ # resp.recurrence.shift_coverages["DayOfWeek"][0].end.minute_of_hour #=> Integer
1177
+ # resp.recurrence.recurrence_multiplier #=> Integer
1178
+ #
1179
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/GetRotation AWS API Documentation
1180
+ #
1181
+ # @overload get_rotation(params = {})
1182
+ # @param [Hash] params ({})
1183
+ def get_rotation(params = {}, options = {})
1184
+ req = build_request(:get_rotation, params)
1185
+ req.send_request(options)
1186
+ end
1187
+
1188
+ # Retrieves information about an override to an on-call rotation.
1224
1189
  #
1225
- # @example Example: To list the contact channels of a contact
1190
+ # @option params [required, String] :rotation_id
1191
+ # The Amazon Resource Name (ARN) of the overridden rotation to retrieve
1192
+ # information about.
1226
1193
  #
1227
- # # The following list-contact-channels example lists the available contact channels of the specified contact.
1194
+ # @option params [required, String] :rotation_override_id
1195
+ # The Amazon Resource Name (ARN) of the on-call rotation override to
1196
+ # retrieve information about.
1228
1197
  #
1229
- # resp = client.list_contact_channels({
1230
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1231
- # })
1198
+ # @return [Types::GetRotationOverrideResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1232
1199
  #
1233
- # resp.to_h outputs the following:
1234
- # {
1235
- # contact_channels: [
1236
- # {
1237
- # activation_status: "ACTIVATED",
1238
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1239
- # contact_channel_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/fc7405c4-46b2-48b7-87b2-93e2f225b90d",
1240
- # delivery_address: {
1241
- # simple_address: "+15005550100",
1242
- # },
1243
- # name: "akuas sms",
1244
- # type: "SMS",
1245
- # },
1246
- # ],
1247
- # }
1200
+ # * {Types::GetRotationOverrideResult#rotation_override_id #rotation_override_id} => String
1201
+ # * {Types::GetRotationOverrideResult#rotation_arn #rotation_arn} => String
1202
+ # * {Types::GetRotationOverrideResult#new_contact_ids #new_contact_ids} => Array&lt;String&gt;
1203
+ # * {Types::GetRotationOverrideResult#start_time #start_time} => Time
1204
+ # * {Types::GetRotationOverrideResult#end_time #end_time} => Time
1205
+ # * {Types::GetRotationOverrideResult#create_time #create_time} => Time
1248
1206
  #
1249
1207
  # @example Request syntax with placeholder values
1250
1208
  #
1251
- # resp = client.list_contact_channels({
1252
- # contact_id: "SsmContactsArn", # required
1253
- # next_token: "PaginationToken",
1254
- # max_results: 1,
1209
+ # resp = client.get_rotation_override({
1210
+ # rotation_id: "SsmContactsArn", # required
1211
+ # rotation_override_id: "Uuid", # required
1255
1212
  # })
1256
1213
  #
1257
1214
  # @example Response structure
1258
1215
  #
1259
- # resp.next_token #=> String
1260
- # resp.contact_channels #=> Array
1261
- # resp.contact_channels[0].contact_channel_arn #=> String
1262
- # resp.contact_channels[0].contact_arn #=> String
1216
+ # resp.rotation_override_id #=> String
1217
+ # resp.rotation_arn #=> String
1218
+ # resp.new_contact_ids #=> Array
1219
+ # resp.new_contact_ids[0] #=> String
1220
+ # resp.start_time #=> Time
1221
+ # resp.end_time #=> Time
1222
+ # resp.create_time #=> Time
1223
+ #
1224
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/GetRotationOverride AWS API Documentation
1225
+ #
1226
+ # @overload get_rotation_override(params = {})
1227
+ # @param [Hash] params ({})
1228
+ def get_rotation_override(params = {}, options = {})
1229
+ req = build_request(:get_rotation_override, params)
1230
+ req.send_request(options)
1231
+ end
1232
+
1233
+ # Lists all contact channels for the specified contact.
1234
+ #
1235
+ # @option params [required, String] :contact_id
1236
+ # The Amazon Resource Name (ARN) of the contact.
1237
+ #
1238
+ # @option params [String] :next_token
1239
+ # The pagination token to continue to the next page of results.
1240
+ #
1241
+ # @option params [Integer] :max_results
1242
+ # The maximum number of contact channels per page.
1243
+ #
1244
+ # @return [Types::ListContactChannelsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1245
+ #
1246
+ # * {Types::ListContactChannelsResult#next_token #next_token} => String
1247
+ # * {Types::ListContactChannelsResult#contact_channels #contact_channels} => Array&lt;Types::ContactChannel&gt;
1248
+ #
1249
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1250
+ #
1251
+ # @example Request syntax with placeholder values
1252
+ #
1253
+ # resp = client.list_contact_channels({
1254
+ # contact_id: "SsmContactsArn", # required
1255
+ # next_token: "PaginationToken",
1256
+ # max_results: 1,
1257
+ # })
1258
+ #
1259
+ # @example Response structure
1260
+ #
1261
+ # resp.next_token #=> String
1262
+ # resp.contact_channels #=> Array
1263
+ # resp.contact_channels[0].contact_channel_arn #=> String
1264
+ # resp.contact_channels[0].contact_arn #=> String
1263
1265
  # resp.contact_channels[0].name #=> String
1264
1266
  # resp.contact_channels[0].type #=> String, one of "SMS", "VOICE", "EMAIL"
1265
1267
  # resp.contact_channels[0].delivery_address.simple_address #=> String
@@ -1298,51 +1300,13 @@ module Aws::SSMContacts
1298
1300
  #
1299
1301
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1300
1302
  #
1301
- #
1302
- # @example Example: To list all escalation plans and contacts
1303
- #
1304
- # # The following list-contacts example lists the contacts and escalation plans in your account.
1305
- #
1306
- # resp = client.list_contacts({
1307
- # })
1308
- #
1309
- # resp.to_h outputs the following:
1310
- # {
1311
- # contacts: [
1312
- # {
1313
- # alias: "akuam",
1314
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1315
- # display_name: "Akua Mansa",
1316
- # type: "PERSONAL",
1317
- # },
1318
- # {
1319
- # alias: "alejr",
1320
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/alejr",
1321
- # display_name: "Alejandro Rosalez",
1322
- # type: "PERSONAL",
1323
- # },
1324
- # {
1325
- # alias: "anasi",
1326
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/anasi",
1327
- # display_name: "Ana Carolina Silva",
1328
- # type: "PERSONAL",
1329
- # },
1330
- # {
1331
- # alias: "example_escalation",
1332
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/example_escalation",
1333
- # display_name: "Example Escalation",
1334
- # type: "ESCALATION",
1335
- # },
1336
- # ],
1337
- # }
1338
- #
1339
1303
  # @example Request syntax with placeholder values
1340
1304
  #
1341
1305
  # resp = client.list_contacts({
1342
1306
  # next_token: "PaginationToken",
1343
1307
  # max_results: 1,
1344
1308
  # alias_prefix: "ContactAlias",
1345
- # type: "PERSONAL", # accepts PERSONAL, ESCALATION
1309
+ # type: "PERSONAL", # accepts PERSONAL, ESCALATION, ONCALL_SCHEDULE
1346
1310
  # })
1347
1311
  #
1348
1312
  # @example Response structure
@@ -1352,7 +1316,7 @@ module Aws::SSMContacts
1352
1316
  # resp.contacts[0].contact_arn #=> String
1353
1317
  # resp.contacts[0].alias #=> String
1354
1318
  # resp.contacts[0].display_name #=> String
1355
- # resp.contacts[0].type #=> String, one of "PERSONAL", "ESCALATION"
1319
+ # resp.contacts[0].type #=> String, one of "PERSONAL", "ESCALATION", "ONCALL_SCHEDULE"
1356
1320
  #
1357
1321
  # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/ListContacts AWS API Documentation
1358
1322
  #
@@ -1385,45 +1349,6 @@ module Aws::SSMContacts
1385
1349
  #
1386
1350
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1387
1351
  #
1388
- #
1389
- # @example Example: To list all engagements
1390
- #
1391
- # # The following list-engagements example lists engagements to escalation plans and contacts. You can also list engagements
1392
- # # for a single incident.
1393
- #
1394
- # resp = client.list_engagements({
1395
- # })
1396
- #
1397
- # resp.to_h outputs the following:
1398
- # {
1399
- # engagements: [
1400
- # {
1401
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1402
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/akuam/91792571-0b53-4821-9f73-d25d13d9e529",
1403
- # sender: "cli",
1404
- # start_time: Time.parse("2021-05-18T20:37:50.300000+00:00"),
1405
- # },
1406
- # {
1407
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1408
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/akuam/78a29753-3674-4ac5-9f83-0468563567f0",
1409
- # sender: "cli",
1410
- # start_time: Time.parse("2021-05-18T18:40:26.666000+00:00"),
1411
- # },
1412
- # {
1413
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/example_escalation",
1414
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/example_escalation/69e40ce1-8dbb-4d57-8962-5fbe7fc53356",
1415
- # sender: "cli",
1416
- # start_time: Time.parse("2021-05-18T18:25:41.151000+00:00"),
1417
- # },
1418
- # {
1419
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1420
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/akuam/607ced0e-e8fa-4ea7-8958-a237b8803f8f",
1421
- # sender: "cli",
1422
- # start_time: Time.parse("2021-05-18T18:20:58.093000+00:00"),
1423
- # },
1424
- # ],
1425
- # }
1426
- #
1427
1352
  # @example Request syntax with placeholder values
1428
1353
  #
1429
1354
  # resp = client.list_engagements({
@@ -1476,39 +1401,6 @@ module Aws::SSMContacts
1476
1401
  #
1477
1402
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1478
1403
  #
1479
- #
1480
- # @example Example: To list page receipts
1481
- #
1482
- # # The following command-name example lists whether a page was received or not by a contact.
1483
- #
1484
- # resp = client.list_page_receipts({
1485
- # page_id: "arn:aws:ssm-contacts:us-east-2:111122223333:page/akuam/94ea0c7b-56d9-46c3-b84a-a37c8b067ad3",
1486
- # })
1487
- #
1488
- # resp.to_h outputs the following:
1489
- # {
1490
- # receipts: [
1491
- # {
1492
- # contact_channel_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/fc7405c4-46b2-48b7-87b2-93e2f225b90d",
1493
- # receipt_info: "425440",
1494
- # receipt_time: Time.parse("2021-05-18T20:42:57.485000+00:00"),
1495
- # receipt_type: "DELIVERED",
1496
- # },
1497
- # {
1498
- # contact_channel_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/fc7405c4-46b2-48b7-87b2-93e2f225b90d",
1499
- # receipt_info: "425440",
1500
- # receipt_time: Time.parse("2021-05-18T20:42:57.907000+00:00"),
1501
- # receipt_type: "READ",
1502
- # },
1503
- # {
1504
- # contact_channel_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/fc7405c4-46b2-48b7-87b2-93e2f225b90d",
1505
- # receipt_info: "SM6656c19132f1465f9c9c1123a5dde7c9",
1506
- # receipt_time: Time.parse("2021-05-18T20:40:52.962000+00:00"),
1507
- # receipt_type: "SENT",
1508
- # },
1509
- # ],
1510
- # }
1511
- #
1512
1404
  # @example Request syntax with placeholder values
1513
1405
  #
1514
1406
  # resp = client.list_page_receipts({
@@ -1535,6 +1427,52 @@ module Aws::SSMContacts
1535
1427
  req.send_request(options)
1536
1428
  end
1537
1429
 
1430
+ # Returns the resolution path of an engagement. For example, the
1431
+ # escalation plan engaged in an incident might target an on-call
1432
+ # schedule that includes several contacts in a rotation, but just one
1433
+ # contact on-call when the incident starts. The resolution path
1434
+ # indicates the hierarchy of *escalation plan &gt; on-call schedule &gt;
1435
+ # contact*.
1436
+ #
1437
+ # @option params [String] :next_token
1438
+ # A token to start the list. Use this token to get the next set of
1439
+ # results.
1440
+ #
1441
+ # @option params [required, String] :page_id
1442
+ # The Amazon Resource Name (ARN) of the contact engaged for the
1443
+ # incident.
1444
+ #
1445
+ # @return [Types::ListPageResolutionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1446
+ #
1447
+ # * {Types::ListPageResolutionsResult#next_token #next_token} => String
1448
+ # * {Types::ListPageResolutionsResult#page_resolutions #page_resolutions} => Array&lt;Types::ResolutionContact&gt;
1449
+ #
1450
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1451
+ #
1452
+ # @example Request syntax with placeholder values
1453
+ #
1454
+ # resp = client.list_page_resolutions({
1455
+ # next_token: "PaginationToken",
1456
+ # page_id: "SsmContactsArn", # required
1457
+ # })
1458
+ #
1459
+ # @example Response structure
1460
+ #
1461
+ # resp.next_token #=> String
1462
+ # resp.page_resolutions #=> Array
1463
+ # resp.page_resolutions[0].contact_arn #=> String
1464
+ # resp.page_resolutions[0].type #=> String, one of "PERSONAL", "ESCALATION", "ONCALL_SCHEDULE"
1465
+ # resp.page_resolutions[0].stage_index #=> Integer
1466
+ #
1467
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/ListPageResolutions AWS API Documentation
1468
+ #
1469
+ # @overload list_page_resolutions(params = {})
1470
+ # @param [Hash] params ({})
1471
+ def list_page_resolutions(params = {}, options = {})
1472
+ req = build_request(:list_page_resolutions, params)
1473
+ req.send_request(options)
1474
+ end
1475
+
1538
1476
  # Lists the engagements to a contact's contact channels.
1539
1477
  #
1540
1478
  # @option params [required, String] :contact_id
@@ -1555,30 +1493,6 @@ module Aws::SSMContacts
1555
1493
  #
1556
1494
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1557
1495
  #
1558
- #
1559
- # @example Example: To list pages by contact
1560
- #
1561
- # # The following list-pages-by-contact example lists all pages to the specified contact.
1562
- #
1563
- # resp = client.list_pages_by_contact({
1564
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1565
- # })
1566
- #
1567
- # resp.to_h outputs the following:
1568
- # {
1569
- # pages: [
1570
- # {
1571
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1572
- # delivery_time: Time.parse("2021-05-18T18:43:55.265000+00:00"),
1573
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/akuam/78a29753-3674-4ac5-9f83-0468563567f0",
1574
- # page_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:page/akuam/ad0052bd-e606-498a-861b-25726292eb93",
1575
- # read_time: Time.parse("2021-05-18T18:43:55.708000+00:00"),
1576
- # sender: "cli",
1577
- # sent_time: Time.parse("2021-05-18T18:43:29.301000+00:00"),
1578
- # },
1579
- # ],
1580
- # }
1581
- #
1582
1496
  # @example Request syntax with placeholder values
1583
1497
  #
1584
1498
  # resp = client.list_pages_by_contact({
@@ -1629,28 +1543,6 @@ module Aws::SSMContacts
1629
1543
  #
1630
1544
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1631
1545
  #
1632
- #
1633
- # @example Example: To list pages to contact channels started from an engagement.
1634
- #
1635
- # # The following list-pages-by-engagement example lists the pages that occurred while engaging the defined engagement plan.
1636
- #
1637
- # resp = client.list_pages_by_engagement({
1638
- # engagement_id: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/akuam/78a29753-3674-4ac5-9f83-0468563567f0",
1639
- # })
1640
- #
1641
- # resp.to_h outputs the following:
1642
- # {
1643
- # pages: [
1644
- # {
1645
- # contact_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1646
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/akuam/78a29753-3674-4ac5-9f83-0468563567f0",
1647
- # page_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:page/akuam/ad0052bd-e606-498a-861b-25726292eb93",
1648
- # sender: "cli",
1649
- # sent_time: Time.parse("2021-05-18T18:40:27.245000+00:00"),
1650
- # },
1651
- # ],
1652
- # }
1653
- #
1654
1546
  # @example Request syntax with placeholder values
1655
1547
  #
1656
1548
  # resp = client.list_pages_by_engagement({
@@ -1681,33 +1573,336 @@ module Aws::SSMContacts
1681
1573
  req.send_request(options)
1682
1574
  end
1683
1575
 
1684
- # Lists the tags of an escalation plan or contact.
1576
+ # Returns a list of shifts based on rotation configuration parameters.
1685
1577
  #
1686
- # @option params [required, String] :resource_arn
1687
- # The Amazon Resource Name (ARN) of the contact or escalation plan.
1578
+ # <note markdown="1"> The Incident Manager primarily uses this operation to populate the
1579
+ # **Preview** calendar. It is not typically run by end users.
1688
1580
  #
1689
- # @return [Types::ListTagsForResourceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1581
+ # </note>
1690
1582
  #
1691
- # * {Types::ListTagsForResourceResult#tags #tags} => Array&lt;Types::Tag&gt;
1583
+ # @option params [Time,DateTime,Date,Integer,String] :rotation_start_time
1584
+ # The date and time a rotation would begin. The first shift is
1585
+ # calculated from this date and time.
1692
1586
  #
1587
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
1588
+ # Used to filter the range of calculated shifts before sending the
1589
+ # response back to the user.
1693
1590
  #
1694
- # @example Example: To list tags for a contact
1591
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
1592
+ # The date and time a rotation shift would end.
1695
1593
  #
1696
- # # The following list-tags-for-resource example lists the tags of the specified contact.
1594
+ # @option params [required, Array<String>] :members
1595
+ # The contacts that would be assigned to a rotation.
1697
1596
  #
1698
- # resp = client.list_tags_for_resource({
1699
- # resource_arn: "arn:aws:ssm-contacts:us-east-1:111122223333:contact/akuam",
1700
- # })
1597
+ # @option params [required, String] :time_zone_id
1598
+ # The time zone the rotation’s activity would be based on, in Internet
1599
+ # Assigned Numbers Authority (IANA) format. For example:
1600
+ # "America/Los\_Angeles", "UTC", or "Asia/Seoul".
1701
1601
  #
1702
- # resp.to_h outputs the following:
1703
- # {
1704
- # tags: [
1602
+ # @option params [required, Types::RecurrenceSettings] :recurrence
1603
+ # Information about how long a rotation would last before restarting at
1604
+ # the beginning of the shift order.
1605
+ #
1606
+ # @option params [Array<Types::PreviewOverride>] :overrides
1607
+ # Information about changes that would be made in a rotation override.
1608
+ #
1609
+ # @option params [String] :next_token
1610
+ # A token to start the list. This token is used to get the next set of
1611
+ # results.
1612
+ #
1613
+ # @option params [Integer] :max_results
1614
+ # The maximum number of items to return for this call. The call also
1615
+ # returns a token that can be specified in a subsequent call to get the
1616
+ # next set of results.
1617
+ #
1618
+ # @return [Types::ListPreviewRotationShiftsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1619
+ #
1620
+ # * {Types::ListPreviewRotationShiftsResult#rotation_shifts #rotation_shifts} => Array&lt;Types::RotationShift&gt;
1621
+ # * {Types::ListPreviewRotationShiftsResult#next_token #next_token} => String
1622
+ #
1623
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1624
+ #
1625
+ # @example Request syntax with placeholder values
1626
+ #
1627
+ # resp = client.list_preview_rotation_shifts({
1628
+ # rotation_start_time: Time.now,
1629
+ # start_time: Time.now,
1630
+ # end_time: Time.now, # required
1631
+ # members: ["Member"], # required
1632
+ # time_zone_id: "TimeZoneId", # required
1633
+ # recurrence: { # required
1634
+ # monthly_settings: [
1635
+ # {
1636
+ # day_of_month: 1, # required
1637
+ # hand_off_time: { # required
1638
+ # hour_of_day: 1, # required
1639
+ # minute_of_hour: 1, # required
1640
+ # },
1641
+ # },
1642
+ # ],
1643
+ # weekly_settings: [
1644
+ # {
1645
+ # day_of_week: "MON", # required, accepts MON, TUE, WED, THU, FRI, SAT, SUN
1646
+ # hand_off_time: { # required
1647
+ # hour_of_day: 1, # required
1648
+ # minute_of_hour: 1, # required
1649
+ # },
1650
+ # },
1651
+ # ],
1652
+ # daily_settings: [
1653
+ # {
1654
+ # hour_of_day: 1, # required
1655
+ # minute_of_hour: 1, # required
1656
+ # },
1657
+ # ],
1658
+ # number_of_on_calls: 1, # required
1659
+ # shift_coverages: {
1660
+ # "MON" => [
1661
+ # {
1662
+ # start: {
1663
+ # hour_of_day: 1, # required
1664
+ # minute_of_hour: 1, # required
1665
+ # },
1666
+ # end: {
1667
+ # hour_of_day: 1, # required
1668
+ # minute_of_hour: 1, # required
1669
+ # },
1670
+ # },
1671
+ # ],
1672
+ # },
1673
+ # recurrence_multiplier: 1, # required
1674
+ # },
1675
+ # overrides: [
1705
1676
  # {
1706
- # key: "group1",
1707
- # value: "1",
1708
- # },
1709
- # ],
1710
- # }
1677
+ # new_members: ["Member"],
1678
+ # start_time: Time.now,
1679
+ # end_time: Time.now,
1680
+ # },
1681
+ # ],
1682
+ # next_token: "PaginationToken",
1683
+ # max_results: 1,
1684
+ # })
1685
+ #
1686
+ # @example Response structure
1687
+ #
1688
+ # resp.rotation_shifts #=> Array
1689
+ # resp.rotation_shifts[0].contact_ids #=> Array
1690
+ # resp.rotation_shifts[0].contact_ids[0] #=> String
1691
+ # resp.rotation_shifts[0].start_time #=> Time
1692
+ # resp.rotation_shifts[0].end_time #=> Time
1693
+ # resp.rotation_shifts[0].type #=> String, one of "REGULAR", "OVERRIDDEN"
1694
+ # resp.rotation_shifts[0].shift_details.overridden_contact_ids #=> Array
1695
+ # resp.rotation_shifts[0].shift_details.overridden_contact_ids[0] #=> String
1696
+ # resp.next_token #=> String
1697
+ #
1698
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/ListPreviewRotationShifts AWS API Documentation
1699
+ #
1700
+ # @overload list_preview_rotation_shifts(params = {})
1701
+ # @param [Hash] params ({})
1702
+ def list_preview_rotation_shifts(params = {}, options = {})
1703
+ req = build_request(:list_preview_rotation_shifts, params)
1704
+ req.send_request(options)
1705
+ end
1706
+
1707
+ # Retrieves a list of overrides currently specified for an on-call
1708
+ # rotation.
1709
+ #
1710
+ # @option params [required, String] :rotation_id
1711
+ # The Amazon Resource Name (ARN) of the rotation to retrieve information
1712
+ # about.
1713
+ #
1714
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
1715
+ # The date and time for the beginning of a time range for listing
1716
+ # overrides.
1717
+ #
1718
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
1719
+ # The date and time for the end of a time range for listing overrides.
1720
+ #
1721
+ # @option params [String] :next_token
1722
+ # A token to start the list. Use this token to get the next set of
1723
+ # results.
1724
+ #
1725
+ # @option params [Integer] :max_results
1726
+ # The maximum number of items to return for this call. The call also
1727
+ # returns a token that you can specify in a subsequent call to get the
1728
+ # next set of results.
1729
+ #
1730
+ # @return [Types::ListRotationOverridesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1731
+ #
1732
+ # * {Types::ListRotationOverridesResult#rotation_overrides #rotation_overrides} => Array&lt;Types::RotationOverride&gt;
1733
+ # * {Types::ListRotationOverridesResult#next_token #next_token} => String
1734
+ #
1735
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1736
+ #
1737
+ # @example Request syntax with placeholder values
1738
+ #
1739
+ # resp = client.list_rotation_overrides({
1740
+ # rotation_id: "SsmContactsArn", # required
1741
+ # start_time: Time.now, # required
1742
+ # end_time: Time.now, # required
1743
+ # next_token: "PaginationToken",
1744
+ # max_results: 1,
1745
+ # })
1746
+ #
1747
+ # @example Response structure
1748
+ #
1749
+ # resp.rotation_overrides #=> Array
1750
+ # resp.rotation_overrides[0].rotation_override_id #=> String
1751
+ # resp.rotation_overrides[0].new_contact_ids #=> Array
1752
+ # resp.rotation_overrides[0].new_contact_ids[0] #=> String
1753
+ # resp.rotation_overrides[0].start_time #=> Time
1754
+ # resp.rotation_overrides[0].end_time #=> Time
1755
+ # resp.rotation_overrides[0].create_time #=> Time
1756
+ # resp.next_token #=> String
1757
+ #
1758
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/ListRotationOverrides AWS API Documentation
1759
+ #
1760
+ # @overload list_rotation_overrides(params = {})
1761
+ # @param [Hash] params ({})
1762
+ def list_rotation_overrides(params = {}, options = {})
1763
+ req = build_request(:list_rotation_overrides, params)
1764
+ req.send_request(options)
1765
+ end
1766
+
1767
+ # Returns a list of shifts generated by an existing rotation in the
1768
+ # system.
1769
+ #
1770
+ # @option params [required, String] :rotation_id
1771
+ # The Amazon Resource Name (ARN) of the rotation to retrieve shift
1772
+ # information about.
1773
+ #
1774
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
1775
+ # The date and time for the beginning of the time range to list shifts
1776
+ # for.
1777
+ #
1778
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
1779
+ # The date and time for the end of the time range to list shifts for.
1780
+ #
1781
+ # @option params [String] :next_token
1782
+ # A token to start the list. Use this token to get the next set of
1783
+ # results.
1784
+ #
1785
+ # @option params [Integer] :max_results
1786
+ # The maximum number of items to return for this call. The call also
1787
+ # returns a token that you can specify in a subsequent call to get the
1788
+ # next set of results.
1789
+ #
1790
+ # @return [Types::ListRotationShiftsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1791
+ #
1792
+ # * {Types::ListRotationShiftsResult#rotation_shifts #rotation_shifts} => Array&lt;Types::RotationShift&gt;
1793
+ # * {Types::ListRotationShiftsResult#next_token #next_token} => String
1794
+ #
1795
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1796
+ #
1797
+ # @example Request syntax with placeholder values
1798
+ #
1799
+ # resp = client.list_rotation_shifts({
1800
+ # rotation_id: "SsmContactsArn", # required
1801
+ # start_time: Time.now,
1802
+ # end_time: Time.now, # required
1803
+ # next_token: "PaginationToken",
1804
+ # max_results: 1,
1805
+ # })
1806
+ #
1807
+ # @example Response structure
1808
+ #
1809
+ # resp.rotation_shifts #=> Array
1810
+ # resp.rotation_shifts[0].contact_ids #=> Array
1811
+ # resp.rotation_shifts[0].contact_ids[0] #=> String
1812
+ # resp.rotation_shifts[0].start_time #=> Time
1813
+ # resp.rotation_shifts[0].end_time #=> Time
1814
+ # resp.rotation_shifts[0].type #=> String, one of "REGULAR", "OVERRIDDEN"
1815
+ # resp.rotation_shifts[0].shift_details.overridden_contact_ids #=> Array
1816
+ # resp.rotation_shifts[0].shift_details.overridden_contact_ids[0] #=> String
1817
+ # resp.next_token #=> String
1818
+ #
1819
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/ListRotationShifts AWS API Documentation
1820
+ #
1821
+ # @overload list_rotation_shifts(params = {})
1822
+ # @param [Hash] params ({})
1823
+ def list_rotation_shifts(params = {}, options = {})
1824
+ req = build_request(:list_rotation_shifts, params)
1825
+ req.send_request(options)
1826
+ end
1827
+
1828
+ # Retrieves a list of on-call rotations.
1829
+ #
1830
+ # @option params [String] :rotation_name_prefix
1831
+ # A filter to include rotations in list results based on their common
1832
+ # prefix. For example, entering prod returns a list of all rotation
1833
+ # names that begin with `prod`, such as `production` and `prod-1`.
1834
+ #
1835
+ # @option params [String] :next_token
1836
+ # A token to start the list. Use this token to get the next set of
1837
+ # results.
1838
+ #
1839
+ # @option params [Integer] :max_results
1840
+ # The maximum number of items to return for this call. The call also
1841
+ # returns a token that you can specify in a subsequent call to get the
1842
+ # next set of results.
1843
+ #
1844
+ # @return [Types::ListRotationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1845
+ #
1846
+ # * {Types::ListRotationsResult#next_token #next_token} => String
1847
+ # * {Types::ListRotationsResult#rotations #rotations} => Array&lt;Types::Rotation&gt;
1848
+ #
1849
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1850
+ #
1851
+ # @example Request syntax with placeholder values
1852
+ #
1853
+ # resp = client.list_rotations({
1854
+ # rotation_name_prefix: "RotationName",
1855
+ # next_token: "PaginationToken",
1856
+ # max_results: 1,
1857
+ # })
1858
+ #
1859
+ # @example Response structure
1860
+ #
1861
+ # resp.next_token #=> String
1862
+ # resp.rotations #=> Array
1863
+ # resp.rotations[0].rotation_arn #=> String
1864
+ # resp.rotations[0].name #=> String
1865
+ # resp.rotations[0].contact_ids #=> Array
1866
+ # resp.rotations[0].contact_ids[0] #=> String
1867
+ # resp.rotations[0].start_time #=> Time
1868
+ # resp.rotations[0].time_zone_id #=> String
1869
+ # resp.rotations[0].recurrence.monthly_settings #=> Array
1870
+ # resp.rotations[0].recurrence.monthly_settings[0].day_of_month #=> Integer
1871
+ # resp.rotations[0].recurrence.monthly_settings[0].hand_off_time.hour_of_day #=> Integer
1872
+ # resp.rotations[0].recurrence.monthly_settings[0].hand_off_time.minute_of_hour #=> Integer
1873
+ # resp.rotations[0].recurrence.weekly_settings #=> Array
1874
+ # resp.rotations[0].recurrence.weekly_settings[0].day_of_week #=> String, one of "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"
1875
+ # resp.rotations[0].recurrence.weekly_settings[0].hand_off_time.hour_of_day #=> Integer
1876
+ # resp.rotations[0].recurrence.weekly_settings[0].hand_off_time.minute_of_hour #=> Integer
1877
+ # resp.rotations[0].recurrence.daily_settings #=> Array
1878
+ # resp.rotations[0].recurrence.daily_settings[0].hour_of_day #=> Integer
1879
+ # resp.rotations[0].recurrence.daily_settings[0].minute_of_hour #=> Integer
1880
+ # resp.rotations[0].recurrence.number_of_on_calls #=> Integer
1881
+ # resp.rotations[0].recurrence.shift_coverages #=> Hash
1882
+ # resp.rotations[0].recurrence.shift_coverages["DayOfWeek"] #=> Array
1883
+ # resp.rotations[0].recurrence.shift_coverages["DayOfWeek"][0].start.hour_of_day #=> Integer
1884
+ # resp.rotations[0].recurrence.shift_coverages["DayOfWeek"][0].start.minute_of_hour #=> Integer
1885
+ # resp.rotations[0].recurrence.shift_coverages["DayOfWeek"][0].end.hour_of_day #=> Integer
1886
+ # resp.rotations[0].recurrence.shift_coverages["DayOfWeek"][0].end.minute_of_hour #=> Integer
1887
+ # resp.rotations[0].recurrence.recurrence_multiplier #=> Integer
1888
+ #
1889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/ListRotations AWS API Documentation
1890
+ #
1891
+ # @overload list_rotations(params = {})
1892
+ # @param [Hash] params ({})
1893
+ def list_rotations(params = {}, options = {})
1894
+ req = build_request(:list_rotations, params)
1895
+ req.send_request(options)
1896
+ end
1897
+
1898
+ # Lists the tags of an escalation plan or contact.
1899
+ #
1900
+ # @option params [required, String] :resource_arn
1901
+ # The Amazon Resource Name (ARN) of the contact or escalation plan.
1902
+ #
1903
+ # @return [Types::ListTagsForResourceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1904
+ #
1905
+ # * {Types::ListTagsForResourceResult#tags #tags} => Array&lt;Types::Tag&gt;
1711
1906
  #
1712
1907
  # @example Request syntax with placeholder values
1713
1908
  #
@@ -1748,21 +1943,6 @@ module Aws::SSMContacts
1748
1943
  #
1749
1944
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1750
1945
  #
1751
- #
1752
- # @example Example: To share a contact and engagements
1753
- #
1754
- # # The following put-contact-policy example adds a resource policy to the contact Akua that shares the contact and related
1755
- # # engagements with the principal.
1756
- #
1757
- # resp = client.put_contact_policy({
1758
- # contact_arn: "arn:aws:ssm-contacts:us-east-1:111122223333:contact/akuam",
1759
- # policy: "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"ExampleResourcePolicy\",\"Action\":[\"ssm-contacts:GetContact\",\"ssm-contacts:StartEngagement\",\"ssm-contacts:DescribeEngagement\",\"ssm-contacts:ListPagesByEngagement\",\"ssm-contacts:StopEngagement\"],\"Principal\":{\"AWS\":\"222233334444\"},\"Effect\":\"Allow\",\"Resource\":[\"arn:aws:ssm-contacts:*:111122223333:contact/akuam\",\"arn:aws:ssm-contacts:*:111122223333:engagement/akuam/*\"]}]}",
1760
- # })
1761
- #
1762
- # resp.to_h outputs the following:
1763
- # {
1764
- # }
1765
- #
1766
1946
  # @example Request syntax with placeholder values
1767
1947
  #
1768
1948
  # resp = client.put_contact_policy({
@@ -1789,19 +1969,6 @@ module Aws::SSMContacts
1789
1969
  #
1790
1970
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1791
1971
  #
1792
- #
1793
- # @example Example: To send an activation code
1794
- #
1795
- # # The following send-activation-code example sends an activation code and message to the specified contact channel.
1796
- #
1797
- # resp = client.send_activation_code({
1798
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-1:111122223333:contact-channel/akuam/8ddae2d1-12c8-4e45-b852-c8587266c400",
1799
- # })
1800
- #
1801
- # resp.to_h outputs the following:
1802
- # {
1803
- # }
1804
- #
1805
1972
  # @example Request syntax with placeholder values
1806
1973
  #
1807
1974
  # resp = client.send_activation_code({
@@ -1856,47 +2023,6 @@ module Aws::SSMContacts
1856
2023
  #
1857
2024
  # * {Types::StartEngagementResult#engagement_arn #engagement_arn} => String
1858
2025
  #
1859
- #
1860
- # @example Example: Example 1: To page a contact's contact channels
1861
- #
1862
- # # The following start-engagement pages contact's contact channels. Sender, subject, public-subject, and public-content are
1863
- # # all free from fields. Incident Manager sends the subject and content to the provided VOICE or EMAIL contact channels.
1864
- # # Incident Manager sends the public-subject and public-content to the provided SMS contact channels. Sender is used to
1865
- # # track who started the engagement.
1866
- #
1867
- # resp = client.start_engagement({
1868
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
1869
- # content: "Testing engagements",
1870
- # public_content: "Testing engagements",
1871
- # public_subject: "test",
1872
- # sender: "tester",
1873
- # subject: "test",
1874
- # })
1875
- #
1876
- # resp.to_h outputs the following:
1877
- # {
1878
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/akuam/607ced0e-e8fa-4ea7-8958-a237b8803f8f",
1879
- # }
1880
- #
1881
- # @example Example: Example 2: To page a contact in the provided escalation plan.
1882
- #
1883
- # # The following start-engagement engages contact's through an escalation plan. Each contact is paged according to their
1884
- # # engagement plan.
1885
- #
1886
- # resp = client.start_engagement({
1887
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/example_escalation",
1888
- # content: "Testing engagements",
1889
- # public_content: "Testing engagements",
1890
- # public_subject: "test",
1891
- # sender: "tester",
1892
- # subject: "test",
1893
- # })
1894
- #
1895
- # resp.to_h outputs the following:
1896
- # {
1897
- # engagement_arn: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/example_escalation/69e40ce1-8dbb-4d57-8962-5fbe7fc53356",
1898
- # }
1899
- #
1900
2026
  # @example Request syntax with placeholder values
1901
2027
  #
1902
2028
  # resp = client.start_engagement({
@@ -1934,19 +2060,6 @@ module Aws::SSMContacts
1934
2060
  #
1935
2061
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1936
2062
  #
1937
- #
1938
- # @example Example: To stop an engagement
1939
- #
1940
- # # The following stop-engagement example stops an engagement from paging further contacts and contact channels.
1941
- #
1942
- # resp = client.stop_engagement({
1943
- # engagement_id: "arn:aws:ssm-contacts:us-east-2:111122223333:engagement/example_escalation/69e40ce1-8dbb-4d57-8962-5fbe7fc53356",
1944
- # })
1945
- #
1946
- # resp.to_h outputs the following:
1947
- # {
1948
- # }
1949
- #
1950
2063
  # @example Request syntax with placeholder values
1951
2064
  #
1952
2065
  # resp = client.stop_engagement({
@@ -1974,25 +2087,6 @@ module Aws::SSMContacts
1974
2087
  #
1975
2088
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1976
2089
  #
1977
- #
1978
- # @example Example: To tag a contact
1979
- #
1980
- # # The following tag-resource example tags a specified contact with the provided tag key value pair.
1981
- #
1982
- # resp = client.tag_resource({
1983
- # resource_arn: "arn:aws:ssm-contacts:us-east-1:111122223333:contact/akuam",
1984
- # tags: [
1985
- # {
1986
- # key: "group1",
1987
- # value: "1",
1988
- # },
1989
- # ],
1990
- # })
1991
- #
1992
- # resp.to_h outputs the following:
1993
- # {
1994
- # }
1995
- #
1996
2090
  # @example Request syntax with placeholder values
1997
2091
  #
1998
2092
  # resp = client.tag_resource({
@@ -2024,22 +2118,6 @@ module Aws::SSMContacts
2024
2118
  #
2025
2119
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2026
2120
  #
2027
- #
2028
- # @example Example: To remove tags from a contact
2029
- #
2030
- # # The following untag-resource example removes the group1 tag from the specified contact.
2031
- #
2032
- # resp = client.untag_resource({
2033
- # resource_arn: "arn:aws:ssm-contacts:us-east-1:111122223333:contact/akuam",
2034
- # tag_keys: [
2035
- # "group1",
2036
- # ],
2037
- # })
2038
- #
2039
- # resp.to_h outputs the following:
2040
- # {
2041
- # }
2042
- #
2043
2121
  # @example Request syntax with placeholder values
2044
2122
  #
2045
2123
  # resp = client.untag_resource({
@@ -2072,64 +2150,13 @@ module Aws::SSMContacts
2072
2150
  #
2073
2151
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2074
2152
  #
2075
- #
2076
- # @example Example: To update the engagement plan of contact
2077
- #
2078
- # # The following update-contact example updates the engagement plan of the contact Akua to include the three types of
2079
- # # contacts channels. This is done after creating contact channels for Akua.
2080
- #
2081
- # resp = client.update_contact({
2082
- # contact_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact/akuam",
2083
- # plan: {
2084
- # stages: [
2085
- # {
2086
- # duration_in_minutes: 5,
2087
- # targets: [
2088
- # {
2089
- # channel_target_info: {
2090
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/beb25840-5ac8-4644-95cc-7a8de390fa65",
2091
- # retry_interval_in_minutes: 1,
2092
- # },
2093
- # },
2094
- # ],
2095
- # },
2096
- # {
2097
- # duration_in_minutes: 5,
2098
- # targets: [
2099
- # {
2100
- # channel_target_info: {
2101
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/49f3c24d-5f9f-4638-ae25-3f49e04229ad",
2102
- # retry_interval_in_minutes: 1,
2103
- # },
2104
- # },
2105
- # ],
2106
- # },
2107
- # {
2108
- # duration_in_minutes: 5,
2109
- # targets: [
2110
- # {
2111
- # channel_target_info: {
2112
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/77d4f447-f619-4954-afff-85551e369c2a",
2113
- # retry_interval_in_minutes: 1,
2114
- # },
2115
- # },
2116
- # ],
2117
- # },
2118
- # ],
2119
- # },
2120
- # })
2121
- #
2122
- # resp.to_h outputs the following:
2123
- # {
2124
- # }
2125
- #
2126
2153
  # @example Request syntax with placeholder values
2127
2154
  #
2128
2155
  # resp = client.update_contact({
2129
2156
  # contact_id: "SsmContactsArn", # required
2130
2157
  # display_name: "ContactName",
2131
2158
  # plan: {
2132
- # stages: [ # required
2159
+ # stages: [
2133
2160
  # {
2134
2161
  # duration_in_minutes: 1, # required
2135
2162
  # targets: [ # required
@@ -2146,6 +2173,7 @@ module Aws::SSMContacts
2146
2173
  # ],
2147
2174
  # },
2148
2175
  # ],
2176
+ # rotation_ids: ["SsmContactsArn"],
2149
2177
  # },
2150
2178
  # })
2151
2179
  #
@@ -2173,23 +2201,6 @@ module Aws::SSMContacts
2173
2201
  #
2174
2202
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2175
2203
  #
2176
- #
2177
- # @example Example: To update a contact channel
2178
- #
2179
- # # The following update-contact-channel example updates the name and delivery address of a contact channel.
2180
- #
2181
- # resp = client.update_contact_channel({
2182
- # contact_channel_id: "arn:aws:ssm-contacts:us-east-2:111122223333:contact-channel/akuam/49f3c24d-5f9f-4638-ae25-3f49e04229ad",
2183
- # delivery_address: {
2184
- # simple_address: "+15005550198",
2185
- # },
2186
- # name: "akuas voice channel",
2187
- # })
2188
- #
2189
- # resp.to_h outputs the following:
2190
- # {
2191
- # }
2192
- #
2193
2204
  # @example Request syntax with placeholder values
2194
2205
  #
2195
2206
  # resp = client.update_contact_channel({
@@ -2209,6 +2220,103 @@ module Aws::SSMContacts
2209
2220
  req.send_request(options)
2210
2221
  end
2211
2222
 
2223
+ # Updates the information specified for an on-call rotation.
2224
+ #
2225
+ # @option params [required, String] :rotation_id
2226
+ # The Amazon Resource Name (ARN) of the rotation to update.
2227
+ #
2228
+ # @option params [Array<String>] :contact_ids
2229
+ # The Amazon Resource Names (ARNs) of the contacts to include in the
2230
+ # updated rotation.
2231
+ #
2232
+ # The order in which you list the contacts is their shift order in the
2233
+ # rotation schedule.
2234
+ #
2235
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
2236
+ # The date and time the rotation goes into effect.
2237
+ #
2238
+ # @option params [String] :time_zone_id
2239
+ # The time zone to base the updated rotation’s activity on, in Internet
2240
+ # Assigned Numbers Authority (IANA) format. For example:
2241
+ # "America/Los\_Angeles", "UTC", or "Asia/Seoul". For more
2242
+ # information, see the [Time Zone Database][1] on the IANA website.
2243
+ #
2244
+ # <note markdown="1"> Designators for time zones that don’t support Daylight Savings Time
2245
+ # Rules, such as Pacific Standard Time (PST) and Pacific Daylight Time
2246
+ # (PDT), aren't supported.
2247
+ #
2248
+ # </note>
2249
+ #
2250
+ #
2251
+ #
2252
+ # [1]: https://www.iana.org/time-zones
2253
+ #
2254
+ # @option params [required, Types::RecurrenceSettings] :recurrence
2255
+ # Information about how long the updated rotation lasts before
2256
+ # restarting at the beginning of the shift order.
2257
+ #
2258
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2259
+ #
2260
+ # @example Request syntax with placeholder values
2261
+ #
2262
+ # resp = client.update_rotation({
2263
+ # rotation_id: "SsmContactsArn", # required
2264
+ # contact_ids: ["SsmContactsArn"],
2265
+ # start_time: Time.now,
2266
+ # time_zone_id: "TimeZoneId",
2267
+ # recurrence: { # required
2268
+ # monthly_settings: [
2269
+ # {
2270
+ # day_of_month: 1, # required
2271
+ # hand_off_time: { # required
2272
+ # hour_of_day: 1, # required
2273
+ # minute_of_hour: 1, # required
2274
+ # },
2275
+ # },
2276
+ # ],
2277
+ # weekly_settings: [
2278
+ # {
2279
+ # day_of_week: "MON", # required, accepts MON, TUE, WED, THU, FRI, SAT, SUN
2280
+ # hand_off_time: { # required
2281
+ # hour_of_day: 1, # required
2282
+ # minute_of_hour: 1, # required
2283
+ # },
2284
+ # },
2285
+ # ],
2286
+ # daily_settings: [
2287
+ # {
2288
+ # hour_of_day: 1, # required
2289
+ # minute_of_hour: 1, # required
2290
+ # },
2291
+ # ],
2292
+ # number_of_on_calls: 1, # required
2293
+ # shift_coverages: {
2294
+ # "MON" => [
2295
+ # {
2296
+ # start: {
2297
+ # hour_of_day: 1, # required
2298
+ # minute_of_hour: 1, # required
2299
+ # },
2300
+ # end: {
2301
+ # hour_of_day: 1, # required
2302
+ # minute_of_hour: 1, # required
2303
+ # },
2304
+ # },
2305
+ # ],
2306
+ # },
2307
+ # recurrence_multiplier: 1, # required
2308
+ # },
2309
+ # })
2310
+ #
2311
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ssm-contacts-2021-05-03/UpdateRotation AWS API Documentation
2312
+ #
2313
+ # @overload update_rotation(params = {})
2314
+ # @param [Hash] params ({})
2315
+ def update_rotation(params = {}, options = {})
2316
+ req = build_request(:update_rotation, params)
2317
+ req.send_request(options)
2318
+ end
2319
+
2212
2320
  # @!endgroup
2213
2321
 
2214
2322
  # @param params ({})
@@ -2222,7 +2330,7 @@ module Aws::SSMContacts
2222
2330
  params: params,
2223
2331
  config: config)
2224
2332
  context[:gem_name] = 'aws-sdk-ssmcontacts'
2225
- context[:gem_version] = '1.16.0'
2333
+ context[:gem_version] = '1.17.0'
2226
2334
  Seahorse::Client::Request.new(handlers, context)
2227
2335
  end
2228
2336