aws-sdk-kendra 1.52.0 → 1.55.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -611,6 +611,13 @@ module Aws::Kendra
611
611
  # related to processing the batch are sent to your Amazon Web Services
612
612
  # CloudWatch log.
613
613
  #
614
+ # For an example of ingesting inline documents using Python and Java
615
+ # SDKs, see [Adding files directly to an index][1].
616
+ #
617
+ #
618
+ #
619
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-adding-binary-doc.html
620
+ #
614
621
  # @option params [required, String] :index_id
615
622
  # The identifier of the index to add the documents to. You need to
616
623
  # create the index first using the `CreateIndex` API.
@@ -706,6 +713,7 @@ module Aws::Kendra
706
713
  # },
707
714
  # ],
708
715
  # content_type: "PDF", # accepts PDF, HTML, MS_WORD, PLAIN_TEXT, PPT
716
+ # access_control_configuration_id: "AccessControlConfigurationId",
709
717
  # },
710
718
  # ],
711
719
  # custom_document_enrichment_configuration: {
@@ -813,6 +821,117 @@ module Aws::Kendra
813
821
  req.send_request(options)
814
822
  end
815
823
 
824
+ # Creates an access configuration for your documents. This includes user
825
+ # and group access information for your documents. This is useful for
826
+ # user context filtering, where search results are filtered based on the
827
+ # user or their group access to documents.
828
+ #
829
+ # You can use this to re-configure your existing document level access
830
+ # control without indexing all of your documents again. For example,
831
+ # your index contains top-secret company documents that only certain
832
+ # employees or users should access. One of these users leaves the
833
+ # company or switches to a team that should be blocked from accessing
834
+ # top-secret documents. The user still has access to top-secret
835
+ # documents because the user had access when your documents were
836
+ # previously indexed. You can create a specific access control
837
+ # configuration for the user with deny access. You can later update the
838
+ # access control configuration to allow access if the user returns to
839
+ # the company and re-joins the 'top-secret' team. You can re-configure
840
+ # access control for your documents as circumstances change.
841
+ #
842
+ # To apply your access control configuration to certain documents, you
843
+ # call the [BatchPutDocument][1] API with the
844
+ # `AccessControlConfigurationId` included in the [Document][2] object.
845
+ # If you use an S3 bucket as a data source, you update the
846
+ # `.metadata.json` with the `AccessControlConfigurationId` and
847
+ # synchronize your data source. Amazon Kendra currently only supports
848
+ # access control configuration for S3 data sources and documents indexed
849
+ # using the `BatchPutDocument` API.
850
+ #
851
+ #
852
+ #
853
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_BatchPutDocument.html
854
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/API_Document.html
855
+ #
856
+ # @option params [required, String] :index_id
857
+ # The identifier of the index to create an access control configuration
858
+ # for your documents.
859
+ #
860
+ # @option params [required, String] :name
861
+ # A name for the access control configuration.
862
+ #
863
+ # @option params [String] :description
864
+ # A description for the access control configuration.
865
+ #
866
+ # @option params [Array<Types::Principal>] :access_control_list
867
+ # Information on principals (users and/or groups) and which documents
868
+ # they should have access to. This is useful for user context filtering,
869
+ # where search results are filtered based on the user or their group
870
+ # access to documents.
871
+ #
872
+ # @option params [Array<Types::HierarchicalPrincipal>] :hierarchical_access_control_list
873
+ # The list of [principal][1] lists that define the hierarchy for which
874
+ # documents users should have access to.
875
+ #
876
+ #
877
+ #
878
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_Principal.html
879
+ #
880
+ # @option params [String] :client_token
881
+ # A token that you provide to identify the request to create an access
882
+ # control configuration. Multiple calls to the
883
+ # `CreateAccessControlConfiguration` API with the same client token will
884
+ # create only one access control configuration.
885
+ #
886
+ # **A suitable default value is auto-generated.** You should normally
887
+ # not need to pass this option.**
888
+ #
889
+ # @return [Types::CreateAccessControlConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
890
+ #
891
+ # * {Types::CreateAccessControlConfigurationResponse#id #id} => String
892
+ #
893
+ # @example Request syntax with placeholder values
894
+ #
895
+ # resp = client.create_access_control_configuration({
896
+ # index_id: "IndexId", # required
897
+ # name: "AccessControlConfigurationName", # required
898
+ # description: "Description",
899
+ # access_control_list: [
900
+ # {
901
+ # name: "PrincipalName", # required
902
+ # type: "USER", # required, accepts USER, GROUP
903
+ # access: "ALLOW", # required, accepts ALLOW, DENY
904
+ # data_source_id: "DataSourceId",
905
+ # },
906
+ # ],
907
+ # hierarchical_access_control_list: [
908
+ # {
909
+ # principal_list: [ # required
910
+ # {
911
+ # name: "PrincipalName", # required
912
+ # type: "USER", # required, accepts USER, GROUP
913
+ # access: "ALLOW", # required, accepts ALLOW, DENY
914
+ # data_source_id: "DataSourceId",
915
+ # },
916
+ # ],
917
+ # },
918
+ # ],
919
+ # client_token: "ClientTokenName",
920
+ # })
921
+ #
922
+ # @example Response structure
923
+ #
924
+ # resp.id #=> String
925
+ #
926
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateAccessControlConfiguration AWS API Documentation
927
+ #
928
+ # @overload create_access_control_configuration(params = {})
929
+ # @param [Hash] params ({})
930
+ def create_access_control_configuration(params = {}, options = {})
931
+ req = build_request(:create_access_control_configuration, params)
932
+ req.send_request(options)
933
+ end
934
+
816
935
  # Creates a data source that you want to use with an Amazon Kendra
817
936
  # index.
818
937
  #
@@ -827,24 +946,30 @@ module Aws::Kendra
827
946
  # Amazon S3 and [custom][1] data sources are the only supported data
828
947
  # sources in the Amazon Web Services GovCloud (US-West) region.
829
948
  #
949
+ # For an example of creating an index and data source using the Python
950
+ # SDK, see [Getting started with Python SDK][2]. For an example of
951
+ # creating an index and data source using the Java SDK, see [Getting
952
+ # started with Java SDK][3].
953
+ #
830
954
  #
831
955
  #
832
956
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/data-source-custom.html
957
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/gs-python.html
958
+ # [3]: https://docs.aws.amazon.com/kendra/latest/dg/gs-java.html
833
959
  #
834
960
  # @option params [required, String] :name
835
- # A unique name for the data source. A data source name can't be
836
- # changed without deleting and recreating the data source.
961
+ # A unique name for the data source connector. A data source name can't
962
+ # be changed without deleting and recreating the data source connector.
837
963
  #
838
964
  # @option params [required, String] :index_id
839
- # The identifier of the index that should be associated with this data
840
- # source.
965
+ # The identifier of the index you want to use with the data source
966
+ # connector.
841
967
  #
842
968
  # @option params [required, String] :type
843
- # The type of repository that contains the data source.
969
+ # The type of data source repository. For example, `SHAREPOINT`.
844
970
  #
845
971
  # @option params [Types::DataSourceConfiguration] :configuration
846
- # Configuration information that is required to access the data source
847
- # repository.
972
+ # Configuration information to connect to your data source repository.
848
973
  #
849
974
  # You can't specify the `Configuration` parameter when the `Type`
850
975
  # parameter is set to `CUSTOM`. If you do, you receive a
@@ -853,13 +978,13 @@ module Aws::Kendra
853
978
  # The `Configuration` parameter is required for all other data sources.
854
979
  #
