aws-sdk-kendra 1.25.0 → 1.30.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c24dd5b0c9a0dfa5191e12c22817095559fe1a55fe11686928bf467a6381fbb6
4
- data.tar.gz: 508006e9c8c7e694b2df5ce300bcd1aae37007991db321cea131a6c3fffcb2de
3
+ metadata.gz: 0ebe1496353f4d08d15ade8d9c2dfee74b9766285ce574ecec5c4042c05f13bd
4
+ data.tar.gz: 6455f17819e188b6767cb354b9dae504a933f77db5b528a0341ea2e64184adea
5
5
  SHA512:
6
- metadata.gz: 2e608a2fc83b64fe26924fe29e0a9d8b96ee651ff9d8d5ed98e9e0151e980f669b819e7ebb3b09aa142f679ca541014c58342e7ede4fe90a8c37f4107c2304a6
7
- data.tar.gz: 532b41df9199cd337fec526cff3bde4a8b6aca52bd9962ed4218d3532415779b8f356ae6b487240eaaae83eddbe16c75641cffb9648d7a38a2af109a3f19992e
6
+ metadata.gz: 7256531ac5a6b58d2cc16301377a6583f0f44fc77672a15f9e58d66adc044a3bb828d19735064a46a5a3754279e776e0d6cb15f96251dd39f0bc20b95a975b72
7
+ data.tar.gz: ed4f321f7b7590a0fbb3a255ce759801ceed9fc87c588be3632e18567cdf7bb15437ab8a213b7f3545453a971111cee031c4801312aa46c69ef50992357c4daa
data/CHANGELOG.md CHANGED
@@ -1,6 +1,31 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.30.0 (2021-07-12)
5
+ ------------------
6
+
7
+ * Feature - Amazon Kendra now supports Principal Store
8
+
9
+ 1.29.0 (2021-06-30)
10
+ ------------------
11
+
12
+ * Feature - Amazon Kendra Enterprise Edition now offered in smaller more granular units to enable customers with smaller workloads. Virtual Storage Capacity units now offer scaling in increments of 100,000 documents (up to 30GB) per unit and Virtual Query Units offer scaling increments of 8,000 queries per day.
13
+
14
+ 1.28.0 (2021-06-24)
15
+ ------------------
16
+
17
+ * Feature - Amazon Kendra now supports SharePoint 2013 and SharePoint 2016 when using a SharePoint data source.
18
+
19
+ 1.27.0 (2021-06-17)
20
+ ------------------
21
+
22
+ * Feature - Amazon Kendra now supports the indexing of web documents for search through the web crawler.
23
+
24
+ 1.26.0 (2021-06-09)
25
+ ------------------
26
+
27
+ * Feature - AWS Kendra now supports checking document status.
28
+
4
29
  1.25.0 (2021-05-27)
5
30
  ------------------
6
31
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.25.0
1
+ 1.30.0
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-kendra/customizations'
48
48
  # @!group service
49
49
  module Aws::Kendra
50
50
 
51
- GEM_VERSION = '1.25.0'
51
+ GEM_VERSION = '1.30.0'
52
52
 
53
53
  end
@@ -341,8 +341,9 @@ module Aws::Kendra
341
341
  # been added with the `BatchPutDocument` operation.
342
342
  #
343
343
  # The documents are deleted asynchronously. You can see the progress of
344
- # the deletion by using AWS CloudWatch. Any error messages related to
345
- # the processing of the batch are sent to you CloudWatch log.
344
+ # the deletion by using Amazon Web Services CloudWatch. Any error
345
+ # messages related to the processing of the batch are sent to you
346
+ # CloudWatch log.
346
347
  #
347
348
  # @option params [required, String] :index_id
348
349
  # The identifier of the index that contains the documents to delete.
@@ -384,6 +385,85 @@ module Aws::Kendra
384
385
  req.send_request(options)
385
386
  end
386
387
 
