aws-sdk-connect 1.32.0 → 1.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e062dfbd3106a56eda16ffa2ec9780e9153e126aa9bb8174ab7e8193afc41ed2
4
- data.tar.gz: d58f148d07215bd5776cb987e0240a5b1ff24647ea2c2378411364c991141ce5
3
+ metadata.gz: e525b991cc49a110a852fa962640a4894b0cebb0cb9fc8304a5ea21804ad4871
4
+ data.tar.gz: 01fd4e0da53367ec97384dea727856457eaffed23eced0fa364a00ad42830c18
5
5
  SHA512:
6
- metadata.gz: 164a7a83ce3fa576638cb5a93cd02bcfe3236d5e07b8d4b2e0bdb6a66e719d9b676d1da9a4561bbb49a44b8d3f6fbe6f133d68932ab74265f6b53b28396436f8
7
- data.tar.gz: 2ee4e3e77a428792fc415dc61d4d8991d2635beb6a6a1df4a5074b5a1673759b814624247178bb7713a0aeb42cf2d480a0022d94d24a9fe5bbddd722fb60dab5
6
+ metadata.gz: 294c20183a8ef8b9ac32d5faf461e7ed5f6396e0a112ab64ff00f4b7d70d2af7b45d3e99e2c0e8ed3f34858aa21f77b33a39571cfc12e773bf99491ca99bb623
7
+ data.tar.gz: 163f4a3936d0ba613eabc81a2c028649b04b18c6522e5d07fb6cb8479b40d44e6f5e372510a6d689a78bb2b9567579337074796238ca171285945764b68fda63
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-connect/customizations'
28
28
  # structure.
29
29
  #
30
30
  # connect = Aws::Connect::Client.new
31
- # resp = connect.associate_routing_profile_queues(params)
31
+ # resp = connect.associate_approved_origin(params)
32
32
  #
33
33
  # See {Client} for more information.
34
34
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-connect/customizations'
48
48
  # @!group service
49
49
  module Aws::Connect
50
50
 
51
- GEM_VERSION = '1.32.0'
51
+ GEM_VERSION = '1.37.0'
52
52
 
53
53
  end
@@ -327,6 +327,159 @@ module Aws::Connect
327
327
 
328
328
  # @!group API Operations
329
329
 
330
+ # Associates an approved origin to an Amazon Connect instance.
331
+ #
332
+ # @option params [required, String] :instance_id
333
+ # The identifier of the Amazon Connect instance.
334
+ #
335
+ # @option params [required, String] :origin
336
+ # The domain to add to your allow list.
337
+ #
338
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
339
+ #
340
+ # @example Request syntax with placeholder values
341
+ #
342
+ # resp = client.associate_approved_origin({
343
+ # instance_id: "InstanceId", # required
344
+ # origin: "Origin", # required
345
+ # })
346
+ #
347
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateApprovedOrigin AWS API Documentation
348
+ #
349
+ # @overload associate_approved_origin(params = {})
350
+ # @param [Hash] params ({})
351
+ def associate_approved_origin(params = {}, options = {})
352
+ req = build_request(:associate_approved_origin, params)
353
+ req.send_request(options)
354
+ end
355
+
356
+ # Associates a storage resource type for the first time. You can only
357
+ # associate one type of storage configuration in a single call. This
358
+ # means, for example, that you can't define an instance with multiple
359
+ # S3 buckets for storing chat transcripts.
360
+ #
361
+ # This API does not create a resource that doesn't exist. It only
362
+ # associates it to the instance. Ensure that the resource being
363
+ # specified in the storage configuration, like an Amazon S3 bucket,
364
+ # exists when being used for association.
365
+ #
366
+ # @option params [required, String] :instance_id
367
+ # The identifier of the Amazon Connect instance.
368
+ #
369
+ # @option params [required, String] :resource_type
370
+ # A valid resource type.
371
+ #
372
+ # @option params [required, Types::InstanceStorageConfig] :storage_config
373
+ # A valid storage type.
374
+ #
375
+ # @return [Types::AssociateInstanceStorageConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
376
+ #
377
+ # * {Types::AssociateInstanceStorageConfigResponse#association_id #association_id} => String
378
+ #
379
+ # @example Request syntax with placeholder values
380
+ #
381
+ # resp = client.associate_instance_storage_config({
382
+ # instance_id: "InstanceId", # required
383
+ # resource_type: "CHAT_TRANSCRIPTS", # required, accepts CHAT_TRANSCRIPTS, CALL_RECORDINGS, SCHEDULED_REPORTS, MEDIA_STREAMS, CONTACT_TRACE_RECORDS, AGENT_EVENTS
384
+ # storage_config: { # required
385
+ # association_id: "AssociationId",
386
+ # storage_type: "S3", # required, accepts S3, KINESIS_VIDEO_STREAM, KINESIS_STREAM, KINESIS_FIREHOSE
387
+ # s3_config: {
388
+ # bucket_name: "BucketName", # required
389
+ # bucket_prefix: "Prefix", # required
390
+ # encryption_config: {
391
+ # encryption_type: "KMS", # required, accepts KMS
392
+ # key_id: "KeyId", # required
393
+ # },
394
+ # },
395
+ # kinesis_video_stream_config: {
396
+ # prefix: "Prefix", # required
397
+ # retention_period_hours: 1, # required
398
+ # encryption_config: { # required
399
+ # encryption_type: "KMS", # required, accepts KMS
400
+ # key_id: "KeyId", # required
401
+ # },
402
+ # },
403
+ # kinesis_stream_config: {
404
+ # stream_arn: "ARN", # required
405
+ # },
406
+ # kinesis_firehose_config: {
407
+ # firehose_arn: "ARN", # required
408
+ # },
409
+ # },
410
+ # })
411
+ #
412
+ # @example Response structure
413
+ #
414
+ # resp.association_id #=> String
415
+ #
416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateInstanceStorageConfig AWS API Documentation
417
+ #
418
+ # @overload associate_instance_storage_config(params = {})
419
+ # @param [Hash] params ({})
420
+ def associate_instance_storage_config(params = {}, options = {})
421
+ req = build_request(:associate_instance_storage_config, params)
422
+ req.send_request(options)
423
+ end
424
+
425
+ # Allows the specified Amazon Connect instance to access the specified
426
+ # Lambda function.
427
+ #
428
+ # @option params [required, String] :instance_id
429
+ # The identifier of the Amazon Connect instance.
430
+ #
431
+ # @option params [required, String] :function_arn
432
+ # The Amazon Resource Name (ARN) for the Lambda function being
433
+ # associated. Maximum number of characters allowed is 140.
434
+ #
435
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
436
+ #
437
+ # @example Request syntax with placeholder values
438
+ #
439
+ # resp = client.associate_lambda_function({
440
+ # instance_id: "InstanceId", # required
441
+ # function_arn: "FunctionArn", # required
442
+ # })
443
+ #
444
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateLambdaFunction AWS API Documentation
445
+ #
446
+ # @overload associate_lambda_function(params = {})
447
+ # @param [Hash] params ({})
448
+ def associate_lambda_function(params = {}, options = {})
449
+ req = build_request(:associate_lambda_function, params)
450
+ req.send_request(options)
451
+ end
452
+
453
+ # Allows the specified Amazon Connect instance to access the specified
454
+ # Amazon Lex bot.
455
+ #
456
+ # @option params [required, String] :instance_id
457
+ # The identifier of the Amazon Connect instance.
458
+ #
459
+ # @option params [required, Types::LexBot] :lex_bot
460
+ # The Amazon Lex box to associate with the instance.
461
+ #
462
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
463
+ #
464
+ # @example Request syntax with placeholder values
465
+ #
466
+ # resp = client.associate_lex_bot({
467
+ # instance_id: "InstanceId", # required
468
+ # lex_bot: { # required
469
+ # name: "BotName",
470
+ # lex_region: "LexRegion",
471
+ # },
472
+ # })
473
+ #
474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateLexBot AWS API Documentation
475
+ #
476
+ # @overload associate_lex_bot(params = {})
477
+ # @param [Hash] params ({})
478
+ def associate_lex_bot(params = {}, options = {})
479
+ req = build_request(:associate_lex_bot, params)
480
+ req.send_request(options)
481
+ end
482
+
330
483
  # Associates a set of queues with a routing profile.
331
484
  #
332
485
  # @option params [required, String] :instance_id
@@ -349,7 +502,7 @@ module Aws::Connect
349
502
  # {
350
503
  # queue_reference: { # required
351
504
  # queue_id: "QueueId", # required
352
- # channel: "VOICE", # required, accepts VOICE, CHAT
505
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
353
506
  # },
354
507
  # priority: 1, # required
355
508
  # delay: 1, # required
@@ -366,8 +519,47 @@ module Aws::Connect
366
519
  req.send_request(options)
367
520
  end
368
521
 
522
+ # Associates a security key to the instance.
523
+ #
524
+ # @option params [required, String] :instance_id
525
+ # The identifier of the Amazon Connect instance.
526
+ #
527
+ # @option params [required, String] :key
528
+ # A valid security key in PEM format.
529
+ #
530
+ # @return [Types::AssociateSecurityKeyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
531
+ #
532
+ # * {Types::AssociateSecurityKeyResponse#association_id #association_id} => String
533
+ #
534
+ # @example Request syntax with placeholder values
535
+ #
536
+ # resp = client.associate_security_key({
537
+ # instance_id: "InstanceId", # required
538
+ # key: "PEM", # required
539
+ # })
540
+ #
541
+ # @example Response structure
542
+ #
543
+ # resp.association_id #=> String
544
+ #
545
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateSecurityKey AWS API Documentation
546
+ #
547
+ # @overload associate_security_key(params = {})
548
+ # @param [Hash] params ({})
549
+ def associate_security_key(params = {}, options = {})
550
+ req = build_request(:associate_security_key, params)
551
+ req.send_request(options)
552
+ end
553
+
369
554
  # Creates a contact flow for the specified Amazon Connect instance.
370
555
  #
556
+ # You can also create and update contact flows using the [Amazon Connect
557
+ # Flow language][1].
558
+ #
559
+ #
560
+ #
561
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html
562
+ #
371
563
  # @option params [required, String] :instance_id
372
564
  # The identifier of the Amazon Connect instance.
373
565
  #
@@ -424,6 +616,115 @@ module Aws::Connect
424
616
  req.send_request(options)
425
617
  end
426
618
 