855
980
  # @option params [String] :description
856
- # A description for the data source.
981
+ # A description for the data source connector.
857
982
  #
858
983
  # @option params [String] :schedule
859
984
  # Sets the frequency for Amazon Kendra to check the documents in your
860
- # repository and update the index. If you don't set a schedule Amazon
861
- # Kendra will not periodically update the index. You can call the
862
- # `StartDataSourceSyncJob` API to update the index.
985
+ # data source repository and update the index. If you don't set a
986
+ # schedule Amazon Kendra will not periodically update the index. You can
987
+ # call the `StartDataSourceSyncJob` API to update the index.
863
988
  #
864
989
  # You can't specify the `Schedule` parameter when the `Type` parameter
865
990
  # is set to `CUSTOM`. If you do, you receive a `ValidationException`
@@ -867,7 +992,7 @@ module Aws::Kendra
867
992
  #
868
993
  # @option params [String] :role_arn
869
994
  # The Amazon Resource Name (ARN) of a role with permission to access the
870
- # data source. For more information, see [IAM Roles for Amazon
995
+ # data source connector. For more information, see [IAM Roles for Amazon
871
996
  # Kendra][1].
872
997
  #
873
998
  # You can't specify the `RoleArn` parameter when the `Type` parameter
@@ -881,23 +1006,24 @@ module Aws::Kendra
881
1006
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
882
1007
  #
883
1008
  # @option params [Array<Types::Tag>] :tags
884
- # A list of key-value pairs that identify the data source. You can use
885
- # the tags to identify and organize your resources and to control access
886
- # to resources.
1009
+ # A list of key-value pairs that identify the data source connector. You
1010
+ # can use the tags to identify and organize your resources and to
1011
+ # control access to resources.
887
1012
  #
888
1013
  # @option params [String] :client_token
889
1014
  # A token that you provide to identify the request to create a data
890
- # source. Multiple calls to the `CreateDataSource` API with the same
891
- # client token will create only one data source.
1015
+ # source connector. Multiple calls to the `CreateDataSource` API with
1016
+ # the same client token will create only one data source connector.
892
1017
  #
893
1018
  # **A suitable default value is auto-generated.** You should normally
894
1019
  # not need to pass this option.**
895
1020
  #
896
1021
  # @option params [String] :language_code
897
1022
  # The code for a language. This allows you to support a language for all
898
- # documents when creating the data source. English is supported by
899
- # default. For more information on supported languages, including their
900
- # codes, see [Adding documents in languages other than English][1].
1023
+ # documents when creating the data source connector. English is
1024
+ # supported by default. For more information on supported languages,
1025
+ # including their codes, see [Adding documents in languages other than
1026
+ # English][1].
901
1027
  #
902
1028
  #
903
1029
  #
@@ -905,7 +1031,7 @@ module Aws::Kendra
905
1031
  #
906
1032
  # @option params [Types::CustomDocumentEnrichmentConfiguration] :custom_document_enrichment_configuration
907
1033
  # Configuration information for altering document metadata and content
908
- # during the document ingestion process when you create a data source.
1034
+ # during the document ingestion process.
909
1035
  #
910
1036
  # For more information on how to create, modify and delete document
911
1037
  # metadata, or make other content alterations when you ingest documents
@@ -925,7 +1051,7 @@ module Aws::Kendra
925
1051
  # resp = client.create_data_source({
926
1052
  # name: "DataSourceName", # required
927
1053
  # index_id: "IndexId", # required
928
- # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW, CUSTOM, CONFLUENCE, GOOGLEDRIVE, WEBCRAWLER, WORKDOCS, FSX, SLACK, BOX, QUIP, JIRA, GITHUB
1054
+ # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW, CUSTOM, CONFLUENCE, GOOGLEDRIVE, WEBCRAWLER, WORKDOCS, FSX, SLACK, BOX, QUIP, JIRA, GITHUB, ALFRESCO
929
1055
  # configuration: {
930
1056
  # s3_configuration: {
931
1057
  # bucket_name: "S3BucketName", # required
@@ -964,6 +1090,7 @@ module Aws::Kendra
964
1090
  # bucket: "S3BucketName", # required
965
1091
  # key: "S3ObjectKey", # required
966
1092
  # },
1093
+ # authentication_type: "HTTP_BASIC", # accepts HTTP_BASIC, OAUTH2
967
1094
  # },
968
1095
  # database_configuration: {
969
1096
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -1500,6 +1627,45 @@ module Aws::Kendra
1500
1627
  # },
1501
1628
  # ],
1502
1629
  # },
1630
+ # alfresco_configuration: {
1631
+ # site_url: "SiteUrl", # required
1632
+ # site_id: "SiteId", # required
1633
+ # secret_arn: "SecretArn", # required
1634
+ # ssl_certificate_s3_path: { # required
1635
+ # bucket: "S3BucketName", # required
1636
+ # key: "S3ObjectKey", # required
1637
+ # },
1638
+ # crawl_system_folders: false,
1639
+ # crawl_comments: false,
1640
+ # entity_filter: ["wiki"], # accepts wiki, blog, documentLibrary
1641
+ # document_library_field_mappings: [
1642
+ # {
1643
+ # data_source_field_name: "DataSourceFieldName", # required
1644
+ # date_field_format: "DataSourceDateFieldFormat",
1645
+ # index_field_name: "IndexFieldName", # required
1646
+ # },
1647
+ # ],
1648
+ # blog_field_mappings: [
1649
+ # {
1650
+ # data_source_field_name: "DataSourceFieldName", # required
1651
+ # date_field_format: "DataSourceDateFieldFormat",
1652
+ # index_field_name: "IndexFieldName", # required
1653
+ # },
1654
+ # ],
1655
+ # wiki_field_mappings: [
1656
+ # {
1657
+ # data_source_field_name: "DataSourceFieldName", # required
1658
+ # date_field_format: "DataSourceDateFieldFormat",
1659
+ # index_field_name: "IndexFieldName", # required
1660
+ # },
1661
+ # ],
1662
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1663
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1664
+ # vpc_configuration: {
1665
+ # subnet_ids: ["SubnetId"], # required
1666
+ # security_group_ids: ["VpcSecurityGroupId"], # required
1667
+ # },
1668
+ # },
1503
1669
  # },
1504
1670
  # description: "Description",
1505
1671
  # schedule: "ScanSchedule",
@@ -1584,8 +1750,9 @@ module Aws::Kendra
1584
1750
  end
1585
1751
 
1586
1752
  # Creates an Amazon Kendra experience such as a search application. For
1587
- # more information on creating a search application experience, see
1588
- # [Building a search experience with no code][1].
1753
+ # more information on creating a search application experience,
1754
+ # including using the Python and Java SDKs, see [Building a search
1755
+ # experience with no code][1].
1589
1756
  #
1590
1757
  #
1591
1758
  #
@@ -1667,17 +1834,24 @@ module Aws::Kendra
1667
1834
  #
1668
1835
  # Adding FAQs to an index is an asynchronous operation.
1669
1836
  #
1837
+ # For an example of adding an FAQ to an index using Python and Java
1838
+ # SDKs, see [Using your FAQ file][1].
1839
+ #
1840
+ #
1841
+ #
1842
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-creating-faq.html#using-faq-file
1843
+ #
1670
1844
  # @option params [required, String] :index_id
1671
- # The identifier of the index that contains the FAQ.
1845
+ # The identifier of the index for the FAQ.
1672
1846
  #
1673
1847
  # @option params [required, String] :name