388
+ # Returns the indexing status for one or more documents submitted with
389
+ # the [ BatchPutDocument][1] operation.
390
+ #
391
+ # When you use the `BatchPutDocument` operation, documents are indexed
392
+ # asynchronously. You can use the `BatchGetDocumentStatus` operation to
393
+ # get the current status of a list of documents so that you can
394
+ # determine if they have been successfully indexed.
395
+ #
396
+ # You can also use the `BatchGetDocumentStatus` operation to check the
397
+ # status of the [ BatchDeleteDocument][2] operation. When a document is
398
+ # deleted from the index, Amazon Kendra returns `NOT_FOUND` as the
399
+ # status.
400
+ #
401
+ #
402
+ #
403
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_BatchPutDocument.html
404
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/API_BatchDeleteDocument.html
405
+ #
406
+ # @option params [required, String] :index_id
407
+ # The identifier of the index to add documents to. The index ID is
408
+ # returned by the [ CreateIndex ][1] operation.
409
+ #
410
+ #
411
+ #
412
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_CreateIndex.html
413
+ #
414
+ # @option params [required, Array<Types::DocumentInfo>] :document_info_list
415
+ # A list of `DocumentInfo` objects that identify the documents for which
416
+ # to get the status. You identify the documents by their document ID and
417
+ # optional attributes.
418
+ #
419
+ # @return [Types::BatchGetDocumentStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
420
+ #
421
+ # * {Types::BatchGetDocumentStatusResponse#errors #errors} => Array&lt;Types::BatchGetDocumentStatusResponseError&gt;
422
+ # * {Types::BatchGetDocumentStatusResponse#document_status_list #document_status_list} => Array&lt;Types::Status&gt;
423
+ #
424
+ # @example Request syntax with placeholder values
425
+ #
426
+ # resp = client.batch_get_document_status({
427
+ # index_id: "IndexId", # required
428
+ # document_info_list: [ # required
429
+ # {
430
+ # document_id: "DocumentId", # required
431
+ # attributes: [
432
+ # {
433
+ # key: "DocumentAttributeKey", # required
434
+ # value: { # required
435
+ # string_value: "DocumentAttributeStringValue",
436
+ # string_list_value: ["String"],
437
+ # long_value: 1,
438
+ # date_value: Time.now,
439
+ # },
440
+ # },
441
+ # ],
442
+ # },
443
+ # ],
444
+ # })
445
+ #
446
+ # @example Response structure
447
+ #
448
+ # resp.errors #=> Array
449
+ # resp.errors[0].document_id #=> String
450
+ # resp.errors[0].error_code #=> String, one of "InternalError", "InvalidRequest"
451
+ # resp.errors[0].error_message #=> String
452
+ # resp.document_status_list #=> Array
453
+ # resp.document_status_list[0].document_id #=> String
454
+ # resp.document_status_list[0].document_status #=> String, one of "NOT_FOUND", "PROCESSING", "INDEXED", "UPDATED", "FAILED", "UPDATE_FAILED"
455
+ # resp.document_status_list[0].failure_code #=> String
456
+ # resp.document_status_list[0].failure_reason #=> String
457
+ #
458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/BatchGetDocumentStatus AWS API Documentation
459
+ #
460
+ # @overload batch_get_document_status(params = {})
461
+ # @param [Hash] params ({})
462
+ def batch_get_document_status(params = {}, options = {})
463
+ req = build_request(:batch_get_document_status, params)
464
+ req.send_request(options)
465
+ end
466
+
387
467
  # Adds one or more documents to an index.
388
468
  #
389
469
  # The `BatchPutDocument` operation enables you to ingest inline
@@ -393,8 +473,9 @@ module Aws::Kendra
393
473
  # control list to the documents added to the index.
394
474
  #
395
475
  # The documents are indexed asynchronously. You can see the progress of
396
- # the batch using AWS CloudWatch. Any error messages related to
397
- # processing the batch are sent to your AWS CloudWatch log.
476
+ # the batch using Amazon Web Services CloudWatch. Any error messages
477
+ # related to processing the batch are sent to your Amazon Web Services
478
+ # CloudWatch log.
398
479
  #
399
480
  # @option params [required, String] :index_id
400
481
  # The identifier of the index to add the documents to. You need to
@@ -467,6 +548,19 @@ module Aws::Kendra
467
548
  # name: "PrincipalName", # required
468
549
  # type: "USER", # required, accepts USER, GROUP
469
550
  # access: "ALLOW", # required, accepts ALLOW, DENY
551
+ # data_source_id: "DataSourceId",
552
+ # },
553
+ # ],
554
+ # hierarchical_access_control_list: [
555
+ # {
556
+ # principal_list: [ # required
557
+ # {
558
+ # name: "PrincipalName", # required
559
+ # type: "USER", # required, accepts USER, GROUP
560
+ # access: "ALLOW", # required, accepts ALLOW, DENY
561
+ # data_source_id: "DataSourceId",
562
+ # },
563
+ # ],
470
564
  # },
471
565
  # ],
472
566
  # content_type: "PDF", # accepts PDF, HTML, MS_WORD, PLAIN_TEXT, PPT
@@ -600,7 +694,7 @@ module Aws::Kendra
600
694
  # resp = client.create_data_source({
601
695
  # name: "DataSourceName", # required
602
696
  # index_id: "IndexId", # required
603
- # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW, CUSTOM, CONFLUENCE, GOOGLEDRIVE
697
+ # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW, CUSTOM, CONFLUENCE, GOOGLEDRIVE, WEBCRAWLER
604
698
  # configuration: {
605
699
  # s3_configuration: {
606
700
  # bucket_name: "S3BucketName", # required
@@ -615,7 +709,7 @@ module Aws::Kendra
615
709
  # },
616
710
  # },
617
711
  # share_point_configuration: {