619
+ # This API is in preview release for Amazon Connect and is subject to
620
+ # change.
621
+ #
622
+ # Initiates an Amazon Connect instance with all the supported channels
623
+ # enabled. It does not attach any storage (such as Amazon S3, or
624
+ # Kinesis) or allow for any configurations on features such as Contact
625
+ # Lens for Amazon Connect.
626
+ #
627
+ # @option params [String] :client_token
628
+ # The idempotency token.
629
+ #
630
+ # @option params [required, String] :identity_management_type
631
+ # The type of identity management for your Amazon Connect users.
632
+ #
633
+ # @option params [String] :instance_alias
634
+ # The name for your instance.
635
+ #
636
+ # @option params [String] :directory_id
637
+ # The identifier for the directory.
638
+ #
639
+ # @option params [required, Boolean] :inbound_calls_enabled
640
+ # Whether your contact center handles incoming contacts.
641
+ #
642
+ # @option params [required, Boolean] :outbound_calls_enabled
643
+ # Whether your contact center allows outbound calls.
644
+ #
645
+ # @return [Types::CreateInstanceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
646
+ #
647
+ # * {Types::CreateInstanceResponse#id #id} => String
648
+ # * {Types::CreateInstanceResponse#arn #arn} => String
649
+ #
650
+ # @example Request syntax with placeholder values
651
+ #
652
+ # resp = client.create_instance({
653
+ # client_token: "ClientToken",
654
+ # identity_management_type: "SAML", # required, accepts SAML, CONNECT_MANAGED, EXISTING_DIRECTORY
655
+ # instance_alias: "DirectoryAlias",
656
+ # directory_id: "DirectoryId",
657
+ # inbound_calls_enabled: false, # required
658
+ # outbound_calls_enabled: false, # required
659
+ # })
660
+ #
661
+ # @example Response structure
662
+ #
663
+ # resp.id #=> String
664
+ # resp.arn #=> String
665
+ #
666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateInstance AWS API Documentation
667
+ #
668
+ # @overload create_instance(params = {})
669
+ # @param [Hash] params ({})
670
+ def create_instance(params = {}, options = {})
671
+ req = build_request(:create_instance, params)
672
+ req.send_request(options)
673
+ end
674
+
675
+ # This API is in preview release for Amazon Connect and is subject to
676
+ # change.
677
+ #
678
+ # Create an AppIntegration association with anAmazon Connect instance.
679
+ #
680
+ # @option params [required, String] :instance_id
681
+ # The identifier of the Amazon Connect instance.
682
+ #
683
+ # @option params [required, String] :integration_type
684
+ # The type of information to be ingested.
685
+ #
686
+ # @option params [required, String] :integration_arn
687
+ # The Amazon Resource Name (ARN) of the integration.
688
+ #
689
+ # @option params [required, String] :source_application_url
690
+ # The URL for the external application.
691
+ #
692
+ # @option params [required, String] :source_application_name
693
+ # The name of the external application.
694
+ #
695
+ # @option params [required, String] :source_type
696
+ # The type of the data source.
697
+ #
698
+ # @return [Types::CreateIntegrationAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
699
+ #
700
+ # * {Types::CreateIntegrationAssociationResponse#integration_association_id #integration_association_id} => String
701
+ # * {Types::CreateIntegrationAssociationResponse#integration_association_arn #integration_association_arn} => String
702
+ #
703
+ # @example Request syntax with placeholder values
704
+ #
705
+ # resp = client.create_integration_association({
706
+ # instance_id: "InstanceId", # required
707
+ # integration_type: "EVENT", # required, accepts EVENT
708
+ # integration_arn: "ARN", # required
709
+ # source_application_url: "URI", # required
710
+ # source_application_name: "SourceApplicationName", # required
711
+ # source_type: "SALESFORCE", # required, accepts SALESFORCE, ZENDESK
712
+ # })
713
+ #
714
+ # @example Response structure
715
+ #
716
+ # resp.integration_association_id #=> String
717
+ # resp.integration_association_arn #=> String
718
+ #
719
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateIntegrationAssociation AWS API Documentation
720
+ #
721
+ # @overload create_integration_association(params = {})
722
+ # @param [Hash] params ({})
723
+ def create_integration_association(params = {}, options = {})
724
+ req = build_request(:create_integration_association, params)
725
+ req.send_request(options)
726
+ end
727
+
427
728
  # Creates a new routing profile.
428
729
  #
429
730
  # @option params [required, String] :instance_id
@@ -466,7 +767,7 @@ module Aws::Connect
466
767
  # {
467
768
  # queue_reference: { # required
468
769
  # queue_id: "QueueId", # required
469
- # channel: "VOICE", # required, accepts VOICE, CHAT
770
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
470
771
  # },
471
772
  # priority: 1, # required
472
773
  # delay: 1, # required
@@ -474,7 +775,7 @@ module Aws::Connect
474
775
  # ],
475
776
  # media_concurrencies: [ # required
476
777
  # {
477
- # channel: "VOICE", # required, accepts VOICE, CHAT
778
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
478
779
  # concurrency: 1, # required
479
780
  # },
480
781
  # ],
@@ -497,6 +798,49 @@ module Aws::Connect
497
798
  req.send_request(options)
498
799
  end
499
800
 
801
+ # This API is in preview release for Amazon Connect and is subject to
802
+ # change.
803
+ #
804
+ # Creates a use case for an AppIntegration association.
805
+ #
806
+ # @option params [required, String] :instance_id
807
+ # The identifier of the Amazon Connect instance.
808
+ #
809
+ # @option params [required, String] :integration_association_id
810
+ # The identifier for the AppIntegration association.
811
+ #
812
+ # @option params [required, String] :use_case_type
813
+ # The type of use case to associate to the AppIntegration association.
814
+ # Each AppIntegration association can have only one of each use case
815
+ # type.
816
+ #
817
+ # @return [Types::CreateUseCaseResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
818
+ #
819
+ # * {Types::CreateUseCaseResponse#use_case_id #use_case_id} => String
820
+ # * {Types::CreateUseCaseResponse#use_case_arn #use_case_arn} => String
821
+ #
822
+ # @example Request syntax with placeholder values
823
+ #
824
+ # resp = client.create_use_case({
825
+ # instance_id: "InstanceId", # required
826
+ # integration_association_id: "IntegrationAssociationId", # required
827
+ # use_case_type: "RULES_EVALUATION", # required, accepts RULES_EVALUATION
828
+ # })
829
+ #
830
+ # @example Response structure
831
+ #
832
+ # resp.use_case_id #=> String
833
+ # resp.use_case_arn #=> String
834
+ #
835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateUseCase AWS API Documentation
836
+ #
837
+ # @overload create_use_case(params = {})
838
+ # @param [Hash] params ({})
839
+ def create_use_case(params = {}, options = {})
840
+ req = build_request(:create_use_case, params)
841
+ req.send_request(options)
842
+ end
843
+
500
844
  # Creates a user account for the specified Amazon Connect instance.
501
845
  #
502
846
  # For information about how to create user accounts using the Amazon
@@ -597,6 +941,134 @@ module Aws::Connect
597
941
  req.send_request(options)
598
942
  end
599
943
 
944
+ # Creates a new user hierarchy group.
945
+ #
946
+ # @option params [required, String] :name
947
+ # The name of the user hierarchy group. Must not be more than 100
948
+ # characters.
949
+ #
950
+ # @option params [String] :parent_group_id
951
+ # The identifier for the parent hierarchy group. The user hierarchy is
952
+ # created at level one if the parent group ID is null.
953
+ #
954
+ # @option params [required, String] :instance_id
955
+ # The identifier of the Amazon Connect instance.
956
+ #
957
+ # @return [Types::CreateUserHierarchyGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
958
+ #
959
+ # * {Types::CreateUserHierarchyGroupResponse#hierarchy_group_id #hierarchy_group_id} => String
960
+ # * {Types::CreateUserHierarchyGroupResponse#hierarchy_group_arn #hierarchy_group_arn} => String
961
+ #
962
+ # @example Request syntax with placeholder values
963
+ #
964
+ # resp = client.create_user_hierarchy_group({
965
+ # name: "HierarchyGroupName", # required
966
+ # parent_group_id: "HierarchyGroupId",
967
+ # instance_id: "InstanceId", # required
968
+ # })
969
+ #
970
+ # @example Response structure
971
+ #
972
+ # resp.hierarchy_group_id #=> String
973
+ # resp.hierarchy_group_arn #=> String
974
+ #
975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateUserHierarchyGroup AWS API Documentation
976
+ #
977
+ # @overload create_user_hierarchy_group(params = {})
978
+ # @param [Hash] params ({})
979
+ def create_user_hierarchy_group(params = {}, options = {})
980
+ req = build_request(:create_user_hierarchy_group, params)
981
+ req.send_request(options)
982
+ end
983
+
984
+ # This API is in preview release for Amazon Connect and is subject to
985
+ # change.
986
+ #
987
+ # Deletes the Amazon Connect instance.
988
+ #
989
+ # @option params [required, String] :instance_id
990
+ # The identifier of the Amazon Connect instance.
991
+ #
992
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
993
+ #
994
+ # @example Request syntax with placeholder values
995
+ #
996
+ # resp = client.delete_instance({
997
+ # instance_id: "InstanceId", # required
998
+ # })
999
+ #
1000
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DeleteInstance AWS API Documentation
1001
+ #
1002
+ # @overload delete_instance(params = {})
1003
+ # @param [Hash] params ({})
1004
+ def delete_instance(params = {}, options = {})
1005
+ req = build_request(:delete_instance, params)
1006
+ req.send_request(options)
1007
+ end
1008
+
1009
+ # This API is in preview release for Amazon Connect and is subject to
1010
+ # change.
1011
+ #
1012
+ # Deletes an AppIntegration association from an Amazon Connect instance.
1013
+ # The association must not have any use cases associated with it.
1014
+ #
1015
+ # @option params [required, String] :instance_id
1016
+ # The identifier of the Amazon Connect instance.
1017
+ #
1018
+ # @option params [required, String] :integration_association_id
1019
+ # The identifier for the AppIntegration association.
1020
+ #
1021
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1022
+ #
1023
+ # @example Request syntax with placeholder values
1024
+ #
1025
+ # resp = client.delete_integration_association({
1026
+ # instance_id: "InstanceId", # required
1027
+ # integration_association_id: "IntegrationAssociationId", # required
1028
+ # })
1029
+ #
1030
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DeleteIntegrationAssociation AWS API Documentation
1031
+ #
1032
+ # @overload delete_integration_association(params = {})
1033
+ # @param [Hash] params ({})
1034
+ def delete_integration_association(params = {}, options = {})
1035
+ req = build_request(:delete_integration_association, params)
1036
+ req.send_request(options)
1037
+ end
1038
+
1039
+ # This API is in preview release for Amazon Connect and is subject to
1040
+ # change.
1041
+ #
1042
+ # Deletes a use case from an AppIntegration association.
1043
+ #
1044
+ # @option params [required, String] :instance_id
1045
+ # The identifier of the Amazon Connect instance.
1046
+ #
1047
+ # @option params [required, String] :integration_association_id
1048
+ # The identifier for the AppIntegration association.
1049
+ #
1050
+ # @option params [required, String] :use_case_id
1051
+ # The identifier for the use case.
1052
+ #
1053
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1054
+ #
1055
+ # @example Request syntax with placeholder values
1056
+ #
1057
+ # resp = client.delete_use_case({
1058
+ # instance_id: "InstanceId", # required
1059
+ # integration_association_id: "IntegrationAssociationId", # required
1060
+ # use_case_id: "UseCaseId", # required
1061
+ # })
1062
+ #
1063
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DeleteUseCase AWS API Documentation
1064
+ #
1065
+ # @overload delete_use_case(params = {})
1066
+ # @param [Hash] params ({})
1067
+ def delete_use_case(params = {}, options = {})
1068
+ req = build_request(:delete_use_case, params)
1069
+ req.send_request(options)
1070
+ end
1071
+
600
1072
  # Deletes a user account from the specified Amazon Connect instance.