1674
- # The name that should be associated with the FAQ.
1848
+ # A name for the FAQ.
1675
1849
  #
1676
1850
  # @option params [String] :description
1677
- # A description of the FAQ.
1851
+ # A description for the FAQ.
1678
1852
  #
1679
1853
  # @option params [required, Types::S3Path] :s3_path
1680
- # The S3 location of the FAQ input data.
1854
+ # The path to the FAQ file in S3.
1681
1855
  #
1682
1856
  # @option params [required, String] :role_arn
1683
1857
  # The Amazon Resource Name (ARN) of a role with permission to access the
@@ -1694,7 +1868,7 @@ module Aws::Kendra
1694
1868
  # resources.
1695
1869
  #
1696
1870
  # @option params [String] :file_format
1697
- # The format of the input file. You can choose between a basic CSV
1871
+ # The format of the FAQ input file. You can choose between a basic CSV
1698
1872
  # format, a CSV format that includes customs attributes in a header, and
1699
1873
  # a JSON format that includes custom attributes.
1700
1874
  #
@@ -1764,16 +1938,26 @@ module Aws::Kendra
1764
1938
  req.send_request(options)
1765
1939
  end
1766
1940
 
1767
- # Creates a new Amazon Kendra index. Index creation is an asynchronous
1768
- # API. To determine if index creation has completed, check the `Status`
1769
- # field returned from a call to `DescribeIndex`. The `Status` field is
1770
- # set to `ACTIVE` when the index is ready to use.
1941
+ # Creates an Amazon Kendra index. Index creation is an asynchronous API.
1942
+ # To determine if index creation has completed, check the `Status` field
1943
+ # returned from a call to `DescribeIndex`. The `Status` field is set to
1944
+ # `ACTIVE` when the index is ready to use.
1771
1945
  #
1772
1946
  # Once the index is active you can index your documents using the
1773
1947
  # `BatchPutDocument` API or using one of the supported data sources.
1774
1948
  #
1949
+ # For an example of creating an index and data source using the Python
1950
+ # SDK, see [Getting started with Python SDK][1]. For an example of
1951
+ # creating an index and data source using the Java SDK, see [Getting
1952
+ # started with Java SDK][2].
1953
+ #
1954
+ #
1955
+ #
1956
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/gs-python.html
1957
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/gs-java.html
1958
+ #
1775
1959
  # @option params [required, String] :name
1776
- # The name for the new index.
1960
+ # A name for the index.
1777
1961
  #
1778
1962
  # @option params [String] :edition
1779
1963
  # The Amazon Kendra edition to use for the index. Choose
@@ -1919,9 +2103,13 @@ module Aws::Kendra
1919
2103
  # `CreateQuerySuggestionsBlockList` is currently not supported in the
1920
2104
  # Amazon Web Services GovCloud (US-West) region.
1921
2105
  #
2106
+ # For an example of creating a block list for query suggestions using
2107
+ # the Python SDK, see [Query suggestions block list][2].
2108
+ #
1922
2109
  #
1923
2110
  #
1924
2111
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/quotas.html
2112
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/query-suggestions.html#suggestions-block-list
1925
2113
  #
1926
2114
  # @option params [required, String] :index_id
1927
2115
  # The identifier of the index you want to create a query suggestions
@@ -2012,14 +2200,21 @@ module Aws::Kendra
2012
2200
  # Creates a thesaurus for an index. The thesaurus contains a list of
2013
2201
  # synonyms in Solr format.
2014
2202
  #
2203
+ # For an example of adding a thesaurus file to an index, see [Adding
2204
+ # custom synonyms to an index][1].
2205
+ #
2206
+ #
2207
+ #
2208
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/index-synonyms-adding-thesaurus-file.html
2209
+ #
2015
2210
  # @option params [required, String] :index_id
2016
- # The unique identifier of the index for the new thesaurus.
2211
+ # The identifier of the index for the thesaurus.
2017
2212
  #
2018
2213
  # @option params [required, String] :name
2019
- # The name for the new thesaurus.
2214
+ # A name for the thesaurus.
2020
2215
  #
2021
2216
  # @option params [String] :description
2022
- # The description for the new thesaurus.
2217
+ # A description for the thesaurus.
2023
2218
  #
2024
2219
  # @option params [required, String] :role_arn
2025
2220
  # An IAM role that gives Amazon Kendra permissions to access thesaurus
@@ -2031,7 +2226,7 @@ module Aws::Kendra
2031
2226
  # resources.
2032
2227
  #
2033
2228
  # @option params [required, Types::S3Path] :source_s3_path
2034
- # The thesaurus file Amazon S3 source path.
2229
+ # The path to the thesaurus file in S3.
2035
2230
  #
2036
2231
  # @option params [String] :client_token
2037
2232
  # A token that you provide to identify the request to create a
@@ -2078,6 +2273,36 @@ module Aws::Kendra
2078
2273
  req.send_request(options)
2079
2274
  end
2080
2275
 
2276
+ # Deletes an access control configuration that you created for your
2277
+ # documents in an index. This includes user and group access information
2278
+ # for your documents. This is useful for user context filtering, where
2279
+ # search results are filtered based on the user or their group access to
2280
+ # documents.
2281
+ #
2282
+ # @option params [required, String] :index_id
2283
+ # The identifier of the index for an access control configuration.
2284
+ #
2285
+ # @option params [required, String] :id
2286
+ # The identifier of the access control configuration you want to delete.
2287
+ #
2288
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2289
+ #
2290
+ # @example Request syntax with placeholder values
2291
+ #
2292
+ # resp = client.delete_access_control_configuration({
2293
+ # index_id: "IndexId", # required
2294
+ # id: "AccessControlConfigurationId", # required
2295
+ # })
2296
+ #
2297
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DeleteAccessControlConfiguration AWS API Documentation
2298
+ #
2299
+ # @overload delete_access_control_configuration(params = {})
2300
+ # @param [Hash] params ({})
2301
+ def delete_access_control_configuration(params = {}, options = {})
2302
+ req = build_request(:delete_access_control_configuration, params)
2303
+ req.send_request(options)
2304
+ end
2305
+
2081
2306
  # Deletes an Amazon Kendra data source. An exception is not thrown if
2082
2307
  # the data source is already being deleted. While the data source is
2083
2308
  # being deleted, the `Status` field returned by a call to the
@@ -2089,10 +2314,10 @@ module Aws::Kendra
2089
2314
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/delete-data-source.html
2090
2315
  #
2091
2316
  # @option params [required, String] :id
2092
- # The unique identifier of the data source to delete.
2317
+ # The identifier of the data source you want to delete.
2093
2318
  #
2094
2319
  # @option params [required, String] :index_id
2095
- # The unique identifier of the index associated with the data source.
2320
+ # The identifier of the index used with the data source.
2096
2321
  #
2097
2322
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2098
2323
  #
@@ -2124,8 +2349,7 @@ module Aws::Kendra
2124
2349
  # The identifier of your Amazon Kendra experience you want to delete.
2125
2350
  #
2126
2351
  # @option params [required, String] :index_id
2127
- # The identifier of the index for your Amazon Kendra experience you want
2128
- # to delete.
2352
+ # The identifier of the index for your Amazon Kendra experience.
2129
2353
  #
2130
2354
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2131
2355
  #
@@ -2148,10 +2372,10 @@ module Aws::Kendra
2148
2372
  # Removes an FAQ from an index.
2149
2373
  #
2150
2374
  # @option params [required, String] :id
2151
- # The identifier of the FAQ to remove.
2375
+ # The identifier of the FAQ you want to remove.
2152
2376
  #