618
- # share_point_version: "SHAREPOINT_ONLINE", # required, accepts SHAREPOINT_ONLINE
712
+ # share_point_version: "SHAREPOINT_2013", # required, accepts SHAREPOINT_2013, SHAREPOINT_2016, SHAREPOINT_ONLINE
619
713
  # urls: ["Url"], # required
620
714
  # secret_arn: "SecretArn", # required
621
715
  # crawl_attachments: false,
@@ -635,6 +729,10 @@ module Aws::Kendra
635
729
  # ],
636
730
  # document_title_field_name: "DataSourceFieldName",
637
731
  # disable_local_groups: false,
732
+ # ssl_certificate_s3_path: {
733
+ # bucket: "S3BucketName", # required
734
+ # key: "S3ObjectKey", # required
735
+ # },
638
736
  # },
639
737
  # database_configuration: {
640
738
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -863,6 +961,37 @@ module Aws::Kendra
863
961
  # exclude_user_accounts: ["UserAccount"],
864
962
  # exclude_shared_drives: ["SharedDriveId"],
865
963
  # },
964
+ # web_crawler_configuration: {
965
+ # urls: { # required
966
+ # seed_url_configuration: {
967
+ # seed_urls: ["SeedUrl"], # required
968
+ # web_crawler_mode: "HOST_ONLY", # accepts HOST_ONLY, SUBDOMAINS, EVERYTHING
969
+ # },
970
+ # site_maps_configuration: {
971
+ # site_maps: ["SiteMap"], # required
972
+ # },
973
+ # },
974
+ # crawl_depth: 1,
975
+ # max_links_per_page: 1,
976
+ # max_content_size_per_page_in_mega_bytes: 1.0,
977
+ # max_urls_per_minute_crawl_rate: 1,
978
+ # url_inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
979
+ # url_exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
980
+ # proxy_configuration: {
981
+ # host: "Host", # required
982
+ # port: 1, # required
983
+ # credentials: "SecretArn",
984
+ # },
985
+ # authentication_configuration: {
986
+ # basic_authentication: [
987
+ # {
988
+ # host: "Host", # required
989
+ # port: 1, # required
990
+ # credentials: "SecretArn", # required
991
+ # },
992
+ # ],
993
+ # },
994
+ # },
866
995
  # },
867
996
  # description: "Description",
868
997
  # schedule: "ScanSchedule",
@@ -1001,14 +1130,14 @@ module Aws::Kendra
1001
1130
  # default is `ENTERPRISE_EDITION`.
1002
1131
  #
1003
1132
  # @option params [required, String] :role_arn
1004
- # An AWS Identity and Access Management (IAM) role that gives Amazon
1005
- # Kendra permissions to access your Amazon CloudWatch logs and metrics.
1006
- # This is also the role used when you use the `BatchPutDocument`
1007
- # operation to index documents from an Amazon S3 bucket.
1133
+ # An Identity and Access Management(IAM) role that gives Amazon Kendra
1134
+ # permissions to access your Amazon CloudWatch logs and metrics. This is
1135
+ # also the role used when you use the `BatchPutDocument` operation to
1136
+ # index documents from an Amazon S3 bucket.
1008
1137
  #
1009
1138
  # @option params [Types::ServerSideEncryptionConfiguration] :server_side_encryption_configuration
1010
- # The identifier of the AWS KMS customer managed key (CMK) to use to
1011
- # encrypt data indexed by Amazon Kendra. Amazon Kendra doesn't support
1139
+ # The identifier of the KMScustomer managed key (CMK) to use to encrypt
1140
+ # data indexed by Amazon Kendra. Amazon Kendra doesn't support
1012
1141
  # asymmetric CMKs.
1013
1142
  #
1014
1143
  # @option params [String] :description
@@ -1355,6 +1484,78 @@ module Aws::Kendra
1355
1484
  req.send_request(options)
1356
1485
  end
1357
1486
 