601
1073
  #
602
1074
  # For information about what happens to a user's data when their
@@ -631,8 +1103,42 @@ module Aws::Connect
631
1103
  req.send_request(options)
632
1104
  end
633
1105
 
1106
+ # Deletes an existing user hierarchy group. It must not be associated
1107
+ # with any agents or have any active child groups.
1108
+ #
1109
+ # @option params [required, String] :hierarchy_group_id
1110
+ # The identifier of the hierarchy group.
1111
+ #
1112
+ # @option params [required, String] :instance_id
1113
+ # The identifier of the Amazon Connect instance.
1114
+ #
1115
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1116
+ #
1117
+ # @example Request syntax with placeholder values
1118
+ #
1119
+ # resp = client.delete_user_hierarchy_group({
1120
+ # hierarchy_group_id: "HierarchyGroupId", # required
1121
+ # instance_id: "InstanceId", # required
1122
+ # })
1123
+ #
1124
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DeleteUserHierarchyGroup AWS API Documentation
1125
+ #
1126
+ # @overload delete_user_hierarchy_group(params = {})
1127
+ # @param [Hash] params ({})
1128
+ def delete_user_hierarchy_group(params = {}, options = {})
1129
+ req = build_request(:delete_user_hierarchy_group, params)
1130
+ req.send_request(options)
1131
+ end
1132
+
634
1133
  # Describes the specified contact flow.
635
1134
  #
1135
+ # You can also create and update contact flows using the [Amazon Connect
1136
+ # Flow language][1].
1137
+ #
1138
+ #
1139
+ #
1140
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html
1141
+ #
636
1142
  # @option params [required, String] :instance_id
637
1143
  # The identifier of the Amazon Connect instance.
638
1144
  #
@@ -670,6 +1176,132 @@ module Aws::Connect
670
1176
  req.send_request(options)
671
1177
  end
672
1178
 
1179
+ # Returns the current state of the specified instance identifier. It
1180
+ # tracks the instance while it is being created and returns an error
1181
+ # status if applicable.
1182
+ #
1183
+ # If an instance is not created successfully, the instance status reason
1184
+ # field returns details relevant to the reason. The instance in a failed
1185
+ # state is returned only for 24 hours after the CreateInstance API was
1186
+ # invoked.
1187
+ #
1188
+ # @option params [required, String] :instance_id
1189
+ # The identifier of the Amazon Connect instance.
1190
+ #
1191
+ # @return [Types::DescribeInstanceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1192
+ #
1193
+ # * {Types::DescribeInstanceResponse#instance #instance} => Types::Instance
1194
+ #
1195
+ # @example Request syntax with placeholder values
1196
+ #
1197
+ # resp = client.describe_instance({
1198
+ # instance_id: "InstanceId", # required
1199
+ # })
1200
+ #
1201
+ # @example Response structure
1202
+ #
1203
+ # resp.instance.id #=> String
1204
+ # resp.instance.arn #=> String
1205
+ # resp.instance.identity_management_type #=> String, one of "SAML", "CONNECT_MANAGED", "EXISTING_DIRECTORY"
1206
+ # resp.instance.instance_alias #=> String
1207
+ # resp.instance.created_time #=> Time
1208
+ # resp.instance.service_role #=> String
1209
+ # resp.instance.instance_status #=> String, one of "CREATION_IN_PROGRESS", "ACTIVE", "CREATION_FAILED"
1210
+ # resp.instance.status_reason.message #=> String
1211
+ # resp.instance.inbound_calls_enabled #=> Boolean
1212
+ # resp.instance.outbound_calls_enabled #=> Boolean
1213
+ #
1214
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribeInstance AWS API Documentation
1215
+ #
1216
+ # @overload describe_instance(params = {})
1217
+ # @param [Hash] params ({})
1218
+ def describe_instance(params = {}, options = {})
1219
+ req = build_request(:describe_instance, params)
1220
+ req.send_request(options)
1221
+ end
1222
+
1223
+ # Describes the specified instance attribute.
1224
+ #
1225
+ # @option params [required, String] :instance_id
1226
+ # The identifier of the Amazon Connect instance.
1227
+ #
1228
+ # @option params [required, String] :attribute_type
1229
+ # The type of attribute.
1230
+ #
1231
+ # @return [Types::DescribeInstanceAttributeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1232
+ #
1233
+ # * {Types::DescribeInstanceAttributeResponse#attribute #attribute} => Types::Attribute
1234
+ #
1235
+ # @example Request syntax with placeholder values
1236
+ #
1237
+ # resp = client.describe_instance_attribute({
1238
+ # instance_id: "InstanceId", # required
1239
+ # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA
1240
+ # })
1241
+ #
1242
+ # @example Response structure
1243
+ #
1244
+ # resp.attribute.attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA"
1245
+ # resp.attribute.value #=> String
1246
+ #
1247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribeInstanceAttribute AWS API Documentation
1248
+ #
1249
+ # @overload describe_instance_attribute(params = {})
1250
+ # @param [Hash] params ({})
1251
+ def describe_instance_attribute(params = {}, options = {})
1252
+ req = build_request(:describe_instance_attribute, params)
1253
+ req.send_request(options)
1254
+ end
1255
+
1256
+ # Retrieves the current storage configurations for the specified
1257
+ # resource type, association ID, and instance ID.
1258
+ #
1259
+ # @option params [required, String] :instance_id
1260
+ # The identifier of the Amazon Connect instance.
1261
+ #
1262
+ # @option params [required, String] :association_id
1263
+ # The existing association identifier that uniquely identifies the
1264
+ # resource type and storage config for the given instance ID.
1265
+ #
1266
+ # @option params [required, String] :resource_type
1267
+ # A valid resource type.
1268
+ #
1269
+ # @return [Types::DescribeInstanceStorageConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1270
+ #
1271
+ # * {Types::DescribeInstanceStorageConfigResponse#storage_config #storage_config} => Types::InstanceStorageConfig
1272
+ #
1273
+ # @example Request syntax with placeholder values
1274
+ #
1275
+ # resp = client.describe_instance_storage_config({
1276
+ # instance_id: "InstanceId", # required
1277
+ # association_id: "AssociationId", # required
1278
+ # resource_type: "CHAT_TRANSCRIPTS", # required, accepts CHAT_TRANSCRIPTS, CALL_RECORDINGS, SCHEDULED_REPORTS, MEDIA_STREAMS, CONTACT_TRACE_RECORDS, AGENT_EVENTS
1279
+ # })
1280
+ #
1281
+ # @example Response structure
1282
+ #
1283
+ # resp.storage_config.association_id #=> String
1284
+ # resp.storage_config.storage_type #=> String, one of "S3", "KINESIS_VIDEO_STREAM", "KINESIS_STREAM", "KINESIS_FIREHOSE"
1285
+ # resp.storage_config.s3_config.bucket_name #=> String
1286
+ # resp.storage_config.s3_config.bucket_prefix #=> String
1287
+ # resp.storage_config.s3_config.encryption_config.encryption_type #=> String, one of "KMS"
1288
+ # resp.storage_config.s3_config.encryption_config.key_id #=> String
1289
+ # resp.storage_config.kinesis_video_stream_config.prefix #=> String
1290
+ # resp.storage_config.kinesis_video_stream_config.retention_period_hours #=> Integer
1291
+ # resp.storage_config.kinesis_video_stream_config.encryption_config.encryption_type #=> String, one of "KMS"
1292
+ # resp.storage_config.kinesis_video_stream_config.encryption_config.key_id #=> String
1293
+ # resp.storage_config.kinesis_stream_config.stream_arn #=> String
1294
+ # resp.storage_config.kinesis_firehose_config.firehose_arn #=> String
1295
+ #
1296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribeInstanceStorageConfig AWS API Documentation
1297
+ #
1298
+ # @overload describe_instance_storage_config(params = {})
1299
+ # @param [Hash] params ({})
1300
+ def describe_instance_storage_config(params = {}, options = {})
1301
+ req = build_request(:describe_instance_storage_config, params)
1302
+ req.send_request(options)
1303
+ end
1304
+
673
1305
  # Describes the specified routing profile.
674
1306
  #
675
1307
  # @option params [required, String] :instance_id
@@ -697,7 +1329,7 @@ module Aws::Connect
697
1329
  # resp.routing_profile.routing_profile_id #=> String
698
1330
  # resp.routing_profile.description #=> String
699
1331
  # resp.routing_profile.media_concurrencies #=> Array
700
- # resp.routing_profile.media_concurrencies[0].channel #=> String, one of "VOICE", "CHAT"
1332
+ # resp.routing_profile.media_concurrencies[0].channel #=> String, one of "VOICE", "CHAT", "TASK"
701
1333
  # resp.routing_profile.media_concurrencies[0].concurrency #=> Integer
702
1334
  # resp.routing_profile.default_outbound_queue_id #=> String
703
1335
  # resp.routing_profile.tags #=> Hash
@@ -856,6 +1488,123 @@ module Aws::Connect
856
1488
  req.send_request(options)
857
1489
  end
858
1490
 