2153
2377
  # @option params [required, String] :index_id
2154
- # The index to remove the FAQ from.
2378
+ # The identifier of the index for the FAQ.
2155
2379
  #
2156
2380
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2157
2381
  #
@@ -2177,7 +2401,7 @@ module Aws::Kendra
2177
2401
  # set to `DELETING`.
2178
2402
  #
2179
2403
  # @option params [required, String] :id
2180
- # The identifier of the index to delete.
2404
+ # The identifier of the index you want to delete.
2181
2405
  #
2182
2406
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2183
2407
  #
@@ -2220,15 +2444,14 @@ module Aws::Kendra
2220
2444
  # @option params [String] :data_source_id
2221
2445
  # The identifier of the data source you want to delete a group from.
2222
2446
  #
2223
- # This is useful if a group is tied to multiple data sources and you
2224
- # want to delete a group from accessing documents in a certain data
2225
- # source. For example, the groups "Research", "Engineering", and
2226
- # "Sales and Marketing" are all tied to the company's documents
2227
- # stored in the data sources Confluence and Salesforce. You want to
2228
- # delete "Research" and "Engineering" groups from Salesforce, so
2229
- # that these groups cannot access customer-related documents stored in
2230
- # Salesforce. Only "Sales and Marketing" should access documents in
2231
- # the Salesforce data source.
2447
+ # A group can be tied to multiple data sources. You can delete a group
2448
+ # from accessing documents in a certain data source. For example, the
2449
+ # groups "Research", "Engineering", and "Sales and Marketing" are
2450
+ # all tied to the company's documents stored in the data sources
2451
+ # Confluence and Salesforce. You want to delete "Research" and
2452
+ # "Engineering" groups from Salesforce, so that these groups cannot
2453
+ # access customer-related documents stored in Salesforce. Only "Sales
2454
+ # and Marketing" should access documents in the Salesforce data source.
2232
2455
  #
2233
2456
  # @option params [required, String] :group_id
2234
2457
  # The identifier of the group you want to delete.
@@ -2281,10 +2504,10 @@ module Aws::Kendra
2281
2504
  # Amazon Web Services GovCloud (US-West) region.
2282
2505
  #
2283
2506
  # @option params [required, String] :index_id
2284
- # The identifier of the you want to delete a block list from.
2507
+ # The identifier of the index for the block list.
2285
2508
  #
2286
2509
  # @option params [required, String] :id
2287
- # The unique identifier of the block list that needs to be deleted.
2510
+ # The identifier of the block list you want to delete.
2288
2511
  #
2289
2512
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2290
2513
  #
@@ -2307,10 +2530,10 @@ module Aws::Kendra
2307
2530
  # Deletes an existing Amazon Kendra thesaurus.
2308
2531
  #
2309
2532
  # @option params [required, String] :id
2310
- # The identifier of the thesaurus to delete.
2533
+ # The identifier of the thesaurus you want to delete.
2311
2534
  #
2312
2535
  # @option params [required, String] :index_id
2313
- # The identifier of the index associated with the thesaurus to delete.
2536
+ # The identifier of the index for the thesaurus.
2314
2537
  #
2315
2538
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2316
2539
  #
@@ -2330,13 +2553,67 @@ module Aws::Kendra
2330
2553
  req.send_request(options)
2331
2554
  end
2332
2555
 
2556
+ # Gets information about an access control configuration that you
2557
+ # created for your documents in an index. This includes user and group
2558
+ # access information for your documents. This is useful for user context
2559
+ # filtering, where search results are filtered based on the user or
2560
+ # their group access to documents.
2561
+ #
2562
+ # @option params [required, String] :index_id
2563
+ # The identifier of the index for an access control configuration.
2564
+ #
2565
+ # @option params [required, String] :id
2566
+ # The identifier of the access control configuration you want to get
2567
+ # information on.
2568
+ #
2569
+ # @return [Types::DescribeAccessControlConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2570
+ #
2571
+ # * {Types::DescribeAccessControlConfigurationResponse#name #name} => String
2572
+ # * {Types::DescribeAccessControlConfigurationResponse#description #description} => String
2573
+ # * {Types::DescribeAccessControlConfigurationResponse#error_message #error_message} => String
2574
+ # * {Types::DescribeAccessControlConfigurationResponse#access_control_list #access_control_list} => Array&lt;Types::Principal&gt;
2575
+ # * {Types::DescribeAccessControlConfigurationResponse#hierarchical_access_control_list #hierarchical_access_control_list} => Array&lt;Types::HierarchicalPrincipal&gt;
2576
+ #
2577
+ # @example Request syntax with placeholder values
2578
+ #
2579
+ # resp = client.describe_access_control_configuration({
2580
+ # index_id: "IndexId", # required
2581
+ # id: "AccessControlConfigurationId", # required
2582
+ # })
2583
+ #
2584
+ # @example Response structure
2585
+ #
2586
+ # resp.name #=> String
2587
+ # resp.description #=> String
2588
+ # resp.error_message #=> String
2589
+ # resp.access_control_list #=> Array
2590
+ # resp.access_control_list[0].name #=> String
2591
+ # resp.access_control_list[0].type #=> String, one of "USER", "GROUP"
2592
+ # resp.access_control_list[0].access #=> String, one of "ALLOW", "DENY"
2593
+ # resp.access_control_list[0].data_source_id #=> String
2594
+ # resp.hierarchical_access_control_list #=> Array
2595
+ # resp.hierarchical_access_control_list[0].principal_list #=> Array
2596
+ # resp.hierarchical_access_control_list[0].principal_list[0].name #=> String
2597
+ # resp.hierarchical_access_control_list[0].principal_list[0].type #=> String, one of "USER", "GROUP"
2598
+ # resp.hierarchical_access_control_list[0].principal_list[0].access #=> String, one of "ALLOW", "DENY"
2599
+ # resp.hierarchical_access_control_list[0].principal_list[0].data_source_id #=> String
2600
+ #
2601
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeAccessControlConfiguration AWS API Documentation
2602
+ #
2603
+ # @overload describe_access_control_configuration(params = {})
2604
+ # @param [Hash] params ({})
2605
+ def describe_access_control_configuration(params = {}, options = {})
2606
+ req = build_request(:describe_access_control_configuration, params)
2607
+ req.send_request(options)
2608
+ end
2609
+
2333
2610
  # Gets information about an Amazon Kendra data source.
2334
2611
  #
2335
2612
  # @option params [required, String] :id
2336
- # The unique identifier of the data source to describe.
2613
+ # The identifier of the data source.
2337
2614
  #
2338
2615
  # @option params [required, String] :index_id
2339
- # The identifier of the index that contains the data source.
2616
+ # The identifier of the index used with the data source.
2340
2617
  #
2341
2618
  # @return [Types::DescribeDataSourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2342
2619
  #
@@ -2367,7 +2644,7 @@ module Aws::Kendra
2367
2644
  # resp.id #=> String
2368
2645
  # resp.index_id #=> String
2369
2646
  # resp.name #=> String
2370
- # resp.type #=> String, one of "S3", "SHAREPOINT", "DATABASE", "SALESFORCE", "ONEDRIVE", "SERVICENOW", "CUSTOM", "CONFLUENCE", "GOOGLEDRIVE", "WEBCRAWLER", "WORKDOCS", "FSX", "SLACK", "BOX", "QUIP", "JIRA", "GITHUB"
2647
+ # resp.type #=> String, one of "S3", "SHAREPOINT", "DATABASE", "SALESFORCE", "ONEDRIVE", "SERVICENOW", "CUSTOM", "CONFLUENCE", "GOOGLEDRIVE", "WEBCRAWLER", "WORKDOCS", "FSX", "SLACK", "BOX", "QUIP", "JIRA", "GITHUB", "ALFRESCO"
2371
2648
  # resp.configuration.s3_configuration.bucket_name #=> String