1487
+ # Deletes a group so that all users and sub groups that belong to the
1488
+ # group can no longer access documents only available to that group.
1489
+ #
1490
+ # For example, after deleting the group "Summer Interns", all interns
1491
+ # who belonged to that group no longer see intern-only documents in
1492
+ # their search results.
1493
+ #
1494
+ # If you want to delete or replace users or sub groups of a group, you
1495
+ # need to use the `PutPrincipalMapping` operation. For example, if a
1496
+ # user in the group "Engineering" leaves the engineering team and
1497
+ # another user takes their place, you provide an updated list of users
1498
+ # or sub groups that belong to the "Engineering" group when calling
1499
+ # `PutPrincipalMapping`. You can update your internal list of users or
1500
+ # sub groups and input this list when calling `PutPrincipalMapping`.
1501
+ #
1502
+ # @option params [required, String] :index_id
1503
+ # The identifier of the index you want to delete a group from.
1504
+ #
1505
+ # @option params [String] :data_source_id
1506
+ # The identifier of the data source you want to delete a group from.
1507
+ #
1508
+ # This is useful if a group is tied to multiple data sources and you
1509
+ # want to delete a group from accessing documents in a certain data
1510
+ # source. For example, the groups "Research", "Engineering", and
1511
+ # "Sales and Marketing" are all tied to the company's documents
1512
+ # stored in the data sources Confluence and Salesforce. You want to
1513
+ # delete "Research" and "Engineering" groups from Salesforce, so
1514
+ # that these groups cannot access customer-related documents stored in
1515
+ # Salesforce. Only "Sales and Marketing" should access documents in
1516
+ # the Salesforce data source.
1517
+ #
1518
+ # @option params [required, String] :group_id
1519
+ # The identifier of the group you want to delete.
1520
+ #
1521
+ # @option params [Integer] :ordering_id
1522
+ # The timestamp identifier you specify to ensure Amazon Kendra does not
1523
+ # override the latest `DELETE` action with previous actions. The highest
1524
+ # number ID, which is the ordering ID, is the latest action you want to
1525
+ # process and apply on top of other actions with lower number IDs. This
1526
+ # prevents previous actions with lower number IDs from possibly
1527
+ # overriding the latest action.
1528
+ #
1529
+ # The ordering ID can be the UNIX time of the last update you made to a
1530
+ # group members list. You would then provide this list when calling
1531
+ # `PutPrincipalMapping`. This ensures your `DELETE` action for that
1532
+ # updated group with the latest members list doesn't get overwritten by
1533
+ # earlier `DELETE` actions for the same group which are yet to be
1534
+ # processed.
1535
+ #
1536
+ # The default ordering ID is the current UNIX time in milliseconds that
1537
+ # the action was received by Amazon Kendra.
1538
+ #
1539
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1540
+ #
1541
+ # @example Request syntax with placeholder values
1542
+ #
1543
+ # resp = client.delete_principal_mapping({
1544
+ # index_id: "IndexId", # required
1545
+ # data_source_id: "DataSourceId",
1546
+ # group_id: "GroupId", # required
1547
+ # ordering_id: 1,
1548
+ # })
1549
+ #
1550
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DeletePrincipalMapping AWS API Documentation
1551
+ #
1552
+ # @overload delete_principal_mapping(params = {})
1553
+ # @param [Hash] params ({})
1554
+ def delete_principal_mapping(params = {}, options = {})
1555
+ req = build_request(:delete_principal_mapping, params)
1556
+ req.send_request(options)
1557
+ end
1558
+
1358
1559
  # Deletes a block list used for query suggestions for an index.
1359
1560
  #
1360
1561
  # A deleted block list might not take effect right away. Amazon Kendra
@@ -1446,7 +1647,7 @@ module Aws::Kendra
1446
1647
  # resp.id #=> String
1447
1648
  # resp.index_id #=> String
1448
1649
  # resp.name #=> String
1449
- # resp.type #=> String, one of "S3", "SHAREPOINT", "DATABASE", "SALESFORCE", "ONEDRIVE", "SERVICENOW", "CUSTOM", "CONFLUENCE", "GOOGLEDRIVE"
1650
+ # resp.type #=> String, one of "S3", "SHAREPOINT", "DATABASE", "SALESFORCE", "ONEDRIVE", "SERVICENOW", "CUSTOM", "CONFLUENCE", "GOOGLEDRIVE", "WEBCRAWLER"
1450
1651
  # resp.configuration.s3_configuration.bucket_name #=> String
1451
1652
  # resp.configuration.s3_configuration.inclusion_prefixes #=> Array
1452
1653
  # resp.configuration.s3_configuration.inclusion_prefixes[0] #=> String
@@ -1456,7 +1657,7 @@ module Aws::Kendra
1456
1657
  # resp.configuration.s3_configuration.exclusion_patterns[0] #=> String
1457
1658
  # resp.configuration.s3_configuration.documents_metadata_configuration.s3_prefix #=> String
1458
1659
  # resp.configuration.s3_configuration.access_control_list_configuration.key_path #=> String
1459
- # resp.configuration.share_point_configuration.share_point_version #=> String, one of "SHAREPOINT_ONLINE"
1660
+ # resp.configuration.share_point_configuration.share_point_version #=> String, one of "SHAREPOINT_2013", "SHAREPOINT_2016", "SHAREPOINT_ONLINE"
1460
1661
  # resp.configuration.share_point_configuration.urls #=> Array
1461
1662
  # resp.configuration.share_point_configuration.urls[0] #=> String
1462
1663
  # resp.configuration.share_point_configuration.secret_arn #=> String
@@ -1476,6 +1677,8 @@ module Aws::Kendra
1476
1677
  # resp.configuration.share_point_configuration.field_mappings[0].index_field_name #=> String
1477
1678
  # resp.configuration.share_point_configuration.document_title_field_name #=> String
1478
1679
  # resp.configuration.share_point_configuration.disable_local_groups #=> Boolean