1491
+ # Revokes access to integrated applications from Amazon Connect.
1492
+ #
1493
+ # @option params [required, String] :instance_id
1494
+ # The identifier of the Amazon Connect instance.
1495
+ #
1496
+ # @option params [required, String] :origin
1497
+ # The domain URL of the integrated application.
1498
+ #
1499
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1500
+ #
1501
+ # @example Request syntax with placeholder values
1502
+ #
1503
+ # resp = client.disassociate_approved_origin({
1504
+ # instance_id: "InstanceId", # required
1505
+ # origin: "Origin", # required
1506
+ # })
1507
+ #
1508
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateApprovedOrigin AWS API Documentation
1509
+ #
1510
+ # @overload disassociate_approved_origin(params = {})
1511
+ # @param [Hash] params ({})
1512
+ def disassociate_approved_origin(params = {}, options = {})
1513
+ req = build_request(:disassociate_approved_origin, params)
1514
+ req.send_request(options)
1515
+ end
1516
+
1517
+ # Removes the storage type configurations for the specified resource
1518
+ # type and association ID.
1519
+ #
1520
+ # @option params [required, String] :instance_id
1521
+ # The identifier of the Amazon Connect instance.
1522
+ #
1523
+ # @option params [required, String] :association_id
1524
+ # The existing association identifier that uniquely identifies the
1525
+ # resource type and storage config for the given instance ID.
1526
+ #
1527
+ # @option params [required, String] :resource_type
1528
+ # A valid resource type.
1529
+ #
1530
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1531
+ #
1532
+ # @example Request syntax with placeholder values
1533
+ #
1534
+ # resp = client.disassociate_instance_storage_config({
1535
+ # instance_id: "InstanceId", # required
1536
+ # association_id: "AssociationId", # required
1537
+ # resource_type: "CHAT_TRANSCRIPTS", # required, accepts CHAT_TRANSCRIPTS, CALL_RECORDINGS, SCHEDULED_REPORTS, MEDIA_STREAMS, CONTACT_TRACE_RECORDS, AGENT_EVENTS
1538
+ # })
1539
+ #
1540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateInstanceStorageConfig AWS API Documentation
1541
+ #
1542
+ # @overload disassociate_instance_storage_config(params = {})
1543
+ # @param [Hash] params ({})
1544
+ def disassociate_instance_storage_config(params = {}, options = {})
1545
+ req = build_request(:disassociate_instance_storage_config, params)
1546
+ req.send_request(options)
1547
+ end
1548
+
1549
+ # Remove the Lambda function from the drop-down options available in the
1550
+ # relevant contact flow blocks.
1551
+ #
1552
+ # @option params [required, String] :instance_id
1553
+ # The identifier of the Amazon Connect instance..
1554
+ #
1555
+ # @option params [required, String] :function_arn
1556
+ # The Amazon Resource Name (ARN) of the Lambda function being
1557
+ # disassociated.
1558
+ #
1559
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1560
+ #
1561
+ # @example Request syntax with placeholder values
1562
+ #
1563
+ # resp = client.disassociate_lambda_function({
1564
+ # instance_id: "InstanceId", # required
1565
+ # function_arn: "FunctionArn", # required
1566
+ # })
1567
+ #
1568
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateLambdaFunction AWS API Documentation
1569
+ #
1570
+ # @overload disassociate_lambda_function(params = {})
1571
+ # @param [Hash] params ({})
1572
+ def disassociate_lambda_function(params = {}, options = {})
1573
+ req = build_request(:disassociate_lambda_function, params)
1574
+ req.send_request(options)
1575
+ end
1576
+
1577
+ # Revokes authorization from the specified instance to access the
1578
+ # specified Amazon Lex bot.
1579
+ #
1580
+ # @option params [required, String] :instance_id
1581
+ # The identifier of the Amazon Connect instance.
1582
+ #
1583
+ # @option params [required, String] :bot_name
1584
+ # The name of the Amazon Lex bot. Maximum character limit of 50.
1585
+ #
1586
+ # @option params [required, String] :lex_region
1587
+ # The Region in which the Amazon Lex bot has been created.
1588
+ #
1589
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1590
+ #
1591
+ # @example Request syntax with placeholder values
1592
+ #
1593
+ # resp = client.disassociate_lex_bot({
1594
+ # instance_id: "InstanceId", # required
1595
+ # bot_name: "BotName", # required
1596
+ # lex_region: "LexRegion", # required
1597
+ # })
1598
+ #
1599
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateLexBot AWS API Documentation
1600
+ #
1601
+ # @overload disassociate_lex_bot(params = {})
1602
+ # @param [Hash] params ({})
1603
+ def disassociate_lex_bot(params = {}, options = {})
1604
+ req = build_request(:disassociate_lex_bot, params)
1605
+ req.send_request(options)
1606
+ end
1607
+
859
1608
  # Disassociates a set of queues from a routing profile.
860
1609
  #
861
1610
  # @option params [required, String] :instance_id
@@ -877,17 +1626,44 @@ module Aws::Connect
877
1626
  # queue_references: [ # required
878
1627
  # {
879
1628
  # queue_id: "QueueId", # required
880
- # channel: "VOICE", # required, accepts VOICE, CHAT
1629
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
881
1630
  # },
882
1631
  # ],
883
1632
  # })
884
1633
  #
885
- # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateRoutingProfileQueues AWS API Documentation
1634
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateRoutingProfileQueues AWS API Documentation
1635
+ #
1636
+ # @overload disassociate_routing_profile_queues(params = {})
1637
+ # @param [Hash] params ({})
1638
+ def disassociate_routing_profile_queues(params = {}, options = {})
1639
+ req = build_request(:disassociate_routing_profile_queues, params)
1640
+ req.send_request(options)
1641
+ end
1642
+
1643
+ # Deletes the specified security key.
1644
+ #
1645
+ # @option params [required, String] :instance_id
1646
+ # The identifier of the Amazon Connect instance.
1647
+ #
1648
+ # @option params [required, String] :association_id
1649
+ # The existing association identifier that uniquely identifies the
1650
+ # resource type and storage config for the given instance ID.
1651
+ #
1652
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1653
+ #
1654
+ # @example Request syntax with placeholder values
1655
+ #
1656
+ # resp = client.disassociate_security_key({
1657
+ # instance_id: "InstanceId", # required
1658
+ # association_id: "AssociationId", # required
1659
+ # })
1660
+ #
1661
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateSecurityKey AWS API Documentation
886
1662
  #
887
- # @overload disassociate_routing_profile_queues(params = {})
1663
+ # @overload disassociate_security_key(params = {})
888
1664
  # @param [Hash] params ({})
889
- def disassociate_routing_profile_queues(params = {}, options = {})
890
- req = build_request(:disassociate_routing_profile_queues, params)
1665
+ def disassociate_security_key(params = {}, options = {})
1666
+ req = build_request(:disassociate_security_key, params)
891
1667
  req.send_request(options)
892
1668
  end
893
1669
 
@@ -941,14 +1717,14 @@ module Aws::Connect
941
1717
  # The queues, up to 100, or channels, to use to filter the metrics
942
1718
  # returned. Metric data is retrieved only for the resources associated
943
1719
  # with the queues or channels included in the filter. You can include
944
- # both queue IDs and queue ARNs in the same request. Both `VOICE` and
945
- # `CHAT` channels are supported.
1720
+ # both queue IDs and queue ARNs in the same request. VOICE, CHAT, and
1721
+ # TASK channels are supported.
946
1722
  #
947
1723
  # @option params [Array<String>] :groupings
948
1724
  # The grouping applied to the metrics returned. For example, when
949
1725
  # grouped by `QUEUE`, the metrics returned apply to each queue rather
950
1726
  # than aggregated for all queues. If you group by `CHANNEL`, you should
951
- # include a Channels filter. Both `VOICE` and `CHAT` channels are
1727
+ # include a Channels filter. VOICE, CHAT, and TASK channels are
952
1728
  # supported.
953
1729
  #
954
1730
  # If no `Grouping` is included in the request, a summary of metrics is
@@ -1088,7 +1864,7 @@ module Aws::Connect
1088
1864
  # instance_id: "InstanceId", # required
1089
1865
  # filters: { # required
1090
1866
  # queues: ["QueueId"],
1091
- # channels: ["VOICE"], # accepts VOICE, CHAT
1867
+ # channels: ["VOICE"], # accepts VOICE, CHAT, TASK
1092
1868
  # },
1093
1869
  # groupings: ["QUEUE"], # accepts QUEUE, CHANNEL
1094
1870
  # current_metrics: [ # required
@@ -1107,7 +1883,7 @@ module Aws::Connect
1107
1883
  # resp.metric_results #=> Array
1108
1884
  # resp.metric_results[0].dimensions.queue.id #=> String
1109
1885
  # resp.metric_results[0].dimensions.queue.arn #=> String
1110
- # resp.metric_results[0].dimensions.channel #=> String, one of "VOICE", "CHAT"
1886
+ # resp.metric_results[0].dimensions.channel #=> String, one of "VOICE", "CHAT", "TASK"
1111
1887
  # resp.metric_results[0].collections #=> Array
1112
1888
  # resp.metric_results[0].collections[0].metric.name #=> String, one of "AGENTS_ONLINE", "AGENTS_AVAILABLE", "AGENTS_ON_CALL", "AGENTS_NON_PRODUCTIVE", "AGENTS_AFTER_CONTACT_WORK", "AGENTS_ERROR", "AGENTS_STAFFED", "CONTACTS_IN_QUEUE", "OLDEST_CONTACT_AGE", "CONTACTS_SCHEDULED", "AGENTS_ON_CONTACT", "SLOTS_ACTIVE", "SLOTS_AVAILABLE"
1113
1889
  # resp.metric_results[0].collections[0].metric.unit #=> String, one of "SECONDS", "COUNT", "PERCENT"
@@ -1189,8 +1965,8 @@ module Aws::Connect
1189
1965
  # The queues, up to 100, or channels, to use to filter the metrics
1190
1966
  # returned. Metric data is retrieved only for the resources associated
1191
1967
  # with the queues or channels included in the filter. You can include
1192
- # both queue IDs and queue ARNs in the same request. Both `VOICE` and
1193
- # `CHAT` channels are supported.
1968
+ # both queue IDs and queue ARNs in the same request. VOICE, CHAT, and
1969
+ # TASK channels are supported.
1194
1970
  #
1195
1971
  # @option params [Array<String>] :groupings
1196
1972
  # The grouping applied to the metrics returned. For example, when
@@ -1390,7 +2166,7 @@ module Aws::Connect
1390
2166
  # end_time: Time.now, # required
1391
2167
  # filters: { # required
1392
2168
  # queues: ["QueueId"],
1393
- # channels: ["VOICE"], # accepts VOICE, CHAT
2169
+ # channels: ["VOICE"], # accepts VOICE, CHAT, TASK
1394
2170
  # },
1395
2171
  # groupings: ["QUEUE"], # accepts QUEUE, CHANNEL
1396
2172
  # historical_metrics: [ # required
@@ -1414,7 +2190,7 @@ module Aws::Connect
1414
2190
  # resp.metric_results #=> Array
1415
2191
  # resp.metric_results[0].dimensions.queue.id #=> String
1416
2192
  # resp.metric_results[0].dimensions.queue.arn #=> String
1417
- # resp.metric_results[0].dimensions.channel #=> String, one of "VOICE", "CHAT"
2193
+ # resp.metric_results[0].dimensions.channel #=> String, one of "VOICE", "CHAT", "TASK"
1418
2194
  # resp.metric_results[0].collections #=> Array