2372
2649
  # resp.configuration.s3_configuration.inclusion_prefixes #=> Array
2373
2650
  # resp.configuration.s3_configuration.inclusion_prefixes[0] #=> String
@@ -2399,6 +2676,7 @@ module Aws::Kendra
2399
2676
  # resp.configuration.share_point_configuration.disable_local_groups #=> Boolean
2400
2677
  # resp.configuration.share_point_configuration.ssl_certificate_s3_path.bucket #=> String
2401
2678
  # resp.configuration.share_point_configuration.ssl_certificate_s3_path.key #=> String
2679
+ # resp.configuration.share_point_configuration.authentication_type #=> String, one of "HTTP_BASIC", "OAUTH2"
2402
2680
  # resp.configuration.database_configuration.database_engine_type #=> String, one of "RDS_AURORA_MYSQL", "RDS_AURORA_POSTGRESQL", "RDS_MYSQL", "RDS_POSTGRESQL"
2403
2681
  # resp.configuration.database_configuration.connection_configuration.database_host #=> String
2404
2682
  # resp.configuration.database_configuration.connection_configuration.database_port #=> Integer
@@ -2788,6 +3066,35 @@ module Aws::Kendra
2788
3066
  # resp.configuration.git_hub_configuration.git_hub_pull_request_document_attachment_configuration_field_mappings[0].data_source_field_name #=> String
2789
3067
  # resp.configuration.git_hub_configuration.git_hub_pull_request_document_attachment_configuration_field_mappings[0].date_field_format #=> String
2790
3068
  # resp.configuration.git_hub_configuration.git_hub_pull_request_document_attachment_configuration_field_mappings[0].index_field_name #=> String
3069
+ # resp.configuration.alfresco_configuration.site_url #=> String
3070
+ # resp.configuration.alfresco_configuration.site_id #=> String
3071
+ # resp.configuration.alfresco_configuration.secret_arn #=> String
3072
+ # resp.configuration.alfresco_configuration.ssl_certificate_s3_path.bucket #=> String
3073
+ # resp.configuration.alfresco_configuration.ssl_certificate_s3_path.key #=> String
3074
+ # resp.configuration.alfresco_configuration.crawl_system_folders #=> Boolean
3075
+ # resp.configuration.alfresco_configuration.crawl_comments #=> Boolean
3076
+ # resp.configuration.alfresco_configuration.entity_filter #=> Array
3077
+ # resp.configuration.alfresco_configuration.entity_filter[0] #=> String, one of "wiki", "blog", "documentLibrary"
3078
+ # resp.configuration.alfresco_configuration.document_library_field_mappings #=> Array
3079
+ # resp.configuration.alfresco_configuration.document_library_field_mappings[0].data_source_field_name #=> String
3080
+ # resp.configuration.alfresco_configuration.document_library_field_mappings[0].date_field_format #=> String
3081
+ # resp.configuration.alfresco_configuration.document_library_field_mappings[0].index_field_name #=> String
3082
+ # resp.configuration.alfresco_configuration.blog_field_mappings #=> Array
3083
+ # resp.configuration.alfresco_configuration.blog_field_mappings[0].data_source_field_name #=> String
3084
+ # resp.configuration.alfresco_configuration.blog_field_mappings[0].date_field_format #=> String
3085
+ # resp.configuration.alfresco_configuration.blog_field_mappings[0].index_field_name #=> String
3086
+ # resp.configuration.alfresco_configuration.wiki_field_mappings #=> Array
3087
+ # resp.configuration.alfresco_configuration.wiki_field_mappings[0].data_source_field_name #=> String
3088
+ # resp.configuration.alfresco_configuration.wiki_field_mappings[0].date_field_format #=> String
3089
+ # resp.configuration.alfresco_configuration.wiki_field_mappings[0].index_field_name #=> String
3090
+ # resp.configuration.alfresco_configuration.inclusion_patterns #=> Array
3091
+ # resp.configuration.alfresco_configuration.inclusion_patterns[0] #=> String
3092
+ # resp.configuration.alfresco_configuration.exclusion_patterns #=> Array
3093
+ # resp.configuration.alfresco_configuration.exclusion_patterns[0] #=> String
3094
+ # resp.configuration.alfresco_configuration.vpc_configuration.subnet_ids #=> Array
3095
+ # resp.configuration.alfresco_configuration.vpc_configuration.subnet_ids[0] #=> String
3096
+ # resp.configuration.alfresco_configuration.vpc_configuration.security_group_ids #=> Array
3097
+ # resp.configuration.alfresco_configuration.vpc_configuration.security_group_ids[0] #=> String
2791
3098
  # resp.created_at #=> Time
2792
3099
  # resp.updated_at #=> Time
2793
3100
  # resp.description #=> String
@@ -2854,8 +3161,7 @@ module Aws::Kendra
2854
3161
  # information on.
2855
3162
  #
2856
3163
  # @option params [required, String] :index_id
2857
- # The identifier of the index for your Amazon Kendra experience you want
2858
- # to get information on.
3164
+ # The identifier of the index for your Amazon Kendra experience.
2859
3165
  #
2860
3166
  # @return [Types::DescribeExperienceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2861
3167
  #
@@ -2911,10 +3217,10 @@ module Aws::Kendra
2911
3217
  # Gets information about an FAQ list.
2912
3218
  #
2913
3219
  # @option params [required, String] :id
2914
- # The unique identifier of the FAQ.
3220
+ # The identifier of the FAQ you want to get information on.
2915
3221
  #
2916
3222
  # @option params [required, String] :index_id
2917
- # The identifier of the index that contains the FAQ.
3223
+ # The identifier of the index for the FAQ.
2918
3224
  #
2919
3225
  # @return [Types::DescribeFaqResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2920
3226
  #
@@ -2963,10 +3269,10 @@ module Aws::Kendra
2963
3269
  req.send_request(options)
2964
3270
  end
2965
3271
 
2966
- # Describes an existing Amazon Kendra index.
3272
+ # Gets information about an existing Amazon Kendra index.
2967
3273
  #
2968
3274
  # @option params [required, String] :id
2969
- # The identifier of the index to describe.
3275
+ # The identifier of the index you want to get information on.
2970
3276
  #
2971
3277
  # @return [Types::DescribeIndexResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2972
3278
  #
@@ -3103,7 +3409,8 @@ module Aws::Kendra
3103
3409
  req.send_request(options)
3104
3410
  end
3105
3411
 
3106
- # Describes a block list used for query suggestions for an index.
3412
+ # Gets information about a block list used for query suggestions for an
3413
+ # index.
3107
3414
  #
3108
3415
  # This is used to check the current settings that are applied to a block
3109
3416
  # list.
@@ -3115,7 +3422,7 @@ module Aws::Kendra
3115
3422
  # The identifier of the index for the block list.
3116
3423
  #
3117
3424
  # @option params [required, String] :id
3118
- # The unique identifier of the block list.
3425
+ # The identifier of the block list you want to get information on.
3119
3426
  #
3120
3427
  # @return [Types::DescribeQuerySuggestionsBlockListResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3121
3428
  #
@@ -3164,7 +3471,7 @@ module Aws::Kendra
3164
3471
  req.send_request(options)
3165
3472
  end