1680
+ # resp.configuration.share_point_configuration.ssl_certificate_s3_path.bucket #=> String
1681
+ # resp.configuration.share_point_configuration.ssl_certificate_s3_path.key #=> String
1479
1682
  # resp.configuration.database_configuration.database_engine_type #=> String, one of "RDS_AURORA_MYSQL", "RDS_AURORA_POSTGRESQL", "RDS_MYSQL", "RDS_POSTGRESQL"
1480
1683
  # resp.configuration.database_configuration.connection_configuration.database_host #=> String
1481
1684
  # resp.configuration.database_configuration.connection_configuration.database_port #=> Integer
@@ -1632,6 +1835,26 @@ module Aws::Kendra
1632
1835
  # resp.configuration.google_drive_configuration.exclude_user_accounts[0] #=> String
1633
1836
  # resp.configuration.google_drive_configuration.exclude_shared_drives #=> Array
1634
1837
  # resp.configuration.google_drive_configuration.exclude_shared_drives[0] #=> String
1838
+ # resp.configuration.web_crawler_configuration.urls.seed_url_configuration.seed_urls #=> Array
1839
+ # resp.configuration.web_crawler_configuration.urls.seed_url_configuration.seed_urls[0] #=> String
1840
+ # resp.configuration.web_crawler_configuration.urls.seed_url_configuration.web_crawler_mode #=> String, one of "HOST_ONLY", "SUBDOMAINS", "EVERYTHING"
1841
+ # resp.configuration.web_crawler_configuration.urls.site_maps_configuration.site_maps #=> Array
1842
+ # resp.configuration.web_crawler_configuration.urls.site_maps_configuration.site_maps[0] #=> String
1843
+ # resp.configuration.web_crawler_configuration.crawl_depth #=> Integer
1844
+ # resp.configuration.web_crawler_configuration.max_links_per_page #=> Integer
1845
+ # resp.configuration.web_crawler_configuration.max_content_size_per_page_in_mega_bytes #=> Float
1846
+ # resp.configuration.web_crawler_configuration.max_urls_per_minute_crawl_rate #=> Integer
1847
+ # resp.configuration.web_crawler_configuration.url_inclusion_patterns #=> Array
1848
+ # resp.configuration.web_crawler_configuration.url_inclusion_patterns[0] #=> String
1849
+ # resp.configuration.web_crawler_configuration.url_exclusion_patterns #=> Array
1850
+ # resp.configuration.web_crawler_configuration.url_exclusion_patterns[0] #=> String
1851
+ # resp.configuration.web_crawler_configuration.proxy_configuration.host #=> String
1852
+ # resp.configuration.web_crawler_configuration.proxy_configuration.port #=> Integer
1853
+ # resp.configuration.web_crawler_configuration.proxy_configuration.credentials #=> String
1854
+ # resp.configuration.web_crawler_configuration.authentication_configuration.basic_authentication #=> Array
1855
+ # resp.configuration.web_crawler_configuration.authentication_configuration.basic_authentication[0].host #=> String
1856
+ # resp.configuration.web_crawler_configuration.authentication_configuration.basic_authentication[0].port #=> Integer
1857
+ # resp.configuration.web_crawler_configuration.authentication_configuration.basic_authentication[0].credentials #=> String
1635
1858
  # resp.created_at #=> Time
1636
1859
  # resp.updated_at #=> Time
1637
1860
  # resp.description #=> String
@@ -1782,6 +2005,61 @@ module Aws::Kendra
1782
2005
  req.send_request(options)
1783
2006
  end
1784
2007
 