1419
2195
  # resp.metric_results[0].collections[0].metric.name #=> String, one of "CONTACTS_QUEUED", "CONTACTS_HANDLED", "CONTACTS_ABANDONED", "CONTACTS_CONSULTED", "CONTACTS_AGENT_HUNG_UP_FIRST", "CONTACTS_HANDLED_INCOMING", "CONTACTS_HANDLED_OUTBOUND", "CONTACTS_HOLD_ABANDONS", "CONTACTS_TRANSFERRED_IN", "CONTACTS_TRANSFERRED_OUT", "CONTACTS_TRANSFERRED_IN_FROM_QUEUE", "CONTACTS_TRANSFERRED_OUT_FROM_QUEUE", "CONTACTS_MISSED", "CALLBACK_CONTACTS_HANDLED", "API_CONTACTS_HANDLED", "OCCUPANCY", "HANDLE_TIME", "AFTER_CONTACT_WORK_TIME", "QUEUED_TIME", "ABANDON_TIME", "QUEUE_ANSWER_TIME", "HOLD_TIME", "INTERACTION_TIME", "INTERACTION_AND_HOLD_TIME", "SERVICE_LEVEL"
1420
2196
  # resp.metric_results[0].collections[0].metric.threshold.comparison #=> String, one of "LT"
@@ -1432,15 +2208,63 @@ module Aws::Connect
1432
2208
  req.send_request(options)
1433
2209
  end
1434
2210
 
2211
+ # Returns a paginated list of all approved origins associated with the
2212
+ # instance.
2213
+ #
2214
+ # @option params [required, String] :instance_id
2215
+ # The identifier of the Amazon Connect instance.
2216
+ #
2217
+ # @option params [String] :next_token
2218
+ # The token for the next set of results. Use the value returned in the
2219
+ # previous response in the next request to retrieve the next set of
2220
+ # results.
2221
+ #
2222
+ # @option params [Integer] :max_results
2223
+ # The maximimum number of results to return per page.
2224
+ #
2225
+ # @return [Types::ListApprovedOriginsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2226
+ #
2227
+ # * {Types::ListApprovedOriginsResponse#origins #origins} => Array&lt;String&gt;
2228
+ # * {Types::ListApprovedOriginsResponse#next_token #next_token} => String
2229
+ #
2230
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2231
+ #
2232
+ # @example Request syntax with placeholder values
2233
+ #
2234
+ # resp = client.list_approved_origins({
2235
+ # instance_id: "InstanceId", # required
2236
+ # next_token: "NextToken",
2237
+ # max_results: 1,
2238
+ # })
2239
+ #
2240
+ # @example Response structure
2241
+ #
2242
+ # resp.origins #=> Array
2243
+ # resp.origins[0] #=> String
2244
+ # resp.next_token #=> String
2245
+ #
2246
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListApprovedOrigins AWS API Documentation
2247
+ #
2248
+ # @overload list_approved_origins(params = {})
2249
+ # @param [Hash] params ({})
2250
+ def list_approved_origins(params = {}, options = {})
2251
+ req = build_request(:list_approved_origins, params)
2252
+ req.send_request(options)
2253
+ end
2254
+
1435
2255
  # Provides information about the contact flows for the specified Amazon
1436
2256
  # Connect instance.
1437
2257
  #
1438
- # For more information about contact flows, see [Contact Flows][1] in
2258
+ # You can also create and update contact flows using the [Amazon Connect
2259
+ # Flow language][1].
2260
+ #
2261
+ # For more information about contact flows, see [Contact Flows][2] in
1439
2262
  # the *Amazon Connect Administrator Guide*.
1440
2263
  #
1441
2264
  #
1442
2265
  #
1443
- # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/concepts-contact-flows.html
2266
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html
2267
+ # [2]: https://docs.aws.amazon.com/connect/latest/adminguide/concepts-contact-flows.html
1444
2268
  #
1445
2269
  # @option params [required, String] :instance_id
1446
2270
  # The identifier of the Amazon Connect instance.
@@ -1481,24 +2305,331 @@ module Aws::Connect
1481
2305
  # resp.contact_flow_summary_list[0].contact_flow_type #=> String, one of "CONTACT_FLOW", "CUSTOMER_QUEUE", "CUSTOMER_HOLD", "CUSTOMER_WHISPER", "AGENT_HOLD", "AGENT_WHISPER", "OUTBOUND_WHISPER", "AGENT_TRANSFER", "QUEUE_TRANSFER"
1482
2306
  # resp.next_token #=> String
1483
2307
  #