3166
3473
 
3167
- # Describes the settings of query suggestions for an index.
3474
+ # Gets information on the settings of query suggestions for an index.
3168
3475
  #
3169
3476
  # This is used to check the current settings applied to query
3170
3477
  # suggestions.
@@ -3173,8 +3480,8 @@ module Aws::Kendra
3173
3480
  # Amazon Web Services GovCloud (US-West) region.
3174
3481
  #
3175
3482
  # @option params [required, String] :index_id
3176
- # The identifier of the index you want to describe query suggestions
3177
- # settings for.
3483
+ # The identifier of the index with query suggestions that you want to
3484
+ # get information on.
3178
3485
  #
3179
3486
  # @return [Types::DescribeQuerySuggestionsConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3180
3487
  #
@@ -3215,13 +3522,13 @@ module Aws::Kendra
3215
3522
  req.send_request(options)
3216
3523
  end
3217
3524
 
3218
- # Describes an existing Amazon Kendra thesaurus.
3525
+ # Gets information about an existing Amazon Kendra thesaurus.
3219
3526
  #
3220
3527
  # @option params [required, String] :id
3221
- # The identifier of the thesaurus to describe.
3528
+ # The identifier of the thesaurus you want to get information on.
3222
3529
  #
3223
3530
  # @option params [required, String] :index_id
3224
- # The identifier of the index associated with the thesaurus to describe.
3531
+ # The identifier of the index for the thesaurus.
3225
3532
  #
3226
3533
  # @return [Types::DescribeThesaurusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3227
3534
  #
@@ -3515,13 +3822,60 @@ module Aws::Kendra
3515
3822
  req.send_request(options)
3516
3823
  end
3517
3824
 
3825
+ # Lists one or more access control configurations for an index. This
3826
+ # includes user and group access information for your documents. This is
3827
+ # useful for user context filtering, where search results are filtered
3828
+ # based on the user or their group access to documents.
3829
+ #
3830
+ # @option params [required, String] :index_id
3831
+ # The identifier of the index for the access control configuration.
3832
+ #
3833
+ # @option params [String] :next_token
3834
+ # If the previous response was incomplete (because there's more data to
3835
+ # retrieve), Amazon Kendra returns a pagination token in the response.
3836
+ # You can use this pagination token to retrieve the next set of access
3837
+ # control configurations.
3838
+ #
3839
+ # @option params [Integer] :max_results
3840
+ # The maximum number of access control configurations to return.
3841
+ #
3842
+ # @return [Types::ListAccessControlConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3843
+ #
3844
+ # * {Types::ListAccessControlConfigurationsResponse#next_token #next_token} => String
3845
+ # * {Types::ListAccessControlConfigurationsResponse#access_control_configurations #access_control_configurations} => Array&lt;Types::AccessControlConfigurationSummary&gt;
3846
+ #
3847
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3848
+ #
3849
+ # @example Request syntax with placeholder values
3850
+ #
3851
+ # resp = client.list_access_control_configurations({
3852
+ # index_id: "IndexId", # required
3853
+ # next_token: "String",
3854
+ # max_results: 1,
3855
+ # })
3856
+ #
3857
+ # @example Response structure
3858
+ #
3859
+ # resp.next_token #=> String
3860
+ # resp.access_control_configurations #=> Array
3861
+ # resp.access_control_configurations[0].id #=> String
3862
+ #
3863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListAccessControlConfigurations AWS API Documentation
3864
+ #
3865
+ # @overload list_access_control_configurations(params = {})
3866
+ # @param [Hash] params ({})
3867
+ def list_access_control_configurations(params = {}, options = {})
3868
+ req = build_request(:list_access_control_configurations, params)
3869
+ req.send_request(options)
3870
+ end
3871
+
3518
3872
  # Gets statistics about synchronizing Amazon Kendra with a data source.
3519
3873
  #
3520
3874
  # @option params [required, String] :id
3521
3875
  # The identifier of the data source.
3522
3876
  #
3523
3877
  # @option params [required, String] :index_id
3524
- # The identifier of the index that contains the data source.
3878
+ # The identifier of the index used with the data source.
3525
3879
  #
3526
3880
  # @option params [String] :next_token
3527
3881
  # If the previous response was incomplete (because there is more data to
@@ -3591,7 +3945,7 @@ module Aws::Kendra
3591
3945
  # Lists the data sources that you have created.
3592
3946
  #
3593
3947
  # @option params [required, String] :index_id
3594
- # The identifier of the index that contains the data source.
3948
+ # The identifier of the index used with one or more data sources.
3595
3949
  #
3596
3950
  # @option params [String] :next_token
3597
3951
  # If the previous response was incomplete (because there is more data to
@@ -3622,7 +3976,7 @@ module Aws::Kendra
3622
3976
  # resp.summary_items #=> Array
3623
3977
  # resp.summary_items[0].name #=> String
3624
3978
  # resp.summary_items[0].id #=> String
3625
- # resp.summary_items[0].type #=> String, one of "S3", "SHAREPOINT", "DATABASE", "SALESFORCE", "ONEDRIVE", "SERVICENOW", "CUSTOM", "CONFLUENCE", "GOOGLEDRIVE", "WEBCRAWLER", "WORKDOCS", "FSX", "SLACK", "BOX", "QUIP", "JIRA", "GITHUB"
3979
+ # resp.summary_items[0].type #=> String, one of "S3", "SHAREPOINT", "DATABASE", "SALESFORCE", "ONEDRIVE", "SERVICENOW", "CUSTOM", "CONFLUENCE", "GOOGLEDRIVE", "WEBCRAWLER", "WORKDOCS", "FSX", "SLACK", "BOX", "QUIP", "JIRA", "GITHUB", "ALFRESCO"
3626
3980
  # resp.summary_items[0].created_at #=> Time
3627
3981
  # resp.summary_items[0].updated_at #=> Time
3628
3982
  # resp.summary_items[0].status #=> String, one of "CREATING", "DELETING", "FAILED", "UPDATING", "ACTIVE"
@@ -4062,10 +4416,10 @@ module Aws::Kendra
4062
4416
  req.send_request(options)
4063
4417
  end
4064
4418
 
4065
- # Lists the Amazon Kendra thesauri associated with an index.
4419
+ # Lists the thesauri for an index.
4066
4420
  #
4067
4421
  # @option params [required, String] :index_id
4068
- # The identifier of the index associated with the thesaurus to list.
4422
+ # The identifier of the index with one or more thesauri.
4069
4423
  #
4070
4424
  # @option params [String] :next_token
4071
4425
  # If the previous response was incomplete (because there is more data to
@@ -4121,10 +4475,9 @@ module Aws::Kendra
4121
4475
  # property group, can see top-secret company documents in their search
4122
4476
  # results.
4123
4477
  #
4124
- # You map users to their groups when you want to filter search results
4125
- # for different users based on their group’s access to documents. For
4126
- # more information on filtering search results for different users, see
4127
- # [Filtering on user context][1].
4478
+ # This is useful for user context filtering, where search results are
4479
+ # filtered based on the user or their group access to documents. For
4480
+ # more information, see [Filtering on user context][1].
4128
4481
  #
4129
4482
  # If more than five `PUT` actions for a group are currently processing,
4130
4483
  # a validation exception is thrown.
@@ -4721,46 +5074,147 @@ module Aws::Kendra
4721
5074
  req.send_request(options)
4722
5075
  end
4723
5076
 