2008
+ # Describes the processing of `PUT` and `DELETE` actions for mapping
2009
+ # users to their groups. This includes information on the status of
2010
+ # actions currently processing or yet to be processed, when actions were
2011
+ # last updated, when actions were received by Amazon Kendra, the latest
2012
+ # action that should process and apply after other actions, and useful
2013
+ # error messages if an action could not be processed.
2014
+ #
2015
+ # @option params [required, String] :index_id
2016
+ # The identifier of the index required to check the processing of `PUT`
2017
+ # and `DELETE` actions for mapping users to their groups.
2018
+ #
2019
+ # @option params [String] :data_source_id
2020
+ # The identifier of the data source to check the processing of `PUT` and
2021
+ # `DELETE` actions for mapping users to their groups.
2022
+ #
2023
+ # @option params [required, String] :group_id
2024
+ # The identifier of the group required to check the processing of `PUT`
2025
+ # and `DELETE` actions for mapping users to their groups.
2026
+ #
2027
+ # @return [Types::DescribePrincipalMappingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2028
+ #
2029
+ # * {Types::DescribePrincipalMappingResponse#index_id #index_id} => String
2030
+ # * {Types::DescribePrincipalMappingResponse#data_source_id #data_source_id} => String
2031
+ # * {Types::DescribePrincipalMappingResponse#group_id #group_id} => String
2032
+ # * {Types::DescribePrincipalMappingResponse#group_ordering_id_summaries #group_ordering_id_summaries} => Array&lt;Types::GroupOrderingIdSummary&gt;
2033
+ #
2034
+ # @example Request syntax with placeholder values
2035
+ #
2036
+ # resp = client.describe_principal_mapping({
2037
+ # index_id: "IndexId", # required
2038
+ # data_source_id: "DataSourceId",
2039
+ # group_id: "GroupId", # required
2040
+ # })
2041
+ #
2042
+ # @example Response structure
2043
+ #
2044
+ # resp.index_id #=> String
2045
+ # resp.data_source_id #=> String
2046
+ # resp.group_id #=> String
2047
+ # resp.group_ordering_id_summaries #=> Array
2048
+ # resp.group_ordering_id_summaries[0].status #=> String, one of "FAILED", "SUCCEEDED", "PROCESSING", "DELETING", "DELETED"
2049
+ # resp.group_ordering_id_summaries[0].last_updated_at #=> Time
2050
+ # resp.group_ordering_id_summaries[0].received_at #=> Time
2051
+ # resp.group_ordering_id_summaries[0].ordering_id #=> Integer
2052
+ # resp.group_ordering_id_summaries[0].failure_reason #=> String
2053
+ #
2054
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribePrincipalMapping AWS API Documentation
2055
+ #
2056
+ # @overload describe_principal_mapping(params = {})
2057
+ # @param [Hash] params ({})
2058
+ def describe_principal_mapping(params = {}, options = {})
2059
+ req = build_request(:describe_principal_mapping, params)
2060
+ req.send_request(options)
2061
+ end
2062
+
1785
2063
  # Describes a block list used for query suggestions for an index.
1786
2064
  #
1787
2065
  # This is used to check the current settings that are applied to a block
@@ -2103,7 +2381,7 @@ module Aws::Kendra
2103
2381
  # resp.summary_items #=> Array
2104
2382
  # resp.summary_items[0].name #=> String
2105
2383
  # resp.summary_items[0].id #=> String
2106
- # resp.summary_items[0].type #=> String, one of "S3", "SHAREPOINT", "DATABASE", "SALESFORCE", "ONEDRIVE", "SERVICENOW", "CUSTOM", "CONFLUENCE", "GOOGLEDRIVE"
2384
+ # resp.summary_items[0].type #=> String, one of "S3", "SHAREPOINT", "DATABASE", "SALESFORCE", "ONEDRIVE", "SERVICENOW", "CUSTOM", "CONFLUENCE", "GOOGLEDRIVE", "WEBCRAWLER"
2107
2385
  # resp.summary_items[0].created_at #=> Time
2108
2386
  # resp.summary_items[0].updated_at #=> Time
2109
2387
  # resp.summary_items[0].status #=> String, one of "CREATING", "DELETING", "FAILED", "UPDATING", "ACTIVE"
@@ -2165,6 +2443,59 @@ module Aws::Kendra
2165
2443
  req.send_request(options)
2166
2444
  end
2167
2445
 
2446
+ # Provides a list of groups that are mapped to users before a given
2447
+ # ordering or timestamp identifier.
2448
+ #
2449
+ # @option params [required, String] :index_id
2450
+ # The identifier of the index for getting a list of groups mapped to
2451
+ # users before a given ordering or timestamp identifier.
2452
+ #
2453
+ # @option params [String] :data_source_id
2454
+ # The identifier of the data source for getting a list of groups mapped
2455
+ # to users before a given ordering timestamp identifier.
2456
+ #
2457
+ # @option params [required, Integer] :ordering_id
2458
+ # The timestamp identifier used for the latest `PUT` or `DELETE` action
2459
+ # for mapping users to their groups.
2460
+ #
2461
+ # @option params [String] :next_token
2462
+ # The next items in the list of groups that go beyond the maximum.
2463
+ #
2464
+ # @option params [Integer] :max_results
2465
+ # The maximum results shown for a list of groups that are mapped to
2466
+ # users before a given ordering or timestamp identifier.
2467
+ #
2468
+ # @return [Types::ListGroupsOlderThanOrderingIdResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2469
+ #
2470
+ # * {Types::ListGroupsOlderThanOrderingIdResponse#groups_summaries #groups_summaries} => Array&lt;Types::GroupSummary&gt;
2471
+ # * {Types::ListGroupsOlderThanOrderingIdResponse#next_token #next_token} => String
2472
+ #
2473
+ # @example Request syntax with placeholder values
2474
+ #
2475
+ # resp = client.list_groups_older_than_ordering_id({
2476
+ # index_id: "IndexId", # required
2477
+ # data_source_id: "DataSourceId",
2478
+ # ordering_id: 1, # required
2479
+ # next_token: "NextToken",
2480
+ # max_results: 1,
2481
+ # })
2482
+ #
2483
+ # @example Response structure
2484
+ #
2485
+ # resp.groups_summaries #=> Array
2486
+ # resp.groups_summaries[0].group_id #=> String
2487
+ # resp.groups_summaries[0].ordering_id #=> Integer
2488
+ # resp.next_token #=> String
2489
+ #
2490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListGroupsOlderThanOrderingId AWS API Documentation
2491
+ #
2492
+ # @overload list_groups_older_than_ordering_id(params = {})
2493
+ # @param [Hash] params ({})
2494
+ def list_groups_older_than_ordering_id(params = {}, options = {})
2495
+ req = build_request(:list_groups_older_than_ordering_id, params)
2496
+ req.send_request(options)
2497
+ end
2498
+
2168
2499
  # Lists the Amazon Kendra indexes that you have created.