1484
- # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListContactFlows AWS API Documentation
2308
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListContactFlows AWS API Documentation
2309
+ #
2310
+ # @overload list_contact_flows(params = {})
2311
+ # @param [Hash] params ({})
2312
+ def list_contact_flows(params = {}, options = {})
2313
+ req = build_request(:list_contact_flows, params)
2314
+ req.send_request(options)
2315
+ end
2316
+
2317
+ # Provides information about the hours of operation for the specified
2318
+ # Amazon Connect instance.
2319
+ #
2320
+ # For more information about hours of operation, see [Set the Hours of
2321
+ # Operation for a Queue][1] in the *Amazon Connect Administrator Guide*.
2322
+ #
2323
+ #
2324
+ #
2325
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/set-hours-operation.html
2326
+ #
2327
+ # @option params [required, String] :instance_id
2328
+ # The identifier of the Amazon Connect instance.
2329
+ #
2330
+ # @option params [String] :next_token
2331
+ # The token for the next set of results. Use the value returned in the
2332
+ # previous response in the next request to retrieve the next set of
2333
+ # results.
2334
+ #
2335
+ # @option params [Integer] :max_results
2336
+ # The maximimum number of results to return per page.
2337
+ #
2338
+ # @return [Types::ListHoursOfOperationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2339
+ #
2340
+ # * {Types::ListHoursOfOperationsResponse#hours_of_operation_summary_list #hours_of_operation_summary_list} => Array&lt;Types::HoursOfOperationSummary&gt;
2341
+ # * {Types::ListHoursOfOperationsResponse#next_token #next_token} => String
2342
+ #
2343
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2344
+ #
2345
+ # @example Request syntax with placeholder values
2346
+ #
2347
+ # resp = client.list_hours_of_operations({
2348
+ # instance_id: "InstanceId", # required
2349
+ # next_token: "NextToken",
2350
+ # max_results: 1,
2351
+ # })
2352
+ #
2353
+ # @example Response structure
2354
+ #
2355
+ # resp.hours_of_operation_summary_list #=> Array
2356
+ # resp.hours_of_operation_summary_list[0].id #=> String
2357
+ # resp.hours_of_operation_summary_list[0].arn #=> String
2358
+ # resp.hours_of_operation_summary_list[0].name #=> String
2359
+ # resp.next_token #=> String
2360
+ #
2361
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListHoursOfOperations AWS API Documentation
2362
+ #
2363
+ # @overload list_hours_of_operations(params = {})
2364
+ # @param [Hash] params ({})
2365
+ def list_hours_of_operations(params = {}, options = {})
2366
+ req = build_request(:list_hours_of_operations, params)
2367
+ req.send_request(options)
2368
+ end
2369
+
2370
+ # This API is in preview release for Amazon Connect and is subject to
2371
+ # change.
2372
+ #
2373
+ # Returns a paginated list of all attribute types for the given
2374
+ # instance.
2375
+ #
2376
+ # @option params [required, String] :instance_id
2377
+ # The identifier of the Amazon Connect instance.
2378
+ #
2379
+ # @option params [String] :next_token
2380
+ # The token for the next set of results. Use the value returned in the
2381
+ # previous response in the next request to retrieve the next set of
2382
+ # results.
2383
+ #
2384
+ # @option params [Integer] :max_results
2385
+ # The maximimum number of results to return per page.
2386
+ #
2387
+ # @return [Types::ListInstanceAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2388
+ #
2389
+ # * {Types::ListInstanceAttributesResponse#attributes #attributes} => Array&lt;Types::Attribute&gt;
2390
+ # * {Types::ListInstanceAttributesResponse#next_token #next_token} => String
2391
+ #
2392
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2393
+ #
2394
+ # @example Request syntax with placeholder values
2395
+ #
2396
+ # resp = client.list_instance_attributes({
2397
+ # instance_id: "InstanceId", # required
2398
+ # next_token: "NextToken",
2399
+ # max_results: 1,
2400
+ # })
2401
+ #
2402
+ # @example Response structure
2403
+ #
2404
+ # resp.attributes #=> Array
2405
+ # resp.attributes[0].attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA"
2406
+ # resp.attributes[0].value #=> String
2407
+ # resp.next_token #=> String
2408
+ #
2409
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListInstanceAttributes AWS API Documentation
2410
+ #
2411
+ # @overload list_instance_attributes(params = {})
2412
+ # @param [Hash] params ({})
2413
+ def list_instance_attributes(params = {}, options = {})
2414
+ req = build_request(:list_instance_attributes, params)
2415
+ req.send_request(options)
2416
+ end
2417
+
2418
+ # This API is in preview release for Amazon Connect and is subject to
2419
+ # change.
2420
+ #
2421
+ # Returns a paginated list of storage configs for the identified
2422
+ # instance and resource type.
2423
+ #
2424
+ # @option params [required, String] :instance_id
2425
+ # The identifier of the Amazon Connect instance.
2426
+ #
2427
+ # @option params [required, String] :resource_type
2428
+ # A valid resource type.
2429
+ #
2430
+ # @option params [String] :next_token
2431
+ # The token for the next set of results. Use the value returned in the
2432
+ # previous response in the next request to retrieve the next set of
2433
+ # results.
2434
+ #
2435
+ # @option params [Integer] :max_results
2436
+ # The maximimum number of results to return per page.
2437
+ #
2438
+ # @return [Types::ListInstanceStorageConfigsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2439
+ #
2440
+ # * {Types::ListInstanceStorageConfigsResponse#storage_configs #storage_configs} => Array&lt;Types::InstanceStorageConfig&gt;
2441
+ # * {Types::ListInstanceStorageConfigsResponse#next_token #next_token} => String
2442
+ #
2443
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2444
+ #
2445
+ # @example Request syntax with placeholder values
2446
+ #
2447
+ # resp = client.list_instance_storage_configs({
2448
+ # instance_id: "InstanceId", # required
2449
+ # resource_type: "CHAT_TRANSCRIPTS", # required, accepts CHAT_TRANSCRIPTS, CALL_RECORDINGS, SCHEDULED_REPORTS, MEDIA_STREAMS, CONTACT_TRACE_RECORDS, AGENT_EVENTS
2450
+ # next_token: "NextToken",
2451
+ # max_results: 1,
2452
+ # })
2453
+ #
2454
+ # @example Response structure
2455
+ #
2456
+ # resp.storage_configs #=> Array
2457
+ # resp.storage_configs[0].association_id #=> String
2458
+ # resp.storage_configs[0].storage_type #=> String, one of "S3", "KINESIS_VIDEO_STREAM", "KINESIS_STREAM", "KINESIS_FIREHOSE"
2459
+ # resp.storage_configs[0].s3_config.bucket_name #=> String
2460
+ # resp.storage_configs[0].s3_config.bucket_prefix #=> String
2461
+ # resp.storage_configs[0].s3_config.encryption_config.encryption_type #=> String, one of "KMS"
2462
+ # resp.storage_configs[0].s3_config.encryption_config.key_id #=> String
2463
+ # resp.storage_configs[0].kinesis_video_stream_config.prefix #=> String
2464
+ # resp.storage_configs[0].kinesis_video_stream_config.retention_period_hours #=> Integer
2465
+ # resp.storage_configs[0].kinesis_video_stream_config.encryption_config.encryption_type #=> String, one of "KMS"
2466
+ # resp.storage_configs[0].kinesis_video_stream_config.encryption_config.key_id #=> String
2467
+ # resp.storage_configs[0].kinesis_stream_config.stream_arn #=> String
2468
+ # resp.storage_configs[0].kinesis_firehose_config.firehose_arn #=> String
2469
+ # resp.next_token #=> String
2470
+ #
2471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListInstanceStorageConfigs AWS API Documentation
2472
+ #
2473
+ # @overload list_instance_storage_configs(params = {})
2474
+ # @param [Hash] params ({})
2475
+ def list_instance_storage_configs(params = {}, options = {})
2476
+ req = build_request(:list_instance_storage_configs, params)
2477
+ req.send_request(options)
2478
+ end
2479
+
2480
+ # This API is in preview release for Amazon Connect and is subject to
2481
+ # change.
2482
+ #
2483
+ # Return a list of instances which are in active state,
2484
+ # creation-in-progress state, and failed state. Instances that aren't
2485
+ # successfully created (they are in a failed state) are returned only
2486
+ # for 24 hours after the CreateInstance API was invoked.
2487
+ #
2488
+ # @option params [String] :next_token
2489
+ # The token for the next set of results. Use the value returned in the
2490
+ # previous response in the next request to retrieve the next set of
2491
+ # results.
2492
+ #
2493
+ # @option params [Integer] :max_results
2494
+ # The maximimum number of results to return per page.
2495
+ #
2496
+ # @return [Types::ListInstancesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2497
+ #
2498
+ # * {Types::ListInstancesResponse#instance_summary_list #instance_summary_list} => Array&lt;Types::InstanceSummary&gt;
2499
+ # * {Types::ListInstancesResponse#next_token #next_token} => String
2500
+ #
2501
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2502
+ #
2503
+ # @example Request syntax with placeholder values
2504
+ #
2505
+ # resp = client.list_instances({
2506
+ # next_token: "NextToken",
2507
+ # max_results: 1,
2508
+ # })
2509
+ #
2510
+ # @example Response structure
2511
+ #
2512
+ # resp.instance_summary_list #=> Array
2513
+ # resp.instance_summary_list[0].id #=> String
2514
+ # resp.instance_summary_list[0].arn #=> String
2515
+ # resp.instance_summary_list[0].identity_management_type #=> String, one of "SAML", "CONNECT_MANAGED", "EXISTING_DIRECTORY"
2516
+ # resp.instance_summary_list[0].instance_alias #=> String
2517
+ # resp.instance_summary_list[0].created_time #=> Time
2518
+ # resp.instance_summary_list[0].service_role #=> String
2519
+ # resp.instance_summary_list[0].instance_status #=> String, one of "CREATION_IN_PROGRESS", "ACTIVE", "CREATION_FAILED"
2520
+ # resp.instance_summary_list[0].inbound_calls_enabled #=> Boolean
2521
+ # resp.instance_summary_list[0].outbound_calls_enabled #=> Boolean
2522
+ # resp.next_token #=> String
2523
+ #
2524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListInstances AWS API Documentation
2525
+ #
2526
+ # @overload list_instances(params = {})
2527
+ # @param [Hash] params ({})
2528
+ def list_instances(params = {}, options = {})
2529
+ req = build_request(:list_instances, params)
2530
+ req.send_request(options)
2531
+ end
2532
+
2533
+ # This API is in preview release for Amazon Connect and is subject to
2534
+ # change.
2535
+ #
2536
+ # Provides summary information about the AppIntegration associations for
2537
+ # the specified Amazon Connect instance.
2538
+ #
2539
+ # @option params [required, String] :instance_id
2540
+ # The identifier of the Amazon Connect instance.
2541
+ #
2542
+ # @option params [String] :next_token
2543
+ # The token for the next set of results. Use the value returned in the
2544
+ # previous response in the next request to retrieve the next set of
2545
+ # results.
2546
+ #
2547
+ # @option params [Integer] :max_results
2548
+ # The maximimum number of results to return per page.
2549
+ #
2550
+ # @return [Types::ListIntegrationAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2551
+ #
2552
+ # * {Types::ListIntegrationAssociationsResponse#integration_association_summary_list #integration_association_summary_list} => Array&lt;Types::IntegrationAssociationSummary&gt;
2553
+ # * {Types::ListIntegrationAssociationsResponse#next_token #next_token} => String
2554
+ #
2555
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2556
+ #
2557
+ # @example Request syntax with placeholder values
2558
+ #
2559
+ # resp = client.list_integration_associations({
2560
+ # instance_id: "InstanceId", # required
2561
+ # next_token: "NextToken",
2562
+ # max_results: 1,
2563
+ # })
2564
+ #
2565
+ # @example Response structure
2566
+ #
2567
+ # resp.integration_association_summary_list #=> Array
2568
+ # resp.integration_association_summary_list[0].integration_association_id #=> String
2569
+ # resp.integration_association_summary_list[0].integration_association_arn #=> String
2570
+ # resp.integration_association_summary_list[0].instance_id #=> String
2571
+ # resp.integration_association_summary_list[0].integration_type #=> String, one of "EVENT"
2572
+ # resp.integration_association_summary_list[0].integration_arn #=> String
2573
+ # resp.integration_association_summary_list[0].source_application_url #=> String
2574
+ # resp.integration_association_summary_list[0].source_application_name #=> String
2575
+ # resp.integration_association_summary_list[0].source_type #=> String, one of "SALESFORCE", "ZENDESK"
2576
+ # resp.next_token #=> String
2577
+ #
2578
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListIntegrationAssociations AWS API Documentation
2579
+ #
2580
+ # @overload list_integration_associations(params = {})
2581
+ # @param [Hash] params ({})
2582
+ def list_integration_associations(params = {}, options = {})
2583
+ req = build_request(:list_integration_associations, params)
2584
+ req.send_request(options)
2585
+ end
2586
+
2587
+ # Returns a paginated list of all the Lambda functions that show up in
2588
+ # the drop-down options in the relevant contact flow blocks.
2589
+ #
2590
+ # @option params [required, String] :instance_id
2591
+ # The identifier of the Amazon Connect instance.
2592
+ #
2593
+ # @option params [String] :next_token
2594
+ # The token for the next set of results. Use the value returned in the
2595
+ # previous response in the next request to retrieve the next set of
2596
+ # results.
2597
+ #
2598
+ # @option params [Integer] :max_results
2599
+ # The maximimum number of results to return per page.
2600
+ #
2601
+ # @return [Types::ListLambdaFunctionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2602
+ #
2603
+ # * {Types::ListLambdaFunctionsResponse#lambda_functions #lambda_functions} => Array&lt;String&gt;
2604
+ # * {Types::ListLambdaFunctionsResponse#next_token #next_token} => String
2605
+ #
2606
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2607
+ #
2608
+ # @example Request syntax with placeholder values
2609
+ #
2610
+ # resp = client.list_lambda_functions({
2611
+ # instance_id: "InstanceId", # required
2612
+ # next_token: "NextToken",
2613
+ # max_results: 1,
2614
+ # })
2615
+ #
2616
+ # @example Response structure
2617
+ #
2618
+ # resp.lambda_functions #=> Array
2619
+ # resp.lambda_functions[0] #=> String
2620
+ # resp.next_token #=> String
2621
+ #
2622
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListLambdaFunctions AWS API Documentation
1485
2623
  #
1486
- # @overload list_contact_flows(params = {})
2624
+ # @overload list_lambda_functions(params = {})
1487
2625
  # @param [Hash] params ({})
1488
- def list_contact_flows(params = {}, options = {})
1489
- req = build_request(:list_contact_flows, params)
2626
+ def list_lambda_functions(params = {}, options = {})
2627
+ req = build_request(:list_lambda_functions, params)
1490
2628
  req.send_request(options)
1491
2629
  end
1492
2630
 
1493
- # Provides information about the hours of operation for the specified
1494
- # Amazon Connect instance.
1495
- #
1496
- # For more information about hours of operation, see [Set the Hours of
1497
- # Operation for a Queue][1] in the *Amazon Connect Administrator Guide*.
1498
- #
1499
- #
1500
- #
1501
- # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/set-hours-operation.html
2631
+ # Returns a paginated list of all the Amazon Lex bots currently
2632
+ # associated with the instance.
1502
2633
  #
1503
2634
  # @option params [required, String] :instance_id
1504
2635
  # The identifier of the Amazon Connect instance.
@@ -1511,16 +2642,16 @@ module Aws::Connect
1511
2642
  # @option params [Integer] :max_results
1512
2643
  # The maximimum number of results to return per page.
1513
2644
  #
1514
- # @return [Types::ListHoursOfOperationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2645
+ # @return [Types::ListLexBotsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1515
2646
  #
1516
- # * {Types::ListHoursOfOperationsResponse#hours_of_operation_summary_list #hours_of_operation_summary_list} => Array&lt;Types::HoursOfOperationSummary&gt;
1517
- # * {Types::ListHoursOfOperationsResponse#next_token #next_token} => String
2647
+ # * {Types::ListLexBotsResponse#lex_bots #lex_bots} => Array&lt;Types::LexBot&gt;
2648
+ # * {Types::ListLexBotsResponse#next_token #next_token} => String
1518
2649
  #
1519
2650
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1520
2651
  #
1521
2652
  # @example Request syntax with placeholder values
1522
2653
  #
1523
- # resp = client.list_hours_of_operations({
2654
+ # resp = client.list_lex_bots({
1524
2655
  # instance_id: "InstanceId", # required
1525
2656
  # next_token: "NextToken",
1526
2657
  # max_results: 1,
@@ -1528,18 +2659,17 @@ module Aws::Connect
1528
2659
  #
1529
2660
  # @example Response structure
1530
2661
  #