5077
+ # Updates an access control configuration for your documents in an
5078
+ # index. This includes user and group access information for your
5079
+ # documents. This is useful for user context filtering, where search
5080
+ # results are filtered based on the user or their group access to
5081
+ # documents.
5082
+ #
5083
+ # You can update an access control configuration you created without
5084
+ # indexing all of your documents again. For example, your index contains
5085
+ # top-secret company documents that only certain employees or users
5086
+ # should access. You created an 'allow' access control configuration
5087
+ # for one user who recently joined the 'top-secret' team, switching
5088
+ # from a team with 'deny' access to top-secret documents. However, the
5089
+ # user suddenly returns to their previous team and should no longer have
5090
+ # access to top secret documents. You can update the access control
5091
+ # configuration to re-configure access control for your documents as
5092
+ # circumstances change.
5093
+ #
5094
+ # You call the [BatchPutDocument][1] API to apply the updated access
5095
+ # control configuration, with the `AccessControlConfigurationId`
5096
+ # included in the [Document][2] object. If you use an S3 bucket as a
5097
+ # data source, you synchronize your data source to apply the
5098
+ # `AccessControlConfigurationId` in the `.metadata.json` file. Amazon
5099
+ # Kendra currently only supports access control configuration for S3
5100
+ # data sources and documents indexed using the `BatchPutDocument` API.
5101
+ #
5102
+ #
5103
+ #
5104
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_BatchPutDocument.html
5105
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/API_Document.html
5106
+ #
5107
+ # @option params [required, String] :index_id
5108
+ # The identifier of the index for an access control configuration.
5109
+ #
5110
+ # @option params [required, String] :id
5111
+ # The identifier of the access control configuration you want to update.
5112
+ #
5113
+ # @option params [String] :name
5114
+ # A new name for the access control configuration.
5115
+ #
5116
+ # @option params [String] :description
5117
+ # A new description for the access control configuration.
5118
+ #
5119
+ # @option params [Array<Types::Principal>] :access_control_list
5120
+ # Information you want to update on principals (users and/or groups) and
5121
+ # which documents they should have access to. This is useful for user
5122
+ # context filtering, where search results are filtered based on the user
5123
+ # or their group access to documents.
5124
+ #
5125
+ # @option params [Array<Types::HierarchicalPrincipal>] :hierarchical_access_control_list
5126
+ # The updated list of [principal][1] lists that define the hierarchy for
5127
+ # which documents users should have access to.
5128
+ #
5129
+ #
5130
+ #
5131
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_Principal.html
5132
+ #
5133
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5134
+ #
5135
+ # @example Request syntax with placeholder values
5136
+ #
5137
+ # resp = client.update_access_control_configuration({
5138
+ # index_id: "IndexId", # required
5139
+ # id: "AccessControlConfigurationId", # required
5140
+ # name: "AccessControlConfigurationName",
5141
+ # description: "Description",
5142
+ # access_control_list: [
5143
+ # {
5144
+ # name: "PrincipalName", # required
5145
+ # type: "USER", # required, accepts USER, GROUP
5146
+ # access: "ALLOW", # required, accepts ALLOW, DENY
5147
+ # data_source_id: "DataSourceId",
5148
+ # },
5149
+ # ],
5150
+ # hierarchical_access_control_list: [
5151
+ # {
5152
+ # principal_list: [ # required
5153
+ # {
5154
+ # name: "PrincipalName", # required
5155
+ # type: "USER", # required, accepts USER, GROUP
5156
+ # access: "ALLOW", # required, accepts ALLOW, DENY
5157
+ # data_source_id: "DataSourceId",
5158
+ # },
5159
+ # ],
5160
+ # },
5161
+ # ],
5162
+ # })
5163
+ #
5164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UpdateAccessControlConfiguration AWS API Documentation
5165
+ #
5166
+ # @overload update_access_control_configuration(params = {})
5167
+ # @param [Hash] params ({})
5168
+ def update_access_control_configuration(params = {}, options = {})
5169
+ req = build_request(:update_access_control_configuration, params)
5170
+ req.send_request(options)
5171
+ end
5172
+
4724
5173
  # Updates an existing Amazon Kendra data source.
4725
5174
  #
4726
5175
  # @option params [required, String] :id
4727
- # The unique identifier of the data source to update.
5176
+ # The identifier of the data source you want to update.
4728
5177
  #
4729
5178
  # @option params [String] :name
4730
- # The name of the data source to update. The name of the data source
4731
- # can't be updated. To rename a data source you must delete the data
4732
- # source and re-create it.
5179
+ # A new name for the data source connector. You must first delete the
5180
+ # data source and re-create it to change the name of the data source.
4733
5181
  #
4734
5182
  # @option params [required, String] :index_id
4735
- # The identifier of the index that contains the data source to update.
5183
+ # The identifier of the index used with the data source connector.
4736
5184
  #
4737
5185
  # @option params [Types::DataSourceConfiguration] :configuration
4738
- # Configuration information for an Amazon Kendra data source you want to
4739
- # update.
5186
+ # Configuration information you want to update for the data source
5187
+ # connector.
4740
5188
  #
4741
5189
  # @option params [String] :description
4742
- # The new description for the data source.
5190
+ # A new description for the data source connector.
4743
5191
  #
4744
5192
  # @option params [String] :schedule
4745
- # The new update schedule for the data source.
5193
+ # The sync schedule you want to update for the data source connector.
4746
5194
  #
4747
5195
  # @option params [String] :role_arn
4748
- # The Amazon Resource Name (ARN) of the new role to use when the data
4749
- # source is accessing resources on your behalf.
5196
+ # The Amazon Resource Name (ARN) of a role with permission to access the
5197
+ # data source. For more information, see [IAM Roles for Amazon
5198
+ # Kendra][1].
5199
+ #
5200
+ #
5201
+ #
5202
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
4750
5203
  #
4751
5204
  # @option params [String] :language_code
4752
- # The code for a language. This allows you to support a language for all
4753
- # documents when updating the data source. English is supported by
4754
- # default. For more information on supported languages, including their
4755
- # codes, see [Adding documents in languages other than English][1].
5205
+ # The code for a language you want to update for the data source
5206
+ # connector. This allows you to support a language for all documents
5207
+ # when updating the data source. English is supported by default. For
5208
+ # more information on supported languages, including their codes, see
5209
+ # [Adding documents in languages other than English][1].
4756
5210
  #
4757
5211
  #
4758
5212
  #
4759
5213
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html
4760
5214
  #
4761
5215
  # @option params [Types::CustomDocumentEnrichmentConfiguration] :custom_document_enrichment_configuration
4762
- # Configuration information for altering document metadata and content
4763
- # during the document ingestion process when you update a data source.
5216
+ # Configuration information you want to update for altering document
5217
+ # metadata and content during the document ingestion process.
4764
5218
  #
4765
5219
  # For more information on how to create, modify and delete document
4766
5220
  # metadata, or make other content alterations when you ingest documents
@@ -4817,6 +5271,7 @@ module Aws::Kendra
4817
5271
  # bucket: "S3BucketName", # required
4818
5272
  # key: "S3ObjectKey", # required
4819
5273
  # },
5274
+ # authentication_type: "HTTP_BASIC", # accepts HTTP_BASIC, OAUTH2
4820
5275
  # },
4821
5276
  # database_configuration: {
4822
5277
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -5353,6 +5808,45 @@ module Aws::Kendra
5353
5808
  # },
5354
5809
  # ],
5355
5810
  # },