2169
2500
  #
2170
2501
  # @option params [String] :next_token
@@ -2350,6 +2681,123 @@ module Aws::Kendra
2350
2681
  req.send_request(options)
2351
2682
  end
2352
2683
 
2684
+ # Maps users to their groups. You can also map sub groups to groups. For
2685
+ # example, the group "Company Intellectual Property Teams" includes
2686
+ # sub groups "Research" and "Engineering". These sub groups include
2687
+ # their own list of users or people who work in these teams. Only users
2688
+ # who work in research and engineering, and therefore belong in the
2689
+ # intellectual property group, can see top-secret company documents in
2690
+ # their search results.
2691
+ #
2692
+ # You map users to their groups when you want to filter search results
2693
+ # for different users based on their group’s access to documents. For
2694
+ # more information on filtering search results for different users, see
2695
+ # [Filtering on user context][1].
2696
+ #
2697
+ # If more than five `PUT` actions for a group are currently processing,
2698
+ # a validation exception is thrown.
2699
+ #
2700
+ #
2701
+ #
2702
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html
2703
+ #
2704
+ # @option params [required, String] :index_id
2705
+ # The identifier of the index you want to map users to their groups.
2706
+ #
2707
+ # @option params [String] :data_source_id
2708
+ # The identifier of the data source you want to map users to their
2709
+ # groups.
2710
+ #
2711
+ # This is useful if a group is tied to multiple data sources, but you
2712
+ # only want the group to access documents of a certain data source. For
2713
+ # example, the groups "Research", "Engineering", and "Sales and
2714
+ # Marketing" are all tied to the company's documents stored in the
2715
+ # data sources Confluence and Salesforce. However, "Sales and
2716
+ # Marketing" team only needs access to customer-related documents
2717
+ # stored in Salesforce.
2718
+ #
2719
+ # @option params [required, String] :group_id
2720
+ # The identifier of the group you want to map its users to.
2721
+ #
2722
+ # @option params [required, Types::GroupMembers] :group_members
2723
+ # The list that contains your users or sub groups that belong the same
2724
+ # group.
2725
+ #
2726
+ # For example, the group "Company" includes the user "CEO" and the
2727
+ # sub groups "Research", "Engineering", and "Sales and Marketing".
2728
+ #
2729
+ # If you have more than 1000 users and/or sub groups for a single group,
2730
+ # you need to provide the path to the S3 file that lists your users and
2731
+ # sub groups for a group. Your sub groups can contain more than 1000
2732
+ # users, but the list of sub groups that belong to a group (and/or
2733
+ # users) must be no more than 1000.
2734
+ #
2735
+ # @option params [Integer] :ordering_id
2736
+ # The timestamp identifier you specify to ensure Amazon Kendra does not
2737
+ # override the latest `PUT` action with previous actions. The highest
2738
+ # number ID, which is the ordering ID, is the latest action you want to
2739
+ # process and apply on top of other actions with lower number IDs. This
2740
+ # prevents previous actions with lower number IDs from possibly
2741
+ # overriding the latest action.
2742
+ #
2743
+ # The ordering ID can be the UNIX time of the last update you made to a
2744
+ # group members list. You would then provide this list when calling
2745
+ # `PutPrincipalMapping`. This ensures your `PUT` action for that updated
2746
+ # group with the latest members list doesn't get overwritten by earlier
2747
+ # `PUT` actions for the same group which are yet to be processed.
2748
+ #
2749
+ # The default ordering ID is the current UNIX time in milliseconds that
2750
+ # the action was received by Amazon Kendra.
2751
+ #
2752
+ # @option params [String] :role_arn
2753
+ # The Amazon Resource Name (ARN) of a role that has access to the S3
2754
+ # file that contains your list of users or sub groups that belong to a
2755
+ # group.
2756
+ #
2757
+ # For more information, see [IAM roles for Amazon Kendra][1].
2758
+ #
2759
+ #
2760
+ #
2761
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds
2762
+ #
2763
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2764
+ #
2765
+ # @example Request syntax with placeholder values
2766
+ #
2767
+ # resp = client.put_principal_mapping({
2768
+ # index_id: "IndexId", # required
2769
+ # data_source_id: "DataSourceId",
2770
+ # group_id: "GroupId", # required
2771
+ # group_members: { # required
2772
+ # member_groups: [
2773
+ # {
2774
+ # group_id: "GroupId", # required
2775
+ # data_source_id: "DataSourceId",
2776
+ # },
2777
+ # ],
2778
+ # member_users: [
2779
+ # {
2780
+ # user_id: "UserId", # required
2781
+ # },
2782
+ # ],
2783
+ # s3_pathfor_group_members: {
2784
+ # bucket: "S3BucketName", # required
2785
+ # key: "S3ObjectKey", # required
2786
+ # },
2787
+ # },
2788
+ # ordering_id: 1,
2789
+ # role_arn: "RoleArn",
2790
+ # })
2791
+ #
2792
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/PutPrincipalMapping AWS API Documentation
2793
+ #
2794
+ # @overload put_principal_mapping(params = {})
2795
+ # @param [Hash] params ({})
2796
+ def put_principal_mapping(params = {}, options = {})
2797
+ req = build_request(:put_principal_mapping, params)
2798
+ req.send_request(options)
2799
+ end
2800
+
2353
2801
  # Searches an active index. Use this API to search your documents using