1531
- # resp.hours_of_operation_summary_list #=> Array
1532
- # resp.hours_of_operation_summary_list[0].id #=> String
1533
- # resp.hours_of_operation_summary_list[0].arn #=> String
1534
- # resp.hours_of_operation_summary_list[0].name #=> String
2662
+ # resp.lex_bots #=> Array
2663
+ # resp.lex_bots[0].name #=> String
2664
+ # resp.lex_bots[0].lex_region #=> String
1535
2665
  # resp.next_token #=> String
1536
2666
  #
1537
- # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListHoursOfOperations AWS API Documentation
2667
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListLexBots AWS API Documentation
1538
2668
  #
1539
- # @overload list_hours_of_operations(params = {})
2669
+ # @overload list_lex_bots(params = {})
1540
2670
  # @param [Hash] params ({})
1541
- def list_hours_of_operations(params = {}, options = {})
1542
- req = build_request(:list_hours_of_operations, params)
2671
+ def list_lex_bots(params = {}, options = {})
2672
+ req = build_request(:list_lex_bots, params)
1543
2673
  req.send_request(options)
1544
2674
  end
1545
2675
 
@@ -1752,7 +2882,7 @@ module Aws::Connect
1752
2882
  # resp.routing_profile_queue_config_summary_list[0].queue_name #=> String
1753
2883
  # resp.routing_profile_queue_config_summary_list[0].priority #=> Integer
1754
2884
  # resp.routing_profile_queue_config_summary_list[0].delay #=> Integer
1755
- # resp.routing_profile_queue_config_summary_list[0].channel #=> String, one of "VOICE", "CHAT"
2885
+ # resp.routing_profile_queue_config_summary_list[0].channel #=> String, one of "VOICE", "CHAT", "TASK"
1756
2886
  #
1757
2887
  # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListRoutingProfileQueues AWS API Documentation
1758
2888
  #
@@ -1818,6 +2948,52 @@ module Aws::Connect
1818
2948
  req.send_request(options)
1819
2949
  end
1820
2950
 
2951
+ # Returns a paginated list of all security keys associated with the
2952
+ # instance.
2953
+ #
2954
+ # @option params [required, String] :instance_id
2955
+ # The identifier of the Amazon Connect instance.
2956
+ #
2957
+ # @option params [String] :next_token
2958
+ # The token for the next set of results. Use the value returned in the
2959
+ # previous response in the next request to retrieve the next set of
2960
+ # results.
2961
+ #
2962
+ # @option params [Integer] :max_results
2963
+ # The maximimum number of results to return per page.
2964
+ #
2965
+ # @return [Types::ListSecurityKeysResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2966
+ #
2967
+ # * {Types::ListSecurityKeysResponse#security_keys #security_keys} => Array&lt;Types::SecurityKey&gt;
2968
+ # * {Types::ListSecurityKeysResponse#next_token #next_token} => String
2969
+ #
2970
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2971
+ #
2972
+ # @example Request syntax with placeholder values
2973
+ #
2974
+ # resp = client.list_security_keys({
2975
+ # instance_id: "InstanceId", # required
2976
+ # next_token: "NextToken",
2977
+ # max_results: 1,
2978
+ # })
2979
+ #
2980
+ # @example Response structure
2981
+ #
2982
+ # resp.security_keys #=> Array
2983
+ # resp.security_keys[0].association_id #=> String
2984
+ # resp.security_keys[0].key #=> String
2985
+ # resp.security_keys[0].creation_time #=> Time
2986
+ # resp.next_token #=> String
2987
+ #
2988
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListSecurityKeys AWS API Documentation
2989
+ #
2990
+ # @overload list_security_keys(params = {})
2991
+ # @param [Hash] params ({})
2992
+ def list_security_keys(params = {}, options = {})
2993
+ req = build_request(:list_security_keys, params)
2994
+ req.send_request(options)
2995
+ end
2996
+
1821
2997
  # Provides summary information about the security profiles for the
1822
2998
  # specified Amazon Connect instance.
1823
2999
  #
@@ -1907,6 +3083,58 @@ module Aws::Connect
1907
3083
  req.send_request(options)
1908
3084
  end
1909
3085
 
3086
+ # This API is in preview release for Amazon Connect and is subject to
3087
+ # change.
3088
+ #
3089
+ # List the use cases.
3090
+ #
3091
+ # @option params [required, String] :instance_id
3092
+ # The identifier of the Amazon Connect instance.
3093
+ #
3094
+ # @option params [required, String] :integration_association_id
3095
+ # The identifier for the integration association.
3096
+ #
3097
+ # @option params [String] :next_token
3098
+ # The token for the next set of results. Use the value returned in the
3099
+ # previous response in the next request to retrieve the next set of
3100
+ # results.
3101
+ #
3102
+ # @option params [Integer] :max_results
3103
+ # The maximimum number of results to return per page.
3104
+ #
3105
+ # @return [Types::ListUseCasesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3106
+ #
3107
+ # * {Types::ListUseCasesResponse#use_case_summary_list #use_case_summary_list} => Array&lt;Types::UseCase&gt;
3108
+ # * {Types::ListUseCasesResponse#next_token #next_token} => String
3109
+ #
3110
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3111
+ #
3112
+ # @example Request syntax with placeholder values
3113
+ #
3114
+ # resp = client.list_use_cases({
3115
+ # instance_id: "InstanceId", # required
3116
+ # integration_association_id: "IntegrationAssociationId", # required
3117
+ # next_token: "NextToken",
3118
+ # max_results: 1,
3119
+ # })
3120
+ #
3121
+ # @example Response structure
3122
+ #
3123
+ # resp.use_case_summary_list #=> Array
3124
+ # resp.use_case_summary_list[0].use_case_id #=> String
3125
+ # resp.use_case_summary_list[0].use_case_arn #=> String
3126
+ # resp.use_case_summary_list[0].use_case_type #=> String, one of "RULES_EVALUATION"
3127
+ # resp.next_token #=> String
3128
+ #
3129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListUseCases AWS API Documentation
3130
+ #
3131
+ # @overload list_use_cases(params = {})
3132
+ # @param [Hash] params ({})
3133
+ def list_use_cases(params = {}, options = {})
3134
+ req = build_request(:list_use_cases, params)
3135
+ req.send_request(options)
3136
+ end
3137
+
1910
3138
  # Provides summary information about the hierarchy groups for the
1911
3139
  # specified Amazon Connect instance.
1912
3140
  #
@@ -2293,6 +3521,89 @@ module Aws::Connect
2293
3521
  req.send_request(options)
2294
3522
  end
2295
3523
 
3524
+ # Initiates a contact flow to start a new task.
3525
+ #
3526
+ # @option params [required, String] :instance_id
3527
+ # The identifier of the Amazon Connect instance.
3528
+ #
3529
+ # @option params [String] :previous_contact_id
3530
+ # The identifier of the previous chat, voice, or task contact.
3531
+ #
3532
+ # @option params [required, String] :contact_flow_id
3533
+ # The identifier of the contact flow for initiating the tasks. To see
3534
+ # the ContactFlowId in the Amazon Connect console user interface, on the
3535
+ # navigation menu go to **Routing**, **Contact Flows**. Choose the
3536
+ # contact flow. On the contact flow page, under the name of the contact
3537
+ # flow, choose **Show additional flow information**. The ContactFlowId
3538
+ # is the last part of the ARN, shown here in bold:
3539
+ #
3540
+ # arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/**846ec553-a005-41c0-8341-xxxxxxxxxxxx**
3541
+ #
3542
+ # @option params [Hash<String,String>] :attributes
3543
+ # A custom key-value pair using an attribute map. The attributes are
3544
+ # standard Amazon Connect attributes, and can be accessed in contact
3545
+ # flows just like any other contact attributes.
3546
+ #
3547
+ # There can be up to 32,768 UTF-8 bytes across all key-value pairs per
3548
+ # contact. Attribute keys can include only alphanumeric, dash, and
3549
+ # underscore characters.
3550
+ #
3551
+ # @option params [required, String] :name
3552
+ # The name of a task that is shown to an agent in the Contact Control
3553
+ # Panel (CCP).
3554
+ #
3555
+ # @option params [Hash<String,Types::Reference>] :references
3556
+ # A formatted URL that is shown to an agent in the Contact Control Panel
3557
+ # (CCP).
3558
+ #
3559
+ # @option params [String] :description
3560
+ # A description of the task that is shown to an agent in the Contact
3561
+ # Control Panel (CCP).
3562
+ #
3563
+ # @option params [String] :client_token
3564
+ # A unique, case-sensitive identifier that you provide to ensure the
3565
+ # idempotency of the request.
3566
+ #
3567
+ # **A suitable default value is auto-generated.** You should normally
3568
+ # not need to pass this option.**
3569
+ #
3570
+ # @return [Types::StartTaskContactResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3571
+ #
3572
+ # * {Types::StartTaskContactResponse#contact_id #contact_id} => String
3573
+ #
3574
+ # @example Request syntax with placeholder values
3575
+ #
3576
+ # resp = client.start_task_contact({
3577
+ # instance_id: "InstanceId", # required
3578
+ # previous_contact_id: "ContactId",
3579
+ # contact_flow_id: "ContactFlowId", # required
3580
+ # attributes: {
3581
+ # "AttributeName" => "AttributeValue",
3582
+ # },
3583
+ # name: "Name", # required
3584
+ # references: {
3585
+ # "ReferenceKey" => {
3586
+ # value: "ReferenceValue", # required
3587
+ # type: "URL", # required, accepts URL
3588
+ # },
3589
+ # },
3590
+ # description: "Description",
3591
+ # client_token: "ClientToken",
3592
+ # })
3593
+ #
3594
+ # @example Response structure
3595
+ #
3596
+ # resp.contact_id #=> String
3597
+ #
3598
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StartTaskContact AWS API Documentation
3599
+ #
3600
+ # @overload start_task_contact(params = {})
3601
+ # @param [Hash] params ({})
3602
+ def start_task_contact(params = {}, options = {})
3603
+ req = build_request(:start_task_contact, params)
3604
+ req.send_request(options)
3605
+ end
3606
+
2296
3607
  # Ends the specified contact.
2297
3608
  #
2298
3609
  # @option params [required, String] :contact_id
@@ -2399,7 +3710,8 @@ module Aws::Connect
2399
3710
 
2400
3711
  # Adds the specified tags to the specified resource.
2401
3712
  #
2402
- # The supported resource type is users.
3713
+ # The supported resource types are users, routing profiles, and contact
3714
+ # flows.
2403
3715
  #
2404
3716
  # For sample policies that use tags, see [Amazon Connect Identity-Based
2405
3717
  # Policy Examples][1] in the *Amazon Connect Administrator Guide*.