5811
+ # alfresco_configuration: {
5812
+ # site_url: "SiteUrl", # required
5813
+ # site_id: "SiteId", # required
5814
+ # secret_arn: "SecretArn", # required
5815
+ # ssl_certificate_s3_path: { # required
5816
+ # bucket: "S3BucketName", # required
5817
+ # key: "S3ObjectKey", # required
5818
+ # },
5819
+ # crawl_system_folders: false,
5820
+ # crawl_comments: false,
5821
+ # entity_filter: ["wiki"], # accepts wiki, blog, documentLibrary
5822
+ # document_library_field_mappings: [
5823
+ # {
5824
+ # data_source_field_name: "DataSourceFieldName", # required
5825
+ # date_field_format: "DataSourceDateFieldFormat",
5826
+ # index_field_name: "IndexFieldName", # required
5827
+ # },
5828
+ # ],
5829
+ # blog_field_mappings: [
5830
+ # {
5831
+ # data_source_field_name: "DataSourceFieldName", # required
5832
+ # date_field_format: "DataSourceDateFieldFormat",
5833
+ # index_field_name: "IndexFieldName", # required
5834
+ # },
5835
+ # ],
5836
+ # wiki_field_mappings: [
5837
+ # {
5838
+ # data_source_field_name: "DataSourceFieldName", # required
5839
+ # date_field_format: "DataSourceDateFieldFormat",
5840
+ # index_field_name: "IndexFieldName", # required
5841
+ # },
5842
+ # ],
5843
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
5844
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
5845
+ # vpc_configuration: {
5846
+ # subnet_ids: ["SubnetId"], # required
5847
+ # security_group_ids: ["VpcSecurityGroupId"], # required
5848
+ # },
5849
+ # },
5356
5850
  # },
5357
5851
  # description: "Description",
5358
5852
  # schedule: "ScanSchedule",
@@ -5437,11 +5931,10 @@ module Aws::Kendra
5437
5931
  # The identifier of your Amazon Kendra experience you want to update.
5438
5932
  #
5439
5933
  # @option params [String] :name
5440
- # The name of your Amazon Kendra experience you want to update.
5934
+ # A new name for your Amazon Kendra experience.
5441
5935
  #
5442
5936
  # @option params [required, String] :index_id
5443
- # The identifier of the index for your Amazon Kendra experience you want
5444
- # to update.
5937
+ # The identifier of the index for your Amazon Kendra experience.
5445
5938
  #
5446
5939
  # @option params [String] :role_arn
5447
5940
  # The Amazon Resource Name (ARN) of a role with permission to access
@@ -5454,10 +5947,11 @@ module Aws::Kendra
5454
5947
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
5455
5948
  #
5456
5949
  # @option params [Types::ExperienceConfiguration] :configuration
5457
- # Configuration information for your Amazon Kendra you want to update.
5950
+ # Configuration information you want to update for your Amazon Kendra
5951
+ # experience.
5458
5952
  #
5459
5953
  # @option params [String] :description
5460
- # The description of your Amazon Kendra experience you want to update.
5954
+ # A new description for your Amazon Kendra experience.
5461
5955
  #
5462
5956
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5463
5957
  #
@@ -5493,20 +5987,23 @@ module Aws::Kendra
5493
5987
  # Updates an existing Amazon Kendra index.
5494
5988
  #
5495
5989
  # @option params [required, String] :id
5496
- # The identifier of the index to update.
5990
+ # The identifier of the index you want to update.
5497
5991
  #
5498
5992
  # @option params [String] :name
5499
- # The name of the index to update.
5993
+ # The name of the index you want to update.
5500
5994
  #
5501
5995
  # @option params [String] :role_arn
5502
- # A new IAM role that gives Amazon Kendra permission to access your
5503
- # Amazon CloudWatch logs.
5996
+ # An Identity and Access Management (IAM) role that gives Amazon Kendra
5997
+ # permission to access Amazon CloudWatch logs and metrics.
5504
5998
  #
5505
5999
  # @option params [String] :description
5506
6000
  # A new description for the index.
5507
6001
  #
5508
6002
  # @option params [Array<Types::DocumentMetadataConfiguration>] :document_metadata_configuration_updates
5509
- # The document metadata you want to update.
6003
+ # The document metadata configuration you want to update for the index.
6004
+ # Document metadata are fields or attributes associated with your
6005
+ # documents. For example, the company department name associated with
6006
+ # each document.
5510
6007
  #
5511
6008
  # @option params [Types::CapacityUnitsConfiguration] :capacity_units
5512
6009
  # Sets the number of additional document storage and query capacity
@@ -5615,16 +6112,16 @@ module Aws::Kendra
5615
6112
  # Amazon Web Services GovCloud (US-West) region.
5616
6113
  #
5617
6114
  # @option params [required, String] :index_id
5618
- # The identifier of the index for a block list.
6115
+ # The identifier of the index for the block list.
5619
6116
  #
5620
6117
  # @option params [required, String] :id
5621
- # The unique identifier of a block list.
6118
+ # The identifier of the block list you want to update.
5622
6119
  #
5623
6120
  # @option params [String] :name
5624
- # The name of a block list.
6121
+ # A new name for the block list.
5625
6122
  #
5626
6123
  # @option params [String] :description
5627
- # The description for a block list.
6124
+ # A new description for the block list.
5628
6125
  #
5629
6126
  # @option params [Types::S3Path] :source_s3_path
5630
6127
  # The S3 path where your block list text file sits in S3.
@@ -5686,8 +6183,7 @@ module Aws::Kendra
5686
6183
  # Amazon Web Services GovCloud (US-West) region.
5687
6184
  #
5688
6185
  # @option params [required, String] :index_id
5689
- # The identifier of the index you want to update query suggestions
5690
- # settings for.
6186
+ # The identifier of the index with query suggestions you want to update.
5691
6187
  #
5692
6188
  # @option params [String] :mode
5693
6189
  # Set the mode to `ENABLED` or `LEARN_ONLY`.
@@ -5765,22 +6261,23 @@ module Aws::Kendra
5765
6261
  req.send_request(options)
5766
6262
  end
5767
6263
 
5768
- # Updates a thesaurus file associated with an index.
6264
+ # Updates a thesaurus for an index.
5769
6265
  #
5770
6266
  # @option params [required, String] :id
5771
- # The identifier of the thesaurus to update.
6267
+ # The identifier of the thesaurus you want to update.
5772
6268
  #
5773
6269
  # @option params [String] :name
5774
- # The updated name of the thesaurus.
6270
+ # A new name for the thesaurus.
5775
6271
  #
5776
6272
  # @option params [required, String] :index_id
5777
- # The identifier of the index associated with the thesaurus to update.
6273
+ # The identifier of the index for the thesaurus.
5778
6274
  #
5779
6275
  # @option params [String] :description
5780
- # The updated description of the thesaurus.
6276
+ # A new description for the thesaurus.
5781
6277
  #
5782
6278
  # @option params [String] :role_arn
5783
- # The updated role ARN of the thesaurus.
6279
+ # An IAM role that gives Amazon Kendra permissions to access thesaurus
6280
+ # file specified in `SourceS3Path`.
5784
6281
  #
5785
6282
  # @option params [Types::S3Path] :source_s3_path
5786
6283
  # Information required to find a specific file in an Amazon S3 bucket.
@@ -5823,7 +6320,7 @@ module Aws::Kendra
5823
6320
  params: params,
5824
6321
  config: config)
5825
6322
  context[:gem_name] = 'aws-sdk-kendra'
5826
- context[:gem_version] = '1.52.0'
6323
+ context[:gem_version] = '1.55.0'
5827
6324
  Seahorse::Client::Request.new(handlers, context)
5828
6325
  end
5829
6326