aws-sdk-ssmcontacts 1.16.0 → 1.17.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.
@@ -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