@@ -2523,6 +3835,13 @@ module Aws::Connect
2523
3835
 
2524
3836
  # Updates the specified contact flow.
2525
3837
  #
3838
+ # You can also create and update contact flows using the [Amazon Connect
3839
+ # Flow language][1].
3840
+ #
3841
+ #
3842
+ #
3843
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html
3844
+ #
2526
3845
  # @option params [required, String] :instance_id
2527
3846
  # The identifier of the Amazon Connect instance.
2528
3847
  #
@@ -2530,7 +3849,13 @@ module Aws::Connect
2530
3849
  # The identifier of the contact flow.
2531
3850
  #
2532
3851
  # @option params [required, String] :content
2533
- # The content of the contact flow.
3852
+ # The JSON string that represents contact flow’s content. For an
3853
+ # example, see [Example contact flow in Amazon Connect Flow language][1]
3854
+ # in the *Amazon Connect Administrator Guide*.
3855
+ #
3856
+ #
3857
+ #
3858
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/flow-language-example.html
2534
3859
  #
2535
3860
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2536
3861
  #
@@ -2553,6 +3878,13 @@ module Aws::Connect
2553
3878
 
2554
3879
  # The name of the contact flow.
2555
3880
  #
3881
+ # You can also create and update contact flows using the [Amazon Connect
3882
+ # Flow language][1].
3883
+ #
3884
+ #
3885
+ #
3886
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html
3887
+ #
2556
3888
  # @option params [required, String] :instance_id
2557
3889
  # The identifier of the Amazon Connect instance.
2558
3890
  #
@@ -2585,6 +3917,103 @@ module Aws::Connect
2585
3917
  req.send_request(options)
2586
3918
  end
2587
3919
 
3920
+ # This API is in preview release for Amazon Connect and is subject to
3921
+ # change.
3922
+ #
3923
+ # Updates the value for the specified attribute type.
3924
+ #
3925
+ # @option params [required, String] :instance_id
3926
+ # The identifier of the Amazon Connect instance.
3927
+ #
3928
+ # @option params [required, String] :attribute_type
3929
+ # The type of attribute.
3930
+ #
3931
+ # @option params [required, String] :value
3932
+ # The value for the attribute. Maximum character limit is 100.
3933
+ #
3934
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3935
+ #
3936
+ # @example Request syntax with placeholder values
3937
+ #
3938
+ # resp = client.update_instance_attribute({
3939
+ # instance_id: "InstanceId", # required
3940
+ # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA
3941
+ # value: "InstanceAttributeValue", # required
3942
+ # })
3943
+ #
3944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateInstanceAttribute AWS API Documentation
3945
+ #
3946
+ # @overload update_instance_attribute(params = {})
3947
+ # @param [Hash] params ({})
3948
+ def update_instance_attribute(params = {}, options = {})
3949
+ req = build_request(:update_instance_attribute, params)
3950
+ req.send_request(options)
3951
+ end
3952
+
3953
+ # This API is in preview release for Amazon Connect and is subject to
3954
+ # change.
3955
+ #
3956
+ # Updates an existing configuration for a resource type. This API is
3957
+ # idempotent.
3958
+ #
3959
+ # @option params [required, String] :instance_id
3960
+ # The identifier of the Amazon Connect instance.
3961
+ #
3962
+ # @option params [required, String] :association_id
3963
+ # The existing association identifier that uniquely identifies the
3964
+ # resource type and storage config for the given instance ID.
3965
+ #
3966
+ # @option params [required, String] :resource_type
3967
+ # A valid resource type.
3968
+ #
3969
+ # @option params [required, Types::InstanceStorageConfig] :storage_config
3970
+ # The storage configuration for the instance.
3971
+ #
3972
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3973
+ #
3974
+ # @example Request syntax with placeholder values
3975
+ #
3976
+ # resp = client.update_instance_storage_config({
3977
+ # instance_id: "InstanceId", # required
3978
+ # association_id: "AssociationId", # required
3979
+ # resource_type: "CHAT_TRANSCRIPTS", # required, accepts CHAT_TRANSCRIPTS, CALL_RECORDINGS, SCHEDULED_REPORTS, MEDIA_STREAMS, CONTACT_TRACE_RECORDS, AGENT_EVENTS
3980
+ # storage_config: { # required
3981
+ # association_id: "AssociationId",
3982
+ # storage_type: "S3", # required, accepts S3, KINESIS_VIDEO_STREAM, KINESIS_STREAM, KINESIS_FIREHOSE
3983
+ # s3_config: {
3984
+ # bucket_name: "BucketName", # required
3985
+ # bucket_prefix: "Prefix", # required
3986
+ # encryption_config: {
3987
+ # encryption_type: "KMS", # required, accepts KMS
3988
+ # key_id: "KeyId", # required
3989
+ # },
3990
+ # },
3991
+ # kinesis_video_stream_config: {
3992
+ # prefix: "Prefix", # required
3993
+ # retention_period_hours: 1, # required
3994
+ # encryption_config: { # required
3995
+ # encryption_type: "KMS", # required, accepts KMS
3996
+ # key_id: "KeyId", # required
3997
+ # },
3998
+ # },
3999
+ # kinesis_stream_config: {
4000
+ # stream_arn: "ARN", # required
4001
+ # },
4002
+ # kinesis_firehose_config: {
4003
+ # firehose_arn: "ARN", # required
4004
+ # },
4005
+ # },
4006
+ # })
4007
+ #
4008
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateInstanceStorageConfig AWS API Documentation
4009
+ #
4010
+ # @overload update_instance_storage_config(params = {})
4011
+ # @param [Hash] params ({})
4012
+ def update_instance_storage_config(params = {}, options = {})
4013
+ req = build_request(:update_instance_storage_config, params)
4014
+ req.send_request(options)
4015
+ end
4016
+
2588
4017
  # Updates the channels that agents can handle in the Contact Control
2589
4018
  # Panel (CCP) for a routing profile.
2590
4019
  #
@@ -2606,7 +4035,7 @@ module Aws::Connect
2606
4035
  # routing_profile_id: "RoutingProfileId", # required
2607
4036
  # media_concurrencies: [ # required
2608
4037
  # {
2609
- # channel: "VOICE", # required, accepts VOICE, CHAT
4038
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
2610
4039
  # concurrency: 1, # required
2611
4040
  # },
2612
4041
  # ],
@@ -2698,7 +4127,9 @@ module Aws::Connect
2698
4127
  # The identifier of the routing profile.
2699
4128
  #
2700
4129
  # @option params [required, Array<Types::RoutingProfileQueueConfig>] :queue_configs
2701
- # The queues to be updated for this routing profile.
4130
+ # The queues to be updated for this routing profile. Queues must first
4131
+ # be associated to the routing profile. You can do this using
4132
+ # AssociateRoutingProfileQueues.
2702
4133
  #
2703
4134
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2704
4135
  #
@@ -2711,7 +4142,7 @@ module Aws::Connect
2711
4142
  # {
2712
4143
  # queue_reference: { # required
2713
4144
  # queue_id: "QueueId", # required
2714
- # channel: "VOICE", # required, accepts VOICE, CHAT
4145
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
2715
4146
  # },
2716
4147
  # priority: 1, # required
2717
4148
  # delay: 1, # required
@@ -2758,6 +4189,79 @@ module Aws::Connect
2758
4189
  req.send_request(options)
2759
4190
  end
2760
4191
 
4192
+ # Updates the name of the user hierarchy group.
4193
+ #
4194
+ # @option params [required, String] :name
4195
+ # The name of the hierarchy group. Must not be more than 100 characters.
4196
+ #
4197
+ # @option params [required, String] :hierarchy_group_id
4198
+ # The identifier of the hierarchy group.
4199
+ #
4200
+ # @option params [required, String] :instance_id
4201
+ # The identifier of the Amazon Connect instance.
4202
+ #
4203
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4204
+ #
4205
+ # @example Request syntax with placeholder values
4206
+ #
4207
+ # resp = client.update_user_hierarchy_group_name({
4208
+ # name: "HierarchyGroupName", # required
4209
+ # hierarchy_group_id: "HierarchyGroupId", # required
4210
+ # instance_id: "InstanceId", # required
4211
+ # })
4212
+ #
4213
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateUserHierarchyGroupName AWS API Documentation
4214
+ #
4215
+ # @overload update_user_hierarchy_group_name(params = {})
4216
+ # @param [Hash] params ({})
4217
+ def update_user_hierarchy_group_name(params = {}, options = {})
4218
+ req = build_request(:update_user_hierarchy_group_name, params)
4219
+ req.send_request(options)
4220
+ end
4221
+
4222
+ # Updates the user hierarchy structure: add, remove, and rename user
4223
+ # hierarchy levels.
4224
+ #
4225
+ # @option params [required, Types::HierarchyStructureUpdate] :hierarchy_structure
4226
+ # The hierarchy levels to update.
4227
+ #
4228
+ # @option params [required, String] :instance_id
4229
+ # The identifier of the Amazon Connect instance.
4230
+ #
4231
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4232
+ #
4233
+ # @example Request syntax with placeholder values
4234
+ #
4235
+ # resp = client.update_user_hierarchy_structure({
4236
+ # hierarchy_structure: { # required
4237
+ # level_one: {
4238
+ # name: "HierarchyLevelName", # required
4239
+ # },
4240
+ # level_two: {
4241
+ # name: "HierarchyLevelName", # required
4242
+ # },
4243
+ # level_three: {
4244
+ # name: "HierarchyLevelName", # required
4245
+ # },
4246
+ # level_four: {
4247
+ # name: "HierarchyLevelName", # required
4248
+ # },
4249
+ # level_five: {
4250
+ # name: "HierarchyLevelName", # required
4251
+ # },
4252
+ # },
4253
+ # instance_id: "InstanceId", # required
4254
+ # })
4255
+ #
4256
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateUserHierarchyStructure AWS API Documentation
4257
+ #
4258
+ # @overload update_user_hierarchy_structure(params = {})
4259
+ # @param [Hash] params ({})
4260
+ def update_user_hierarchy_structure(params = {}, options = {})
4261
+ req = build_request(:update_user_hierarchy_structure, params)
4262
+ req.send_request(options)
4263
+ end
4264
+
2761
4265
  # Updates the identity information for the specified user.
2762
4266
  #
2763
4267
  # Someone with the ability to invoke `UpdateUserIndentityInfo` can
@@ -2913,7 +4417,7 @@ module Aws::Connect
2913
4417
  params: params,
2914
4418
  config: config)
2915
4419
  context[:gem_name] = 'aws-sdk-connect'
2916
- context[:gem_version] = '1.32.0'
4420
+ context[:gem_version] = '1.37.0'
2917
4421
  Seahorse::Client::Request.new(handlers, context)
2918
4422
  end
2919
4423