2354
2802
  # query. The `Query` operation enables to do faceted search and to
2355
2803
  # filter results based on document attributes.
@@ -2568,6 +3016,14 @@ module Aws::Kendra
2568
3016
  # },
2569
3017
  # user_context: {
2570
3018
  # token: "Token",
3019
+ # user_id: "PrincipalName",
3020
+ # groups: ["PrincipalName"],
3021
+ # data_source_groups: [
3022
+ # {
3023
+ # group_id: "PrincipalName", # required
3024
+ # data_source_id: "DataSourceId", # required
3025
+ # },
3026
+ # ],
2571
3027
  # },
2572
3028
  # visitor_id: "VisitorId",
2573
3029
  # })
@@ -2853,7 +3309,7 @@ module Aws::Kendra
2853
3309
  # },
2854
3310
  # },
2855
3311
  # share_point_configuration: {
2856
- # share_point_version: "SHAREPOINT_ONLINE", # required, accepts SHAREPOINT_ONLINE
3312
+ # share_point_version: "SHAREPOINT_2013", # required, accepts SHAREPOINT_2013, SHAREPOINT_2016, SHAREPOINT_ONLINE
2857
3313
  # urls: ["Url"], # required
2858
3314
  # secret_arn: "SecretArn", # required
2859
3315
  # crawl_attachments: false,
@@ -2873,6 +3329,10 @@ module Aws::Kendra
2873
3329
  # ],
2874
3330
  # document_title_field_name: "DataSourceFieldName",
2875
3331
  # disable_local_groups: false,
3332
+ # ssl_certificate_s3_path: {
3333
+ # bucket: "S3BucketName", # required
3334
+ # key: "S3ObjectKey", # required
3335
+ # },
2876
3336
  # },
2877
3337
  # database_configuration: {
2878
3338
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -3101,6 +3561,37 @@ module Aws::Kendra
3101
3561
  # exclude_user_accounts: ["UserAccount"],
3102
3562
  # exclude_shared_drives: ["SharedDriveId"],
3103
3563
  # },
3564
+ # web_crawler_configuration: {
3565
+ # urls: { # required
3566
+ # seed_url_configuration: {
3567
+ # seed_urls: ["SeedUrl"], # required
3568
+ # web_crawler_mode: "HOST_ONLY", # accepts HOST_ONLY, SUBDOMAINS, EVERYTHING
3569
+ # },
3570
+ # site_maps_configuration: {
3571
+ # site_maps: ["SiteMap"], # required
3572
+ # },
3573
+ # },
3574
+ # crawl_depth: 1,
3575
+ # max_links_per_page: 1,
3576
+ # max_content_size_per_page_in_mega_bytes: 1.0,
3577
+ # max_urls_per_minute_crawl_rate: 1,
3578
+ # url_inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3579
+ # url_exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3580
+ # proxy_configuration: {
3581
+ # host: "Host", # required
3582
+ # port: 1, # required
3583
+ # credentials: "SecretArn",
3584
+ # },
3585
+ # authentication_configuration: {
3586
+ # basic_authentication: [
3587
+ # {
3588
+ # host: "Host", # required
3589
+ # port: 1, # required
3590
+ # credentials: "SecretArn", # required
3591
+ # },
3592
+ # ],
3593
+ # },
3594
+ # },
3104
3595
  # },
3105
3596
  # description: "Description",
3106
3597
  # schedule: "ScanSchedule",
@@ -3430,7 +3921,7 @@ module Aws::Kendra
3430
3921
  params: params,
3431
3922
  config: config)
3432
3923
  context[:gem_name] = 'aws-sdk-kendra'
3433
- context[:gem_version] = '1.25.0'
3924
+ context[:gem_version] = '1.30.0'
3434
3925
  Seahorse::Client::Request.new(handlers, context)
3435
3926
  end
3436
3927