aws-sdk-kendra 1.37.0 → 1.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -112,6 +112,115 @@ module Aws::Kendra
112
112
  include Aws::Structure
113
113
  end
114
114
 
115
+ # @note When making an API call, you may pass AssociateEntitiesToExperienceRequest
116
+ # data as a hash:
117
+ #
118
+ # {
119
+ # id: "ExperienceId", # required
120
+ # index_id: "IndexId", # required
121
+ # entity_list: [ # required
122
+ # {
123
+ # entity_id: "EntityId", # required
124
+ # entity_type: "USER", # required, accepts USER, GROUP
125
+ # },
126
+ # ],
127
+ # }
128
+ #
129
+ # @!attribute [rw] id
130
+ # The identifier of your Amazon Kendra experience.
131
+ # @return [String]
132
+ #
133
+ # @!attribute [rw] index_id
134
+ # The identifier of the index for your Amazon Kendra experience.
135
+ # @return [String]
136
+ #
137
+ # @!attribute [rw] entity_list
138
+ # Lists users or groups in your Amazon Web Services SSO identity
139
+ # source.
140
+ # @return [Array<Types::EntityConfiguration>]
141
+ #
142
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/AssociateEntitiesToExperienceRequest AWS API Documentation
143
+ #
144
+ class AssociateEntitiesToExperienceRequest < Struct.new(
145
+ :id,
146
+ :index_id,
147
+ :entity_list)
148
+ SENSITIVE = []
149
+ include Aws::Structure
150
+ end
151
+
152
+ # @!attribute [rw] failed_entity_list
153
+ # Lists the users or groups in your Amazon Web Services SSO identity
154
+ # source that failed to properly configure with your Amazon Kendra
155
+ # experience.
156
+ # @return [Array<Types::FailedEntity>]
157
+ #
158
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/AssociateEntitiesToExperienceResponse AWS API Documentation
159
+ #
160
+ class AssociateEntitiesToExperienceResponse < Struct.new(
161
+ :failed_entity_list)
162
+ SENSITIVE = []
163
+ include Aws::Structure
164
+ end
165
+
166
+ # @note When making an API call, you may pass AssociatePersonasToEntitiesRequest
167
+ # data as a hash:
168
+ #
169
+ # {
170
+ # id: "ExperienceId", # required
171
+ # index_id: "IndexId", # required
172
+ # personas: [ # required
173
+ # {
174
+ # entity_id: "EntityId", # required
175
+ # persona: "OWNER", # required, accepts OWNER, VIEWER
176
+ # },
177
+ # ],
178
+ # }
179
+ #
180
+ # @!attribute [rw] id
181
+ # The identifier of your Amazon Kendra experience.
182
+ # @return [String]
183
+ #
184
+ # @!attribute [rw] index_id
185
+ # The identifier of the index for your Amazon Kendra experience.
186
+ # @return [String]
187
+ #
188
+ # @!attribute [rw] personas
189
+ # The personas that define the specific permissions of users or groups
190
+ # in your Amazon Web Services SSO identity source. The available
191
+ # personas or access roles are `Owner` and `Viewer`. For more
192
+ # information on these personas, see [Providing access to your search
193
+ # page][1].
194
+ #
195
+ #
196
+ #
197
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/deploying-search-experience-no-code.html#access-search-experience
198
+ # @return [Array<Types::EntityPersonaConfiguration>]
199
+ #
200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/AssociatePersonasToEntitiesRequest AWS API Documentation
201
+ #
202
+ class AssociatePersonasToEntitiesRequest < Struct.new(
203
+ :id,
204
+ :index_id,
205
+ :personas)
206
+ SENSITIVE = []
207
+ include Aws::Structure
208
+ end
209
+
210
+ # @!attribute [rw] failed_entity_list
211
+ # Lists the users or groups in your Amazon Web Services SSO identity
212
+ # source that failed to properly configure with your Amazon Kendra
213
+ # experience.
214
+ # @return [Array<Types::FailedEntity>]
215
+ #
216
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/AssociatePersonasToEntitiesResponse AWS API Documentation
217
+ #
218
+ class AssociatePersonasToEntitiesResponse < Struct.new(
219
+ :failed_entity_list)
220
+ SENSITIVE = []
221
+ include Aws::Structure
222
+ end
223
+
115
224
  # Provides filtering the query results based on document attributes.
116
225
  #
117
226
  # When you use the `AndAllFilters` or `OrAllFilters`, filters you can
@@ -122,7 +231,7 @@ module Aws::Kendra
122
231
  #
123
232
  # 1. ` <OrAllFilters>`
124
233
  #
125
- # 2. ` <EqualTo>`
234
+ # 2. ` <EqualsTo>`
126
235
  #
127
236
  # If you use more than 2 layers, you receive a `ValidationException`
128
237
  # exception with the message "`AttributeFilter` cannot have a depth of
@@ -557,7 +666,7 @@ module Aws::Kendra
557
666
  # @return [Integer]
558
667
  #
559
668
  # @!attribute [rw] credentials
560
- # Your secret ARN, which you can create in [AWS Secrets Manager][1]
669
+ # Your secret ARN, which you can create in [Secrets Manager][1]
561
670
  #
562
671
  # You use a secret if basic authentication credentials are required to
563
672
  # connect to a website. The secret stores your credentials of user
@@ -800,6 +909,62 @@ module Aws::Kendra
800
909
  # content_type: "PDF", # accepts PDF, HTML, MS_WORD, PLAIN_TEXT, PPT
801
910
  # },
802
911
  # ],
912
+ # custom_document_enrichment_configuration: {
913
+ # inline_configurations: [
914
+ # {
915
+ # condition: {
916
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
917
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
918
+ # condition_on_value: {
919
+ # string_value: "DocumentAttributeStringValue",
920
+ # string_list_value: ["String"],
921
+ # long_value: 1,
922
+ # date_value: Time.now,
923
+ # },
924
+ # },
925
+ # target: {
926
+ # target_document_attribute_key: "DocumentAttributeKey",
927
+ # target_document_attribute_value_deletion: false,
928
+ # target_document_attribute_value: {
929
+ # string_value: "DocumentAttributeStringValue",
930
+ # string_list_value: ["String"],
931
+ # long_value: 1,
932
+ # date_value: Time.now,
933
+ # },
934
+ # },
935
+ # document_content_deletion: false,
936
+ # },
937
+ # ],
938
+ # pre_extraction_hook_configuration: {
939
+ # invocation_condition: {
940
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
941
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
942
+ # condition_on_value: {
943
+ # string_value: "DocumentAttributeStringValue",
944
+ # string_list_value: ["String"],
945
+ # long_value: 1,
946
+ # date_value: Time.now,
947
+ # },
948
+ # },
949
+ # lambda_arn: "LambdaArn", # required
950
+ # s3_bucket: "S3BucketName", # required
951
+ # },
952
+ # post_extraction_hook_configuration: {
953
+ # invocation_condition: {
954
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
955
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
956
+ # condition_on_value: {
957
+ # string_value: "DocumentAttributeStringValue",
958
+ # string_list_value: ["String"],
959
+ # long_value: 1,
960
+ # date_value: Time.now,
961
+ # },
962
+ # },
963
+ # lambda_arn: "LambdaArn", # required
964
+ # s3_bucket: "S3BucketName", # required
965
+ # },
966
+ # role_arn: "RoleArn",
967
+ # },
803
968
  # }
804
969
  #
805
970
  # @!attribute [rw] index_id
@@ -843,12 +1008,28 @@ module Aws::Kendra
843
1008
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/quotas.html
844
1009
  # @return [Array<Types::Document>]
845
1010
  #
1011
+ # @!attribute [rw] custom_document_enrichment_configuration
1012
+ # Configuration information for altering your document metadata and
1013
+ # content during the document ingestion process when you use the
1014
+ # `BatchPutDocument` operation.
1015
+ #
1016
+ # For more information on how to create, modify and delete document
1017
+ # metadata, or make other content alterations when you ingest
1018
+ # documents into Amazon Kendra, see [Customizing document metadata
1019
+ # during the ingestion process][1].
1020
+ #
1021
+ #
1022
+ #
1023
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html
1024
+ # @return [Types::CustomDocumentEnrichmentConfiguration]
1025
+ #
846
1026
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/BatchPutDocumentRequest AWS API Documentation
847
1027
  #
848
1028
  class BatchPutDocumentRequest < Struct.new(
849
1029
  :index_id,
850
1030
  :role_arn,
851
- :documents)
1031
+ :documents,
1032
+ :custom_document_enrichment_configuration)
852
1033
  SENSITIVE = []
853
1034
  include Aws::Structure
854
1035
  end
@@ -1293,7 +1474,7 @@ module Aws::Kendra
1293
1474
  # @return [String]
1294
1475
  #
1295
1476
  # @!attribute [rw] secret_arn
1296
- # The Amazon Resource Name (ARN) of an Secrets Managersecret that
1477
+ # The Amazon Resource Name (ARN) of an Secrets Manager secret that
1297
1478
  # contains the key/value pairs required to connect to your Confluence
1298
1479
  # server. The secret must contain a JSON structure with the following
1299
1480
  # keys:
@@ -1610,6 +1791,47 @@ module Aws::Kendra
1610
1791
  include Aws::Structure
1611
1792
  end
1612
1793
 
1794
+ # Configuration information for your content sources, such as data
1795
+ # sources, FAQs, and content indexed directly via [BatchPutDocument][1].
1796
+ #
1797
+ #
1798
+ #
1799
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_BatchPutDocument.html
1800
+ #
1801
+ # @note When making an API call, you may pass ContentSourceConfiguration
1802
+ # data as a hash:
1803
+ #
1804
+ # {
1805
+ # data_source_ids: ["DataSourceId"],
1806
+ # faq_ids: ["FaqId"],
1807
+ # direct_put_content: false,
1808
+ # }
1809
+ #
1810
+ # @!attribute [rw] data_source_ids
1811
+ # The identifier of the data sources you want to use for your Amazon
1812
+ # Kendra experience.
1813
+ # @return [Array<String>]
1814
+ #
1815
+ # @!attribute [rw] faq_ids
1816
+ # The identifier of the FAQs that you want to use for your Amazon
1817
+ # Kendra experience.
1818
+ # @return [Array<String>]
1819
+ #
1820
+ # @!attribute [rw] direct_put_content
1821
+ # `TRUE` to use documents you indexed directly using the
1822
+ # `BatchPutDocument` operation.
1823
+ # @return [Boolean]
1824
+ #
1825
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ContentSourceConfiguration AWS API Documentation
1826
+ #
1827
+ class ContentSourceConfiguration < Struct.new(
1828
+ :data_source_ids,
1829
+ :faq_ids,
1830
+ :direct_put_content)
1831
+ SENSITIVE = []
1832
+ include Aws::Structure
1833
+ end
1834
+
1613
1835
  # @note When making an API call, you may pass CreateDataSourceRequest
1614
1836
  # data as a hash:
1615
1837
  #
@@ -1940,6 +2162,62 @@ module Aws::Kendra
1940
2162
  # ],
1941
2163
  # client_token: "ClientTokenName",
1942
2164
  # language_code: "LanguageCode",
2165
+ # custom_document_enrichment_configuration: {
2166
+ # inline_configurations: [
2167
+ # {
2168
+ # condition: {
2169
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
2170
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
2171
+ # condition_on_value: {
2172
+ # string_value: "DocumentAttributeStringValue",
2173
+ # string_list_value: ["String"],
2174
+ # long_value: 1,
2175
+ # date_value: Time.now,
2176
+ # },
2177
+ # },
2178
+ # target: {
2179
+ # target_document_attribute_key: "DocumentAttributeKey",
2180
+ # target_document_attribute_value_deletion: false,
2181
+ # target_document_attribute_value: {
2182
+ # string_value: "DocumentAttributeStringValue",
2183
+ # string_list_value: ["String"],
2184
+ # long_value: 1,
2185
+ # date_value: Time.now,
2186
+ # },
2187
+ # },
2188
+ # document_content_deletion: false,
2189
+ # },
2190
+ # ],
2191
+ # pre_extraction_hook_configuration: {
2192
+ # invocation_condition: {
2193
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
2194
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
2195
+ # condition_on_value: {
2196
+ # string_value: "DocumentAttributeStringValue",
2197
+ # string_list_value: ["String"],
2198
+ # long_value: 1,
2199
+ # date_value: Time.now,
2200
+ # },
2201
+ # },
2202
+ # lambda_arn: "LambdaArn", # required
2203
+ # s3_bucket: "S3BucketName", # required
2204
+ # },
2205
+ # post_extraction_hook_configuration: {
2206
+ # invocation_condition: {
2207
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
2208
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
2209
+ # condition_on_value: {
2210
+ # string_value: "DocumentAttributeStringValue",
2211
+ # string_list_value: ["String"],
2212
+ # long_value: 1,
2213
+ # date_value: Time.now,
2214
+ # },
2215
+ # },
2216
+ # lambda_arn: "LambdaArn", # required
2217
+ # s3_bucket: "S3BucketName", # required
2218
+ # },
2219
+ # role_arn: "RoleArn",
2220
+ # },
1943
2221
  # }
1944
2222
  #
1945
2223
  # @!attribute [rw] name
@@ -2026,6 +2304,20 @@ module Aws::Kendra
2026
2304
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html
2027
2305
  # @return [String]
2028
2306
  #
2307
+ # @!attribute [rw] custom_document_enrichment_configuration
2308
+ # Configuration information for altering document metadata and content
2309
+ # during the document ingestion process when you create a data source.
2310
+ #
2311
+ # For more information on how to create, modify and delete document
2312
+ # metadata, or make other content alterations when you ingest
2313
+ # documents into Amazon Kendra, see [Customizing document metadata
2314
+ # during the ingestion process][1].
2315
+ #
2316
+ #
2317
+ #
2318
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html
2319
+ # @return [Types::CustomDocumentEnrichmentConfiguration]
2320
+ #
2029
2321
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateDataSourceRequest AWS API Documentation
2030
2322
  #
2031
2323
  class CreateDataSourceRequest < Struct.new(
@@ -2038,7 +2330,8 @@ module Aws::Kendra
2038
2330
  :role_arn,
2039
2331
  :tags,
2040
2332
  :client_token,
2041
- :language_code)
2333
+ :language_code,
2334
+ :custom_document_enrichment_configuration)
2042
2335
  SENSITIVE = []
2043
2336
  include Aws::Structure
2044
2337
  end
@@ -2055,6 +2348,94 @@ module Aws::Kendra
2055
2348
  include Aws::Structure
2056
2349
  end
2057
2350
 
2351
+ # @note When making an API call, you may pass CreateExperienceRequest
2352
+ # data as a hash:
2353
+ #
2354
+ # {
2355
+ # name: "ExperienceName", # required
2356
+ # index_id: "IndexId", # required
2357
+ # role_arn: "RoleArn",
2358
+ # configuration: {
2359
+ # content_source_configuration: {
2360
+ # data_source_ids: ["DataSourceId"],
2361
+ # faq_ids: ["FaqId"],
2362
+ # direct_put_content: false,
2363
+ # },
2364
+ # user_identity_configuration: {
2365
+ # identity_attribute_name: "IdentityAttributeName",
2366
+ # },
2367
+ # },
2368
+ # description: "Description",
2369
+ # client_token: "ClientTokenName",
2370
+ # }
2371
+ #
2372
+ # @!attribute [rw] name
2373
+ # A name for your Amazon Kendra experience.
2374
+ # @return [String]
2375
+ #
2376
+ # @!attribute [rw] index_id
2377
+ # The identifier of the index for your Amazon Kendra experience.
2378
+ # @return [String]
2379
+ #
2380
+ # @!attribute [rw] role_arn
2381
+ # The Amazon Resource Name (ARN) of a role with permission to access
2382
+ # `Query` operations, `QuerySuggestions` operations, `SubmitFeedback`
2383
+ # operations, and Amazon Web Services SSO that stores your user and
2384
+ # group information. For more information, see [IAM roles for Amazon
2385
+ # Kendra][1].
2386
+ #
2387
+ #
2388
+ #
2389
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
2390
+ # @return [String]
2391
+ #
2392
+ # @!attribute [rw] configuration
2393
+ # Provides the configuration information for your Amazon Kendra
2394
+ # experience. This includes `ContentSourceConfiguration`, which
2395
+ # specifies the data source IDs and/or FAQ IDs, and
2396
+ # `UserIdentityConfiguration`, which specifies the user or group
2397
+ # information to grant access to your Amazon Kendra experience.
2398
+ # @return [Types::ExperienceConfiguration]
2399
+ #
2400
+ # @!attribute [rw] description
2401
+ # A description for your Amazon Kendra experience.
2402
+ # @return [String]
2403
+ #
2404
+ # @!attribute [rw] client_token
2405
+ # A token that you provide to identify the request to create your
2406
+ # Amazon Kendra experience. Multiple calls to the `CreateExperience`
2407
+ # operation with the same client token creates only one Amazon Kendra
2408
+ # experience.
2409
+ #
2410
+ # **A suitable default value is auto-generated.** You should normally
2411
+ # not need to pass this option.
2412
+ # @return [String]
2413
+ #
2414
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateExperienceRequest AWS API Documentation
2415
+ #
2416
+ class CreateExperienceRequest < Struct.new(
2417
+ :name,
2418
+ :index_id,
2419
+ :role_arn,
2420
+ :configuration,
2421
+ :description,
2422
+ :client_token)
2423
+ SENSITIVE = []
2424
+ include Aws::Structure
2425
+ end
2426
+
2427
+ # @!attribute [rw] id
2428
+ # The identifier for your created Amazon Kendra experience.
2429
+ # @return [String]
2430
+ #
2431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateExperienceResponse AWS API Documentation
2432
+ #
2433
+ class CreateExperienceResponse < Struct.new(
2434
+ :id)
2435
+ SENSITIVE = []
2436
+ include Aws::Structure
2437
+ end
2438
+
2058
2439
  # @note When making an API call, you may pass CreateFaqRequest
2059
2440
  # data as a hash:
2060
2441
  #
@@ -2291,8 +2672,8 @@ module Aws::Kendra
2291
2672
  # @return [String]
2292
2673
  #
2293
2674
  # @!attribute [rw] user_group_resolution_configuration
2294
- # Enables fetching access levels of groups and users from an AWS
2295
- # Single Sign-On identity source. To configure this, see
2675
+ # Enables fetching access levels of groups and users from an Amazon
2676
+ # Web Services Single Sign On identity source. To configure this, see
2296
2677
  # [UserGroupResolutionConfiguration][1].
2297
2678
  #
2298
2679
  #
@@ -2468,9 +2849,8 @@ module Aws::Kendra
2468
2849
  # @return [String]
2469
2850
  #
2470
2851
  # @!attribute [rw] role_arn
2471
- # An AWS Identity and Access Management (IAM) role that gives Amazon
2472
- # Kendra permissions to access thesaurus file specified in
2473
- # `SourceS3Path`.
2852
+ # An IAM role that gives Amazon Kendra permissions to access thesaurus
2853
+ # file specified in `SourceS3Path`.
2474
2854
  # @return [String]
2475
2855
  #
2476
2856
  # @!attribute [rw] tags
@@ -2518,34 +2898,156 @@ module Aws::Kendra
2518
2898
  include Aws::Structure
2519
2899
  end
2520
2900
 
2521
- # Configuration information for a Amazon Kendra data source.
2901
+ # Provides the configuration information for altering document metadata
2902
+ # and content during the document ingestion process.
2522
2903
  #
2523
- # @note When making an API call, you may pass DataSourceConfiguration
2904
+ # For more information, see [Customizing document metadata during the
2905
+ # ingestion process][1].
2906
+ #
2907
+ #
2908
+ #
2909
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html
2910
+ #
2911
+ # @note When making an API call, you may pass CustomDocumentEnrichmentConfiguration
2524
2912
  # data as a hash:
2525
2913
  #
2526
2914
  # {
2527
- # s3_configuration: {
2528
- # bucket_name: "S3BucketName", # required
2529
- # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
2530
- # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2531
- # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2532
- # documents_metadata_configuration: {
2533
- # s3_prefix: "S3ObjectKey",
2915
+ # inline_configurations: [
2916
+ # {
2917
+ # condition: {
2918
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
2919
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
2920
+ # condition_on_value: {
2921
+ # string_value: "DocumentAttributeStringValue",
2922
+ # string_list_value: ["String"],
2923
+ # long_value: 1,
2924
+ # date_value: Time.now,
2925
+ # },
2926
+ # },
2927
+ # target: {
2928
+ # target_document_attribute_key: "DocumentAttributeKey",
2929
+ # target_document_attribute_value_deletion: false,
2930
+ # target_document_attribute_value: {
2931
+ # string_value: "DocumentAttributeStringValue",
2932
+ # string_list_value: ["String"],
2933
+ # long_value: 1,
2934
+ # date_value: Time.now,
2935
+ # },
2936
+ # },
2937
+ # document_content_deletion: false,
2534
2938
  # },
2535
- # access_control_list_configuration: {
2536
- # key_path: "S3ObjectKey",
2939
+ # ],
2940
+ # pre_extraction_hook_configuration: {
2941
+ # invocation_condition: {
2942
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
2943
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
2944
+ # condition_on_value: {
2945
+ # string_value: "DocumentAttributeStringValue",
2946
+ # string_list_value: ["String"],
2947
+ # long_value: 1,
2948
+ # date_value: Time.now,
2949
+ # },
2537
2950
  # },
2951
+ # lambda_arn: "LambdaArn", # required
2952
+ # s3_bucket: "S3BucketName", # required
2538
2953
  # },
2539
- # share_point_configuration: {
2540
- # share_point_version: "SHAREPOINT_2013", # required, accepts SHAREPOINT_2013, SHAREPOINT_2016, SHAREPOINT_ONLINE
2541
- # urls: ["Url"], # required
2542
- # secret_arn: "SecretArn", # required
2543
- # crawl_attachments: false,
2544
- # use_change_log: false,
2545
- # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2546
- # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2547
- # vpc_configuration: {
2548
- # subnet_ids: ["SubnetId"], # required
2954
+ # post_extraction_hook_configuration: {
2955
+ # invocation_condition: {
2956
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
2957
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
2958
+ # condition_on_value: {
2959
+ # string_value: "DocumentAttributeStringValue",
2960
+ # string_list_value: ["String"],
2961
+ # long_value: 1,
2962
+ # date_value: Time.now,
2963
+ # },
2964
+ # },
2965
+ # lambda_arn: "LambdaArn", # required
2966
+ # s3_bucket: "S3BucketName", # required
2967
+ # },
2968
+ # role_arn: "RoleArn",
2969
+ # }
2970
+ #
2971
+ # @!attribute [rw] inline_configurations
2972
+ # Configuration information to alter document attributes or metadata
2973
+ # fields and content when ingesting documents into Amazon Kendra.
2974
+ # @return [Array<Types::InlineCustomDocumentEnrichmentConfiguration>]
2975
+ #
2976
+ # @!attribute [rw] pre_extraction_hook_configuration
2977
+ # Configuration information for invoking a Lambda function in Lambda
2978
+ # on the original or raw documents before extracting their metadata
2979
+ # and text. You can use a Lambda function to apply advanced logic for
2980
+ # creating, modifying, or deleting document metadata and content. For
2981
+ # more information, see [Advanced data manipulation][1].
2982
+ #
2983
+ #
2984
+ #
2985
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html#advanced-data-manipulation
2986
+ # @return [Types::HookConfiguration]
2987
+ #
2988
+ # @!attribute [rw] post_extraction_hook_configuration
2989
+ # Configuration information for invoking a Lambda function in Lambda
2990
+ # on the structured documents with their metadata and text extracted.
2991
+ # You can use a Lambda function to apply advanced logic for creating,
2992
+ # modifying, or deleting document metadata and content. For more
2993
+ # information, see [Advanced data manipulation][1].
2994
+ #
2995
+ #
2996
+ #
2997
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html#advanced-data-manipulation
2998
+ # @return [Types::HookConfiguration]
2999
+ #
3000
+ # @!attribute [rw] role_arn
3001
+ # The Amazon Resource Name (ARN) of a role with permission to run
3002
+ # `PreExtractionHookConfiguration` and
3003
+ # `PostExtractionHookConfiguration` for altering document metadata and
3004
+ # content during the document ingestion process. For more information,
3005
+ # see [IAM roles for Amazon Kendra][1].
3006
+ #
3007
+ #
3008
+ #
3009
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
3010
+ # @return [String]
3011
+ #
3012
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CustomDocumentEnrichmentConfiguration AWS API Documentation
3013
+ #
3014
+ class CustomDocumentEnrichmentConfiguration < Struct.new(
3015
+ :inline_configurations,
3016
+ :pre_extraction_hook_configuration,
3017
+ :post_extraction_hook_configuration,
3018
+ :role_arn)
3019
+ SENSITIVE = []
3020
+ include Aws::Structure
3021
+ end
3022
+
3023
+ # Configuration information for an Amazon Kendra data source.
3024
+ #
3025
+ # @note When making an API call, you may pass DataSourceConfiguration
3026
+ # data as a hash:
3027
+ #
3028
+ # {
3029
+ # s3_configuration: {
3030
+ # bucket_name: "S3BucketName", # required
3031
+ # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
3032
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3033
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3034
+ # documents_metadata_configuration: {
3035
+ # s3_prefix: "S3ObjectKey",
3036
+ # },
3037
+ # access_control_list_configuration: {
3038
+ # key_path: "S3ObjectKey",
3039
+ # },
3040
+ # },
3041
+ # share_point_configuration: {
3042
+ # share_point_version: "SHAREPOINT_2013", # required, accepts SHAREPOINT_2013, SHAREPOINT_2016, SHAREPOINT_ONLINE
3043
+ # urls: ["Url"], # required
3044
+ # secret_arn: "SecretArn", # required
3045
+ # crawl_attachments: false,
3046
+ # use_change_log: false,
3047
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3048
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3049
+ # vpc_configuration: {
3050
+ # subnet_ids: ["SubnetId"], # required
2549
3051
  # security_group_ids: ["VpcSecurityGroupId"], # required
2550
3052
  # },
2551
3053
  # field_mappings: [
@@ -2878,7 +3380,7 @@ module Aws::Kendra
2878
3380
  #
2879
3381
  # @!attribute [rw] web_crawler_configuration
2880
3382
  # Provides the configuration information required for Amazon Kendra
2881
- # web crawler.
3383
+ # Web Crawler.
2882
3384
  # @return [Types::WebCrawlerConfiguration]
2883
3385
  #
2884
3386
  # @!attribute [rw] work_docs_configuration
@@ -3293,6 +3795,36 @@ module Aws::Kendra
3293
3795
  include Aws::Structure
3294
3796
  end
3295
3797
 
3798
+ # @note When making an API call, you may pass DeleteExperienceRequest
3799
+ # data as a hash:
3800
+ #
3801
+ # {
3802
+ # id: "ExperienceId", # required
3803
+ # index_id: "IndexId", # required
3804
+ # }
3805
+ #
3806
+ # @!attribute [rw] id
3807
+ # The identifier of your Amazon Kendra experience you want to delete.
3808
+ # @return [String]
3809
+ #
3810
+ # @!attribute [rw] index_id
3811
+ # The identifier of the index for your Amazon Kendra experience you
3812
+ # want to delete.
3813
+ # @return [String]
3814
+ #
3815
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DeleteExperienceRequest AWS API Documentation
3816
+ #
3817
+ class DeleteExperienceRequest < Struct.new(
3818
+ :id,
3819
+ :index_id)
3820
+ SENSITIVE = []
3821
+ include Aws::Structure
3822
+ end
3823
+
3824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DeleteExperienceResponse AWS API Documentation
3825
+ #
3826
+ class DeleteExperienceResponse < Aws::EmptyStructure; end
3827
+
3296
3828
  # @note When making an API call, you may pass DeleteFaqRequest
3297
3829
  # data as a hash:
3298
3830
  #
@@ -3541,6 +4073,21 @@ module Aws::Kendra
3541
4073
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html
3542
4074
  # @return [String]
3543
4075
  #
4076
+ # @!attribute [rw] custom_document_enrichment_configuration
4077
+ # Configuration information for altering document metadata and content
4078
+ # during the document ingestion process when you describe a data
4079
+ # source.
4080
+ #
4081
+ # For more information on how to create, modify and delete document
4082
+ # metadata, or make other content alterations when you ingest
4083
+ # documents into Amazon Kendra, see [Customizing document metadata
4084
+ # during the ingestion process][1].
4085
+ #
4086
+ #
4087
+ #
4088
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html
4089
+ # @return [Types::CustomDocumentEnrichmentConfiguration]
4090
+ #
3544
4091
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeDataSourceResponse AWS API Documentation
3545
4092
  #
3546
4093
  class DescribeDataSourceResponse < Struct.new(
@@ -3556,7 +4103,108 @@ module Aws::Kendra
3556
4103
  :schedule,
3557
4104
  :role_arn,
3558
4105
  :error_message,
3559
- :language_code)
4106
+ :language_code,
4107
+ :custom_document_enrichment_configuration)
4108
+ SENSITIVE = []
4109
+ include Aws::Structure
4110
+ end
4111
+
4112
+ # @note When making an API call, you may pass DescribeExperienceRequest
4113
+ # data as a hash:
4114
+ #
4115
+ # {
4116
+ # id: "ExperienceId", # required
4117
+ # index_id: "IndexId", # required
4118
+ # }
4119
+ #
4120
+ # @!attribute [rw] id
4121
+ # The identifier of your Amazon Kendra experience you want to get
4122
+ # information on.
4123
+ # @return [String]
4124
+ #
4125
+ # @!attribute [rw] index_id
4126
+ # The identifier of the index for your Amazon Kendra experience you
4127
+ # want to get information on.
4128
+ # @return [String]
4129
+ #
4130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeExperienceRequest AWS API Documentation
4131
+ #
4132
+ class DescribeExperienceRequest < Struct.new(
4133
+ :id,
4134
+ :index_id)
4135
+ SENSITIVE = []
4136
+ include Aws::Structure
4137
+ end
4138
+
4139
+ # @!attribute [rw] id
4140
+ # Shows the identifier of your Amazon Kendra experience.
4141
+ # @return [String]
4142
+ #
4143
+ # @!attribute [rw] index_id
4144
+ # Shows the identifier of the index for your Amazon Kendra experience.
4145
+ # @return [String]
4146
+ #
4147
+ # @!attribute [rw] name
4148
+ # Shows the name of your Amazon Kendra experience.
4149
+ # @return [String]
4150
+ #
4151
+ # @!attribute [rw] endpoints
4152
+ # Shows the endpoint URLs for your Amazon Kendra experiences. The URLs
4153
+ # are unique and fully hosted by Amazon Web Services.
4154
+ # @return [Array<Types::ExperienceEndpoint>]
4155
+ #
4156
+ # @!attribute [rw] configuration
4157
+ # Shows the configuration information for your Amazon Kendra
4158
+ # experience. This includes `ContentSourceConfiguration`, which
4159
+ # specifies the data source IDs and/or FAQ IDs, and
4160
+ # `UserIdentityConfiguration`, which specifies the user or group
4161
+ # information to grant access to your Amazon Kendra experience.
4162
+ # @return [Types::ExperienceConfiguration]
4163
+ #
4164
+ # @!attribute [rw] created_at
4165
+ # Shows the date-time your Amazon Kendra experience was created.
4166
+ # @return [Time]
4167
+ #
4168
+ # @!attribute [rw] updated_at
4169
+ # Shows the date-time your Amazon Kendra experience was last updated.
4170
+ # @return [Time]
4171
+ #
4172
+ # @!attribute [rw] description
4173
+ # Shows the description for your Amazon Kendra experience.
4174
+ # @return [String]
4175
+ #
4176
+ # @!attribute [rw] status
4177
+ # The current processing status of your Amazon Kendra experience. When
4178
+ # the status is `ACTIVE`, your Amazon Kendra experience is ready to
4179
+ # use. When the status is `FAILED`, the `ErrorMessage` field contains
4180
+ # the reason that this failed.
4181
+ # @return [String]
4182
+ #
4183
+ # @!attribute [rw] role_arn
4184
+ # Shows the Amazon Resource Name (ARN) of a role with permission to
4185
+ # access `Query` operations, `QuerySuggestions` operations,
4186
+ # `SubmitFeedback` operations, and Amazon Web Services SSO that stores
4187
+ # your user and group information.
4188
+ # @return [String]
4189
+ #
4190
+ # @!attribute [rw] error_message
4191
+ # The reason your Amazon Kendra experience could not properly process.
4192
+ # @return [String]
4193
+ #
4194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeExperienceResponse AWS API Documentation
4195
+ #
4196
+ class DescribeExperienceResponse < Struct.new(
4197
+ :id,
4198
+ :index_id,
4199
+ :name,
4200
+ :endpoints,
4201
+ :configuration,
4202
+ :created_at,
4203
+ :updated_at,
4204
+ :description,
4205
+ :status,
4206
+ :role_arn,
4207
+ :error_message)
3560
4208
  SENSITIVE = []
3561
4209
  include Aws::Structure
3562
4210
  end
@@ -3756,8 +4404,8 @@ module Aws::Kendra
3756
4404
  #
3757
4405
  # @!attribute [rw] user_group_resolution_configuration
3758
4406
  # Shows whether you have enabled the configuration for fetching access
3759
- # levels of groups and users from an AWS Single Sign-On identity
3760
- # source.
4407
+ # levels of groups and users from an Amazon Web Services Single Sign
4408
+ # On identity source.
3761
4409
  # @return [Types::UserGroupResolutionConfiguration]
3762
4410
  #
3763
4411
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeIndexResponse AWS API Documentation
@@ -4141,9 +4789,8 @@ module Aws::Kendra
4141
4789
  # @return [Time]
4142
4790
  #
4143
4791
  # @!attribute [rw] role_arn
4144
- # An AWS Identity and Access Management (IAM) role that gives Amazon
4145
- # Kendra permissions to access thesaurus file specified in
4146
- # `SourceS3Path`.
4792
+ # An IAM role that gives Amazon Kendra permissions to access thesaurus
4793
+ # file specified in `SourceS3Path`.
4147
4794
  # @return [String]
4148
4795
  #
4149
4796
  # @!attribute [rw] source_s3_path
@@ -4183,6 +4830,103 @@ module Aws::Kendra
4183
4830
  include Aws::Structure
4184
4831
  end
4185
4832
 
4833
+ # @note When making an API call, you may pass DisassociateEntitiesFromExperienceRequest
4834
+ # data as a hash:
4835
+ #
4836
+ # {
4837
+ # id: "ExperienceId", # required
4838
+ # index_id: "IndexId", # required
4839
+ # entity_list: [ # required
4840
+ # {
4841
+ # entity_id: "EntityId", # required
4842
+ # entity_type: "USER", # required, accepts USER, GROUP
4843
+ # },
4844
+ # ],
4845
+ # }
4846
+ #
4847
+ # @!attribute [rw] id
4848
+ # The identifier of your Amazon Kendra experience.
4849
+ # @return [String]
4850
+ #
4851
+ # @!attribute [rw] index_id
4852
+ # The identifier of the index for your Amazon Kendra experience.
4853
+ # @return [String]
4854
+ #
4855
+ # @!attribute [rw] entity_list
4856
+ # Lists users or groups in your Amazon Web Services SSO identity
4857
+ # source.
4858
+ # @return [Array<Types::EntityConfiguration>]
4859
+ #
4860
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DisassociateEntitiesFromExperienceRequest AWS API Documentation
4861
+ #
4862
+ class DisassociateEntitiesFromExperienceRequest < Struct.new(
4863
+ :id,
4864
+ :index_id,
4865
+ :entity_list)
4866
+ SENSITIVE = []
4867
+ include Aws::Structure
4868
+ end
4869
+
4870
+ # @!attribute [rw] failed_entity_list
4871
+ # Lists the users or groups in your Amazon Web Services SSO identity
4872
+ # source that failed to properly remove access to your Amazon Kendra
4873
+ # experience.
4874
+ # @return [Array<Types::FailedEntity>]
4875
+ #
4876
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DisassociateEntitiesFromExperienceResponse AWS API Documentation
4877
+ #
4878
+ class DisassociateEntitiesFromExperienceResponse < Struct.new(
4879
+ :failed_entity_list)
4880
+ SENSITIVE = []
4881
+ include Aws::Structure
4882
+ end
4883
+
4884
+ # @note When making an API call, you may pass DisassociatePersonasFromEntitiesRequest
4885
+ # data as a hash:
4886
+ #
4887
+ # {
4888
+ # id: "ExperienceId", # required
4889
+ # index_id: "IndexId", # required
4890
+ # entity_ids: ["EntityId"], # required
4891
+ # }
4892
+ #
4893
+ # @!attribute [rw] id
4894
+ # The identifier of your Amazon Kendra experience.
4895
+ # @return [String]
4896
+ #
4897
+ # @!attribute [rw] index_id
4898
+ # The identifier of the index for your Amazon Kendra experience.
4899
+ # @return [String]
4900
+ #
4901
+ # @!attribute [rw] entity_ids
4902
+ # The identifiers of users or groups in your Amazon Web Services SSO
4903
+ # identity source. For example, user IDs could be user emails.
4904
+ # @return [Array<String>]
4905
+ #
4906
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DisassociatePersonasFromEntitiesRequest AWS API Documentation
4907
+ #
4908
+ class DisassociatePersonasFromEntitiesRequest < Struct.new(
4909
+ :id,
4910
+ :index_id,
4911
+ :entity_ids)
4912
+ SENSITIVE = []
4913
+ include Aws::Structure
4914
+ end
4915
+
4916
+ # @!attribute [rw] failed_entity_list
4917
+ # Lists the users or groups in your Amazon Web Services SSO identity
4918
+ # source that failed to properly remove access to your Amazon Kendra
4919
+ # experience.
4920
+ # @return [Array<Types::FailedEntity>]
4921
+ #
4922
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DisassociatePersonasFromEntitiesResponse AWS API Documentation
4923
+ #
4924
+ class DisassociatePersonasFromEntitiesResponse < Struct.new(
4925
+ :failed_entity_list)
4926
+ SENSITIVE = []
4927
+ include Aws::Structure
4928
+ end
4929
+
4186
4930
  # A document in an index.
4187
4931
  #
4188
4932
  # @note When making an API call, you may pass Document
@@ -4324,56 +5068,194 @@ module Aws::Kendra
4324
5068
  include Aws::Structure
4325
5069
  end
4326
5070
 
4327
- # The value of a custom document attribute. You can only provide one
4328
- # value for a custom attribute.
5071
+ # The condition used for the target document attribute or metadata field
5072
+ # when ingesting documents into Amazon Kendra. You use this with
5073
+ # [DocumentAttributeTarget to apply the condition][1].
4329
5074
  #
4330
- # @note When making an API call, you may pass DocumentAttributeValue
5075
+ # For example, you can create the 'Department' target field and have
5076
+ # it prefill department names associated with the documents based on
5077
+ # information in the 'Source\_URI' field. Set the condition that if
5078
+ # the 'Source\_URI' field contains 'financial' in its URI value,
5079
+ # then prefill the target field 'Department' with the target value
5080
+ # 'Finance' for the document.
5081
+ #
5082
+ # Amazon Kendra cannot create a target field if it has not already been
5083
+ # created as an index field. After you create your index field, you can
5084
+ # create a document metadata field using `DocumentAttributeTarget`.
5085
+ # Amazon Kendra then will map your newly created metadata field to your
5086
+ # index field.
5087
+ #
5088
+ #
5089
+ #
5090
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_DocumentAttributeTarget.html
5091
+ #
5092
+ # @note When making an API call, you may pass DocumentAttributeCondition
4331
5093
  # data as a hash:
4332
5094
  #
4333
5095
  # {
4334
- # string_value: "DocumentAttributeStringValue",
4335
- # string_list_value: ["String"],
4336
- # long_value: 1,
4337
- # date_value: Time.now,
5096
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
5097
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
5098
+ # condition_on_value: {
5099
+ # string_value: "DocumentAttributeStringValue",
5100
+ # string_list_value: ["String"],
5101
+ # long_value: 1,
5102
+ # date_value: Time.now,
5103
+ # },
4338
5104
  # }
4339
5105
  #
4340
- # @!attribute [rw] string_value
4341
- # A string, such as "department".
5106
+ # @!attribute [rw] condition_document_attribute_key
5107
+ # The identifier of the document attribute used for the condition.
5108
+ #
5109
+ # For example, 'Source\_URI' could be an identifier for the
5110
+ # attribute or metadata field that contains source URIs associated
5111
+ # with the documents.
5112
+ #
5113
+ # Amazon Kendra currently does not support `_document_body` as an
5114
+ # attribute key used for the condition.
4342
5115
  # @return [String]
4343
5116
  #
4344
- # @!attribute [rw] string_list_value
4345
- # A list of strings.
4346
- # @return [Array<String>]
5117
+ # @!attribute [rw] operator
5118
+ # The condition operator.
4347
5119
  #
4348
- # @!attribute [rw] long_value
4349
- # A long integer value.
4350
- # @return [Integer]
5120
+ # For example, you can use 'Contains' to partially match a string.
5121
+ # @return [String]
4351
5122
  #
4352
- # @!attribute [rw] date_value
4353
- # A date expressed as an ISO 8601 string.
5123
+ # @!attribute [rw] condition_on_value
5124
+ # The value used by the operator.
4354
5125
  #
4355
- # It is important for the time zone to be included in the ISO 8601
4356
- # date-time format. For example, 20120325T123010+01:00 is the ISO 8601
4357
- # date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in
4358
- # Central European Time.
4359
- # @return [Time]
5126
+ # For example, you can specify the value 'financial' for strings in
5127
+ # the 'Source\_URI' field that partially match or contain this
5128
+ # value.
5129
+ # @return [Types::DocumentAttributeValue]
4360
5130
  #
4361
- # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DocumentAttributeValue AWS API Documentation
5131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DocumentAttributeCondition AWS API Documentation
4362
5132
  #
4363
- class DocumentAttributeValue < Struct.new(
4364
- :string_value,
4365
- :string_list_value,
4366
- :long_value,
4367
- :date_value)
5133
+ class DocumentAttributeCondition < Struct.new(
5134
+ :condition_document_attribute_key,
5135
+ :operator,
5136
+ :condition_on_value)
4368
5137
  SENSITIVE = []
4369
5138
  include Aws::Structure
4370
5139
  end
4371
5140
 
4372
- # Provides the count of documents that match a particular attribute when
4373
- # doing a faceted search.
5141
+ # The target document attribute or metadata field you want to alter when
5142
+ # ingesting documents into Amazon Kendra.
4374
5143
  #
4375
- # @!attribute [rw] document_attribute_value
4376
- # The value of the attribute. For example, "HR."
5144
+ # For example, you can delete customer identification numbers associated
5145
+ # with the documents, stored in the document metadata field called
5146
+ # 'Customer\_ID'. You set the target key as 'Customer\_ID' and the
5147
+ # deletion flag to `TRUE`. This removes all customer ID values in the
5148
+ # field 'Customer\_ID'. This would scrub personally identifiable
5149
+ # information from each document's metadata.
5150
+ #
5151
+ # Amazon Kendra cannot create a target field if it has not already been
5152
+ # created as an index field. After you create your index field, you can
5153
+ # create a document metadata field using `DocumentAttributeTarget`.
5154
+ # Amazon Kendra then will map your newly created metadata field to your
5155
+ # index field.
5156
+ #
5157
+ # You can also use this with [DocumentAttributeCondition][1].
5158
+ #
5159
+ #
5160
+ #
5161
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_DocumentAttributeCondition.html
5162
+ #
5163
+ # @note When making an API call, you may pass DocumentAttributeTarget
5164
+ # data as a hash:
5165
+ #
5166
+ # {
5167
+ # target_document_attribute_key: "DocumentAttributeKey",
5168
+ # target_document_attribute_value_deletion: false,
5169
+ # target_document_attribute_value: {
5170
+ # string_value: "DocumentAttributeStringValue",
5171
+ # string_list_value: ["String"],
5172
+ # long_value: 1,
5173
+ # date_value: Time.now,
5174
+ # },
5175
+ # }
5176
+ #
5177
+ # @!attribute [rw] target_document_attribute_key
5178
+ # The identifier of the target document attribute or metadata field.
5179
+ #
5180
+ # For example, 'Department' could be an identifier for the target
5181
+ # attribute or metadata field that includes the department names
5182
+ # associated with the documents.
5183
+ # @return [String]
5184
+ #
5185
+ # @!attribute [rw] target_document_attribute_value_deletion
5186
+ # `TRUE` to delete the existing target value for your specified target
5187
+ # attribute key. You cannot create a target value and set this to
5188
+ # `TRUE`. To create a target value (`TargetDocumentAttributeValue`),
5189
+ # set this to `FALSE`.
5190
+ # @return [Boolean]
5191
+ #
5192
+ # @!attribute [rw] target_document_attribute_value
5193
+ # The target value you want to create for the target attribute.
5194
+ #
5195
+ # For example, 'Finance' could be the target value for the target
5196
+ # attribute key 'Department'.
5197
+ # @return [Types::DocumentAttributeValue]
5198
+ #
5199
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DocumentAttributeTarget AWS API Documentation
5200
+ #
5201
+ class DocumentAttributeTarget < Struct.new(
5202
+ :target_document_attribute_key,
5203
+ :target_document_attribute_value_deletion,
5204
+ :target_document_attribute_value)
5205
+ SENSITIVE = []
5206
+ include Aws::Structure
5207
+ end
5208
+
5209
+ # The value of a custom document attribute. You can only provide one
5210
+ # value for a custom attribute.
5211
+ #
5212
+ # @note When making an API call, you may pass DocumentAttributeValue
5213
+ # data as a hash:
5214
+ #
5215
+ # {
5216
+ # string_value: "DocumentAttributeStringValue",
5217
+ # string_list_value: ["String"],
5218
+ # long_value: 1,
5219
+ # date_value: Time.now,
5220
+ # }
5221
+ #
5222
+ # @!attribute [rw] string_value
5223
+ # A string, such as "department".
5224
+ # @return [String]
5225
+ #
5226
+ # @!attribute [rw] string_list_value
5227
+ # A list of strings.
5228
+ # @return [Array<String>]
5229
+ #
5230
+ # @!attribute [rw] long_value
5231
+ # A long integer value.
5232
+ # @return [Integer]
5233
+ #
5234
+ # @!attribute [rw] date_value
5235
+ # A date expressed as an ISO 8601 string.
5236
+ #
5237
+ # It is important for the time zone to be included in the ISO 8601
5238
+ # date-time format. For example, 20120325T123010+01:00 is the ISO 8601
5239
+ # date-time format for March 25th 2012 at 12:30PM (plus 10 seconds) in
5240
+ # Central European Time.
5241
+ # @return [Time]
5242
+ #
5243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DocumentAttributeValue AWS API Documentation
5244
+ #
5245
+ class DocumentAttributeValue < Struct.new(
5246
+ :string_value,
5247
+ :string_list_value,
5248
+ :long_value,
5249
+ :date_value)
5250
+ SENSITIVE = []
5251
+ include Aws::Structure
5252
+ end
5253
+
5254
+ # Provides the count of documents that match a particular attribute when
5255
+ # doing a faceted search.
5256
+ #
5257
+ # @!attribute [rw] document_attribute_value
5258
+ # The value of the attribute. For example, "HR."
4377
5259
  # @return [Types::DocumentAttributeValue]
4378
5260
  #
4379
5261
  # @!attribute [rw] count
@@ -4564,6 +5446,246 @@ module Aws::Kendra
4564
5446
  include Aws::Structure
4565
5447
  end
4566
5448
 
5449
+ # Provides the configuration information of users or groups in your
5450
+ # Amazon Web Services SSO identity source to grant access your Amazon
5451
+ # Kendra experience.
5452
+ #
5453
+ # @note When making an API call, you may pass EntityConfiguration
5454
+ # data as a hash:
5455
+ #
5456
+ # {
5457
+ # entity_id: "EntityId", # required
5458
+ # entity_type: "USER", # required, accepts USER, GROUP
5459
+ # }
5460
+ #
5461
+ # @!attribute [rw] entity_id
5462
+ # The identifier of a user or group in your Amazon Web Services SSO
5463
+ # identity source. For example, a user ID could be an email.
5464
+ # @return [String]
5465
+ #
5466
+ # @!attribute [rw] entity_type
5467
+ # Specifies whether you are configuring a `User` or a `Group`.
5468
+ # @return [String]
5469
+ #
5470
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/EntityConfiguration AWS API Documentation
5471
+ #
5472
+ class EntityConfiguration < Struct.new(
5473
+ :entity_id,
5474
+ :entity_type)
5475
+ SENSITIVE = []
5476
+ include Aws::Structure
5477
+ end
5478
+
5479
+ # Information about the user entity.
5480
+ #
5481
+ # @!attribute [rw] user_name
5482
+ # The name of the user.
5483
+ # @return [String]
5484
+ #
5485
+ # @!attribute [rw] group_name
5486
+ # The name of the group.
5487
+ # @return [String]
5488
+ #
5489
+ # @!attribute [rw] identified_user_name
5490
+ # The user name of the user.
5491
+ # @return [String]
5492
+ #
5493
+ # @!attribute [rw] first_name
5494
+ # The first name of the user.
5495
+ # @return [String]
5496
+ #
5497
+ # @!attribute [rw] last_name
5498
+ # The last name of the user.
5499
+ # @return [String]
5500
+ #
5501
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/EntityDisplayData AWS API Documentation
5502
+ #
5503
+ class EntityDisplayData < Struct.new(
5504
+ :user_name,
5505
+ :group_name,
5506
+ :identified_user_name,
5507
+ :first_name,
5508
+ :last_name)
5509
+ SENSITIVE = [:user_name, :group_name, :identified_user_name, :first_name, :last_name]
5510
+ include Aws::Structure
5511
+ end
5512
+
5513
+ # Provides the configuration information of users or groups in your
5514
+ # Amazon Web Services SSO identity source for access to your Amazon
5515
+ # Kendra experience. Specific permissions are defined for each user or
5516
+ # group once they are granted access to your Amazon Kendra experience.
5517
+ #
5518
+ # @note When making an API call, you may pass EntityPersonaConfiguration
5519
+ # data as a hash:
5520
+ #
5521
+ # {
5522
+ # entity_id: "EntityId", # required
5523
+ # persona: "OWNER", # required, accepts OWNER, VIEWER
5524
+ # }
5525
+ #
5526
+ # @!attribute [rw] entity_id
5527
+ # The identifier of a user or group in your Amazon Web Services SSO
5528
+ # identity source. For example, a user ID could be an email.
5529
+ # @return [String]
5530
+ #
5531
+ # @!attribute [rw] persona
5532
+ # The persona that defines the specific permissions of the user or
5533
+ # group in your Amazon Web Services SSO identity source. The available
5534
+ # personas or access roles are `Owner` and `Viewer`. For more
5535
+ # information on these personas, see [Providing access to your search
5536
+ # page][1].
5537
+ #
5538
+ #
5539
+ #
5540
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/deploying-search-experience-no-code.html#access-search-experience
5541
+ # @return [String]
5542
+ #
5543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/EntityPersonaConfiguration AWS API Documentation
5544
+ #
5545
+ class EntityPersonaConfiguration < Struct.new(
5546
+ :entity_id,
5547
+ :persona)
5548
+ SENSITIVE = []
5549
+ include Aws::Structure
5550
+ end
5551
+
5552
+ # Specifies the configuration information for your Amazon Kendra
5553
+ # experience. This includes the data source IDs and/or FAQ IDs, and user
5554
+ # or group information to grant access to your Amazon Kendra experience.
5555
+ #
5556
+ # @note When making an API call, you may pass ExperienceConfiguration
5557
+ # data as a hash:
5558
+ #
5559
+ # {
5560
+ # content_source_configuration: {
5561
+ # data_source_ids: ["DataSourceId"],
5562
+ # faq_ids: ["FaqId"],
5563
+ # direct_put_content: false,
5564
+ # },
5565
+ # user_identity_configuration: {
5566
+ # identity_attribute_name: "IdentityAttributeName",
5567
+ # },
5568
+ # }
5569
+ #
5570
+ # @!attribute [rw] content_source_configuration
5571
+ # The identifiers of your data sources and FAQs. Or, you can specify
5572
+ # that you want to use documents indexed via the `BatchPutDocument`
5573
+ # operation. This is the content you want to use for your Amazon
5574
+ # Kendra experience.
5575
+ # @return [Types::ContentSourceConfiguration]
5576
+ #
5577
+ # @!attribute [rw] user_identity_configuration
5578
+ # The Amazon Web Services SSO field name that contains the identifiers
5579
+ # of your users, such as their emails.
5580
+ # @return [Types::UserIdentityConfiguration]
5581
+ #
5582
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ExperienceConfiguration AWS API Documentation
5583
+ #
5584
+ class ExperienceConfiguration < Struct.new(
5585
+ :content_source_configuration,
5586
+ :user_identity_configuration)
5587
+ SENSITIVE = []
5588
+ include Aws::Structure
5589
+ end
5590
+
5591
+ # Provides the configuration information of the endpoint for your Amazon
5592
+ # Kendra experience.
5593
+ #
5594
+ # @!attribute [rw] endpoint_type
5595
+ # The type of endpoint for your Amazon Kendra experience. The type
5596
+ # currently available is `HOME`, which is a unique and fully hosted
5597
+ # URL to the home page of your Amazon Kendra experience.
5598
+ # @return [String]
5599
+ #
5600
+ # @!attribute [rw] endpoint
5601
+ # The endpoint of your Amazon Kendra experience.
5602
+ # @return [String]
5603
+ #
5604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ExperienceEndpoint AWS API Documentation
5605
+ #
5606
+ class ExperienceEndpoint < Struct.new(
5607
+ :endpoint_type,
5608
+ :endpoint)
5609
+ SENSITIVE = []
5610
+ include Aws::Structure
5611
+ end
5612
+
5613
+ # Summary information for users or groups in your Amazon Web Services
5614
+ # SSO identity source with granted access to your Amazon Kendra
5615
+ # experience. You can create an Amazon Kendra experience such as a
5616
+ # search application. For more information on creating a search
5617
+ # application experience, see [Building a search experience with no
5618
+ # code][1].
5619
+ #
5620
+ #
5621
+ #
5622
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/deploying-search-experience-no-code.html
5623
+ #
5624
+ # @!attribute [rw] entity_id
5625
+ # The identifier of a user or group in your Amazon Web Services SSO
5626
+ # identity source. For example, a user ID could be an email.
5627
+ # @return [String]
5628
+ #
5629
+ # @!attribute [rw] entity_type
5630
+ # Shows the type as `User` or `Group`.
5631
+ # @return [String]
5632
+ #
5633
+ # @!attribute [rw] display_data
5634
+ # Information about the user entity.
5635
+ # @return [Types::EntityDisplayData]
5636
+ #
5637
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ExperienceEntitiesSummary AWS API Documentation
5638
+ #
5639
+ class ExperienceEntitiesSummary < Struct.new(
5640
+ :entity_id,
5641
+ :entity_type,
5642
+ :display_data)
5643
+ SENSITIVE = []
5644
+ include Aws::Structure
5645
+ end
5646
+
5647
+ # Summary information for your Amazon Kendra experience. You can create
5648
+ # an Amazon Kendra experience such as a search application. For more
5649
+ # information on creating a search application experience, see [Building
5650
+ # a search experience with no code][1].
5651
+ #
5652
+ #
5653
+ #
5654
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/deploying-search-experience-no-code.html
5655
+ #
5656
+ # @!attribute [rw] name
5657
+ # The name of your Amazon Kendra experience.
5658
+ # @return [String]
5659
+ #
5660
+ # @!attribute [rw] id
5661
+ # The identifier of your Amazon Kendra experience.
5662
+ # @return [String]
5663
+ #
5664
+ # @!attribute [rw] created_at
5665
+ # The date-time your Amazon Kendra experience was created.
5666
+ # @return [Time]
5667
+ #
5668
+ # @!attribute [rw] status
5669
+ # The processing status of your Amazon Kendra experience.
5670
+ # @return [String]
5671
+ #
5672
+ # @!attribute [rw] endpoints
5673
+ # The endpoint URLs for your Amazon Kendra experiences. The URLs are
5674
+ # unique and fully hosted by Amazon Web Services.
5675
+ # @return [Array<Types::ExperienceEndpoint>]
5676
+ #
5677
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ExperiencesSummary AWS API Documentation
5678
+ #
5679
+ class ExperiencesSummary < Struct.new(
5680
+ :name,
5681
+ :id,
5682
+ :created_at,
5683
+ :status,
5684
+ :endpoints)
5685
+ SENSITIVE = []
5686
+ include Aws::Structure
5687
+ end
5688
+
4567
5689
  # Information about a document attribute
4568
5690
  #
4569
5691
  # @note When making an API call, you may pass Facet
@@ -4613,6 +5735,30 @@ module Aws::Kendra
4613
5735
  include Aws::Structure
4614
5736
  end
4615
5737
 
5738
+ # Information on the users or groups in your Amazon Web Services SSO
5739
+ # identity source that failed to properly configure with your Amazon
5740
+ # Kendra experience.
5741
+ #
5742
+ # @!attribute [rw] entity_id
5743
+ # The identifier of the user or group in your Amazon Web Services SSO
5744
+ # identity source. For example, a user ID could be an email.
5745
+ # @return [String]
5746
+ #
5747
+ # @!attribute [rw] error_message
5748
+ # The reason the user or group in your Amazon Web Services SSO
5749
+ # identity source failed to properly configure with your Amazon Kendra
5750
+ # experience.
5751
+ # @return [String]
5752
+ #
5753
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/FailedEntity AWS API Documentation
5754
+ #
5755
+ class FailedEntity < Struct.new(
5756
+ :entity_id,
5757
+ :error_message)
5758
+ SENSITIVE = []
5759
+ include Aws::Structure
5760
+ end
5761
+
4616
5762
  # Provides statistical information about the FAQ questions and answers
4617
5763
  # contained in an index.
4618
5764
  #
@@ -4741,6 +5887,111 @@ module Aws::Kendra
4741
5887
  include Aws::Structure
4742
5888
  end
4743
5889
 
5890
+ # @note When making an API call, you may pass GetSnapshotsRequest
5891
+ # data as a hash:
5892
+ #
5893
+ # {
5894
+ # index_id: "IndexId", # required
5895
+ # interval: "THIS_MONTH", # required, accepts THIS_MONTH, THIS_WEEK, ONE_WEEK_AGO, TWO_WEEKS_AGO, ONE_MONTH_AGO, TWO_MONTHS_AGO
5896
+ # metric_type: "QUERIES_BY_COUNT", # required, accepts QUERIES_BY_COUNT, QUERIES_BY_ZERO_CLICK_RATE, QUERIES_BY_ZERO_RESULT_RATE, DOCS_BY_CLICK_COUNT, AGG_QUERY_DOC_METRICS, TREND_QUERY_DOC_METRICS
5897
+ # next_token: "NextToken",
5898
+ # max_results: 1,
5899
+ # }
5900
+ #
5901
+ # @!attribute [rw] index_id
5902
+ # The identifier of the index to get search metrics data.
5903
+ # @return [String]
5904
+ #
5905
+ # @!attribute [rw] interval
5906
+ # The time interval or time window to get search metrics data. The
5907
+ # time interval uses the time zone of your index. You can view data in
5908
+ # the following time windows:
5909
+ #
5910
+ # * `THIS_WEEK`\: The current week, starting on the Sunday and ending
5911
+ # on the day before the current date.
5912
+ #
5913
+ # * `ONE_WEEK_AGO`\: The previous week, starting on the Sunday and
5914
+ # ending on the following Saturday.
5915
+ #
5916
+ # * `TWO_WEEKS_AGO`\: The week before the previous week, starting on
5917
+ # the Sunday and ending on the following Saturday.
5918
+ #
5919
+ # * `THIS_MONTH`\: The current month, starting on the first day of the
5920
+ # month and ending on the day before the current date.
5921
+ #
5922
+ # * `ONE_MONTH_AGO`\: The previous month, starting on the first day of
5923
+ # the month and ending on the last day of the month.
5924
+ #
5925
+ # * `TWO_MONTHS_AGO`\: The month before the previous month, starting
5926
+ # on the first day of the month and ending on last day of the month.
5927
+ # @return [String]
5928
+ #
5929
+ # @!attribute [rw] metric_type
5930
+ # The metric you want to retrieve. You can specify only one metric per
5931
+ # call.
5932
+ #
5933
+ # For more information about the metrics you can view, see [Gaining
5934
+ # insights with search analytics][1].
5935
+ #
5936
+ #
5937
+ #
5938
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/search-analytics.html
5939
+ # @return [String]
5940
+ #
5941
+ # @!attribute [rw] next_token
5942
+ # If the previous response was incomplete (because there is more data
5943
+ # to retrieve), Amazon Kendra returns a pagination token in the
5944
+ # response. You can use this pagination token to retrieve the next set
5945
+ # of search metrics data.
5946
+ # @return [String]
5947
+ #
5948
+ # @!attribute [rw] max_results
5949
+ # The maximum number of returned data for the metric.
5950
+ # @return [Integer]
5951
+ #
5952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/GetSnapshotsRequest AWS API Documentation
5953
+ #
5954
+ class GetSnapshotsRequest < Struct.new(
5955
+ :index_id,
5956
+ :interval,
5957
+ :metric_type,
5958
+ :next_token,
5959
+ :max_results)
5960
+ SENSITIVE = []
5961
+ include Aws::Structure
5962
+ end
5963
+
5964
+ # @!attribute [rw] snap_shot_time_filter
5965
+ # The date-time for the beginning and end of the time window for the
5966
+ # search metrics data.
5967
+ # @return [Types::TimeRange]
5968
+ #
5969
+ # @!attribute [rw] snapshots_data_header
5970
+ # The column headers for the search metrics data.
5971
+ # @return [Array<String>]
5972
+ #
5973
+ # @!attribute [rw] snapshots_data
5974
+ # The search metrics data. The data returned depends on the metric
5975
+ # type you requested.
5976
+ # @return [Array<Array<String>>]
5977
+ #
5978
+ # @!attribute [rw] next_token
5979
+ # If the response is truncated, Amazon Kendra returns this token,
5980
+ # which you can use in a later request to retrieve the next set of
5981
+ # search metrics data.
5982
+ # @return [String]
5983
+ #
5984
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/GetSnapshotsResponse AWS API Documentation
5985
+ #
5986
+ class GetSnapshotsResponse < Struct.new(
5987
+ :snap_shot_time_filter,
5988
+ :snapshots_data_header,
5989
+ :snapshots_data,
5990
+ :next_token)
5991
+ SENSITIVE = []
5992
+ include Aws::Structure
5993
+ end
5994
+
4744
5995
  # Provides configuration information for data sources that connect to
4745
5996
  # Google Drive.
4746
5997
  #
@@ -5031,6 +6282,82 @@ module Aws::Kendra
5031
6282
  include Aws::Structure
5032
6283
  end
5033
6284
 
6285
+ # Provides the configuration information for invoking a Lambda function
6286
+ # in Lambda to alter document metadata and content when ingesting
6287
+ # documents into Amazon Kendra. You can configure your Lambda function
6288
+ # using [PreExtractionHookConfiguration][1] if you want to apply
6289
+ # advanced alterations on the original or raw documents. If you want to
6290
+ # apply advanced alterations on the Amazon Kendra structured documents,
6291
+ # you must configure your Lambda function using
6292
+ # [PostExtractionHookConfiguration][2]. You can only invoke one Lambda
6293
+ # function. However, this function can invoke other functions it
6294
+ # requires.
6295
+ #
6296
+ # For more information, see [Customizing document metadata during the
6297
+ # ingestion process][3].
6298
+ #
6299
+ #
6300
+ #
6301
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_PreExtractionHookConfiguration.html
6302
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/API_PostExtractionHookConfiguration.html
6303
+ # [3]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html
6304
+ #
6305
+ # @note When making an API call, you may pass HookConfiguration
6306
+ # data as a hash:
6307
+ #
6308
+ # {
6309
+ # invocation_condition: {
6310
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
6311
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
6312
+ # condition_on_value: {
6313
+ # string_value: "DocumentAttributeStringValue",
6314
+ # string_list_value: ["String"],
6315
+ # long_value: 1,
6316
+ # date_value: Time.now,
6317
+ # },
6318
+ # },
6319
+ # lambda_arn: "LambdaArn", # required
6320
+ # s3_bucket: "S3BucketName", # required
6321
+ # }
6322
+ #
6323
+ # @!attribute [rw] invocation_condition
6324
+ # The condition used for when a Lambda function should be invoked.
6325
+ #
6326
+ # For example, you can specify a condition that if there are empty
6327
+ # date-time values, then Amazon Kendra should invoke a function that
6328
+ # inserts the current date-time.
6329
+ # @return [Types::DocumentAttributeCondition]
6330
+ #
6331
+ # @!attribute [rw] lambda_arn
6332
+ # The Amazon Resource Name (ARN) of a role with permission to run a
6333
+ # Lambda function during ingestion. For more information, see [IAM
6334
+ # roles for Amazon Kendra][1].
6335
+ #
6336
+ #
6337
+ #
6338
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
6339
+ # @return [String]
6340
+ #
6341
+ # @!attribute [rw] s3_bucket
6342
+ # Stores the original, raw documents or the structured, parsed
6343
+ # documents before and after altering them. For more information, see
6344
+ # [Data contracts for Lambda functions][1].
6345
+ #
6346
+ #
6347
+ #
6348
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html#cde-data-contracts-lambda
6349
+ # @return [String]
6350
+ #
6351
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/HookConfiguration AWS API Documentation
6352
+ #
6353
+ class HookConfiguration < Struct.new(
6354
+ :invocation_condition,
6355
+ :lambda_arn,
6356
+ :s3_bucket)
6357
+ SENSITIVE = []
6358
+ include Aws::Structure
6359
+ end
6360
+
5034
6361
  # A summary of information about an index.
5035
6362
  #
5036
6363
  # @!attribute [rw] name
@@ -5095,6 +6422,73 @@ module Aws::Kendra
5095
6422
  include Aws::Structure
5096
6423
  end
5097
6424
 
6425
+ # Provides the configuration information for applying basic logic to
6426
+ # alter document metadata and content when ingesting documents into
6427
+ # Amazon Kendra. To apply advanced logic, to go beyond what you can do
6428
+ # with basic logic, see [HookConfiguration][1].
6429
+ #
6430
+ # For more information, see [Customizing document metadata during the
6431
+ # ingestion process][2].
6432
+ #
6433
+ #
6434
+ #
6435
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_HookConfiguration.html
6436
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html
6437
+ #
6438
+ # @note When making an API call, you may pass InlineCustomDocumentEnrichmentConfiguration
6439
+ # data as a hash:
6440
+ #
6441
+ # {
6442
+ # condition: {
6443
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
6444
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
6445
+ # condition_on_value: {
6446
+ # string_value: "DocumentAttributeStringValue",
6447
+ # string_list_value: ["String"],
6448
+ # long_value: 1,
6449
+ # date_value: Time.now,
6450
+ # },
6451
+ # },
6452
+ # target: {
6453
+ # target_document_attribute_key: "DocumentAttributeKey",
6454
+ # target_document_attribute_value_deletion: false,
6455
+ # target_document_attribute_value: {
6456
+ # string_value: "DocumentAttributeStringValue",
6457
+ # string_list_value: ["String"],
6458
+ # long_value: 1,
6459
+ # date_value: Time.now,
6460
+ # },
6461
+ # },
6462
+ # document_content_deletion: false,
6463
+ # }
6464
+ #
6465
+ # @!attribute [rw] condition
6466
+ # Configuration of the condition used for the target document
6467
+ # attribute or metadata field when ingesting documents into Amazon
6468
+ # Kendra.
6469
+ # @return [Types::DocumentAttributeCondition]
6470
+ #
6471
+ # @!attribute [rw] target
6472
+ # Configuration of the target document attribute or metadata field
6473
+ # when ingesting documents into Amazon Kendra. You can also include a
6474
+ # value.
6475
+ # @return [Types::DocumentAttributeTarget]
6476
+ #
6477
+ # @!attribute [rw] document_content_deletion
6478
+ # `TRUE` to delete content if the condition used for the target
6479
+ # attribute is met.
6480
+ # @return [Boolean]
6481
+ #
6482
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/InlineCustomDocumentEnrichmentConfiguration AWS API Documentation
6483
+ #
6484
+ class InlineCustomDocumentEnrichmentConfiguration < Struct.new(
6485
+ :condition,
6486
+ :target,
6487
+ :document_content_deletion)
6488
+ SENSITIVE = []
6489
+ include Aws::Structure
6490
+ end
6491
+
5098
6492
  # @!attribute [rw] message
5099
6493
  # @return [String]
5100
6494
  #
@@ -5106,6 +6500,19 @@ module Aws::Kendra
5106
6500
  include Aws::Structure
5107
6501
  end
5108
6502
 
6503
+ # The input to the request is not valid.
6504
+ #
6505
+ # @!attribute [rw] message
6506
+ # @return [String]
6507
+ #
6508
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/InvalidRequestException AWS API Documentation
6509
+ #
6510
+ class InvalidRequestException < Struct.new(
6511
+ :message)
6512
+ SENSITIVE = []
6513
+ include Aws::Structure
6514
+ end
6515
+
5109
6516
  # Configuration information for the JSON token type.
5110
6517
  #
5111
6518
  # @note When making an API call, you may pass JsonTokenTypeConfiguration
@@ -5321,6 +6728,172 @@ module Aws::Kendra
5321
6728
  include Aws::Structure
5322
6729
  end
5323
6730
 
6731
+ # @note When making an API call, you may pass ListEntityPersonasRequest
6732
+ # data as a hash:
6733
+ #
6734
+ # {
6735
+ # id: "ExperienceId", # required
6736
+ # index_id: "IndexId", # required
6737
+ # next_token: "NextToken",
6738
+ # max_results: 1,
6739
+ # }
6740
+ #
6741
+ # @!attribute [rw] id
6742
+ # The identifier of your Amazon Kendra experience.
6743
+ # @return [String]
6744
+ #
6745
+ # @!attribute [rw] index_id
6746
+ # The identifier of the index for your Amazon Kendra experience.
6747
+ # @return [String]
6748
+ #
6749
+ # @!attribute [rw] next_token
6750
+ # If the previous response was incomplete (because there is more data
6751
+ # to retrieve), Amazon Kendra returns a pagination token in the
6752
+ # response. You can use this pagination token to retrieve the next set
6753
+ # of users or groups.
6754
+ # @return [String]
6755
+ #
6756
+ # @!attribute [rw] max_results
6757
+ # The maximum number of returned users or groups.
6758
+ # @return [Integer]
6759
+ #
6760
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListEntityPersonasRequest AWS API Documentation
6761
+ #
6762
+ class ListEntityPersonasRequest < Struct.new(
6763
+ :id,
6764
+ :index_id,
6765
+ :next_token,
6766
+ :max_results)
6767
+ SENSITIVE = []
6768
+ include Aws::Structure
6769
+ end
6770
+
6771
+ # @!attribute [rw] summary_items
6772
+ # An array of summary information for one or more users or groups.
6773
+ # @return [Array<Types::PersonasSummary>]
6774
+ #
6775
+ # @!attribute [rw] next_token
6776
+ # If the response is truncated, Amazon Kendra returns this token,
6777
+ # which you can use in a later request to retrieve the next set of
6778
+ # users or groups.
6779
+ # @return [String]
6780
+ #
6781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListEntityPersonasResponse AWS API Documentation
6782
+ #
6783
+ class ListEntityPersonasResponse < Struct.new(
6784
+ :summary_items,
6785
+ :next_token)
6786
+ SENSITIVE = []
6787
+ include Aws::Structure
6788
+ end
6789
+
6790
+ # @note When making an API call, you may pass ListExperienceEntitiesRequest
6791
+ # data as a hash:
6792
+ #
6793
+ # {
6794
+ # id: "ExperienceId", # required
6795
+ # index_id: "IndexId", # required
6796
+ # next_token: "NextToken",
6797
+ # }
6798
+ #
6799
+ # @!attribute [rw] id
6800
+ # The identifier of your Amazon Kendra experience.
6801
+ # @return [String]
6802
+ #
6803
+ # @!attribute [rw] index_id
6804
+ # The identifier of the index for your Amazon Kendra experience.
6805
+ # @return [String]
6806
+ #
6807
+ # @!attribute [rw] next_token
6808
+ # If the previous response was incomplete (because there is more data
6809
+ # to retrieve), Amazon Kendra returns a pagination token in the
6810
+ # response. You can use this pagination token to retrieve the next set
6811
+ # of users or groups.
6812
+ # @return [String]
6813
+ #
6814
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListExperienceEntitiesRequest AWS API Documentation
6815
+ #
6816
+ class ListExperienceEntitiesRequest < Struct.new(
6817
+ :id,
6818
+ :index_id,
6819
+ :next_token)
6820
+ SENSITIVE = []
6821
+ include Aws::Structure
6822
+ end
6823
+
6824
+ # @!attribute [rw] summary_items
6825
+ # An array of summary information for one or more users or groups.
6826
+ # @return [Array<Types::ExperienceEntitiesSummary>]
6827
+ #
6828
+ # @!attribute [rw] next_token
6829
+ # If the response is truncated, Amazon Kendra returns this token,
6830
+ # which you can use in a later request to retrieve the next set of
6831
+ # users or groups.
6832
+ # @return [String]
6833
+ #
6834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListExperienceEntitiesResponse AWS API Documentation
6835
+ #
6836
+ class ListExperienceEntitiesResponse < Struct.new(
6837
+ :summary_items,
6838
+ :next_token)
6839
+ SENSITIVE = []
6840
+ include Aws::Structure
6841
+ end
6842
+
6843
+ # @note When making an API call, you may pass ListExperiencesRequest
6844
+ # data as a hash:
6845
+ #
6846
+ # {
6847
+ # index_id: "IndexId", # required
6848
+ # next_token: "NextToken",
6849
+ # max_results: 1,
6850
+ # }
6851
+ #
6852
+ # @!attribute [rw] index_id
6853
+ # The identifier of the index for your Amazon Kendra experience.
6854
+ # @return [String]
6855
+ #
6856
+ # @!attribute [rw] next_token
6857
+ # If the previous response was incomplete (because there is more data
6858
+ # to retrieve), Amazon Kendra returns a pagination token in the
6859
+ # response. You can use this pagination token to retrieve the next set
6860
+ # of Amazon Kendra experiences.
6861
+ # @return [String]
6862
+ #
6863
+ # @!attribute [rw] max_results
6864
+ # The maximum number of returned Amazon Kendra experiences.
6865
+ # @return [Integer]
6866
+ #
6867
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListExperiencesRequest AWS API Documentation
6868
+ #
6869
+ class ListExperiencesRequest < Struct.new(
6870
+ :index_id,
6871
+ :next_token,
6872
+ :max_results)
6873
+ SENSITIVE = []
6874
+ include Aws::Structure
6875
+ end
6876
+
6877
+ # @!attribute [rw] summary_items
6878
+ # An array of summary information for one or more Amazon Kendra
6879
+ # experiences.
6880
+ # @return [Array<Types::ExperiencesSummary>]
6881
+ #
6882
+ # @!attribute [rw] next_token
6883
+ # If the response is truncated, Amazon Kendra returns this token,
6884
+ # which you can use in a later request to retrieve the next set of
6885
+ # Amazon Kendra experiences.
6886
+ # @return [String]
6887
+ #
6888
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListExperiencesResponse AWS API Documentation
6889
+ #
6890
+ class ListExperiencesResponse < Struct.new(
6891
+ :summary_items,
6892
+ :next_token)
6893
+ SENSITIVE = []
6894
+ include Aws::Structure
6895
+ end
6896
+
5324
6897
  # @note When making an API call, you may pass ListFaqsRequest
5325
6898
  # data as a hash:
5326
6899
  #
@@ -5824,6 +7397,54 @@ module Aws::Kendra
5824
7397
  include Aws::Structure
5825
7398
  end
5826
7399
 
7400
+ # Summary information for users or groups in your Amazon Web Services
7401
+ # SSO identity source. This applies to users and groups with specific
7402
+ # permissions that define their level of access to your Amazon Kendra
7403
+ # experience. You can create an Amazon Kendra experience such as a
7404
+ # search application. For more information on creating a search
7405
+ # application experience, see [Building a search experience with no
7406
+ # code][1].
7407
+ #
7408
+ #
7409
+ #
7410
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/deploying-search-experience-no-code.html
7411
+ #
7412
+ # @!attribute [rw] entity_id
7413
+ # The identifier of a user or group in your Amazon Web Services SSO
7414
+ # identity source. For example, a user ID could be an email.
7415
+ # @return [String]
7416
+ #
7417
+ # @!attribute [rw] persona
7418
+ # The persona that defines the specific permissions of the user or
7419
+ # group in your Amazon Web Services SSO identity source. The available
7420
+ # personas or access roles are `Owner` and `Viewer`. For more
7421
+ # information on these personas, see [Providing access to your search
7422
+ # page][1].
7423
+ #
7424
+ #
7425
+ #
7426
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/deploying-search-experience-no-code.html#access-search-experience
7427
+ # @return [String]
7428
+ #
7429
+ # @!attribute [rw] created_at
7430
+ # The date-time the summary information was created.
7431
+ # @return [Time]
7432
+ #
7433
+ # @!attribute [rw] updated_at
7434
+ # The date-time the summary information was last updated.
7435
+ # @return [Time]
7436
+ #
7437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/PersonasSummary AWS API Documentation
7438
+ #
7439
+ class PersonasSummary < Struct.new(
7440
+ :entity_id,
7441
+ :persona,
7442
+ :created_at,
7443
+ :updated_at)
7444
+ SENSITIVE = []
7445
+ include Aws::Structure
7446
+ end
7447
+
5827
7448
  # Provides user and group information for document access filtering.
5828
7449
  #
5829
7450
  # @note When making an API call, you may pass Principal
@@ -5893,7 +7514,7 @@ module Aws::Kendra
5893
7514
  # @return [Integer]
5894
7515
  #
5895
7516
  # @!attribute [rw] credentials
5896
- # Your secret ARN, which you can create in [AWS Secrets Manager][1]
7517
+ # Your secret ARN, which you can create in [Secrets Manager][1]
5897
7518
  #
5898
7519
  # The credentials are optional. You use a secret if web proxy
5899
7520
  # credentials are required to connect to a website host. Amazon Kendra
@@ -7241,7 +8862,7 @@ module Aws::Kendra
7241
8862
  #
7242
8863
  # *When selecting websites to index, you must adhere to the [Amazon
7243
8864
  # Acceptable Use Policy][1] and all other Amazon terms. Remember that
7244
- # you must only use the Amazon Kendra web crawler to index your own
8865
+ # you must only use Amazon Kendra Web Crawler to index your own
7245
8866
  # webpages, or webpages that you have authorization to index.*
7246
8867
  #
7247
8868
  #
@@ -7385,7 +9006,7 @@ module Aws::Kendra
7385
9006
  # @!attribute [rw] authentication_type
7386
9007
  # Determines the type of authentication used to connect to the
7387
9008
  # ServiceNow instance. If you choose `HTTP_BASIC`, Amazon Kendra is
7388
- # authenticated using the user name and password provided in the AWS
9009
+ # authenticated using the user name and password provided in the
7389
9010
  # Secrets Manager secret in the `SecretArn` field. When you choose
7390
9011
  # `OAUTH2`, Amazon Kendra is authenticated using the OAuth token and
7391
9012
  # secret provided in the Secrets Manager secret, and the user name and
@@ -7630,7 +9251,7 @@ module Aws::Kendra
7630
9251
  # SharePoint Server, you also need to provide the sever domain name as
7631
9252
  # part of the credentials. For more information, see [Using a
7632
9253
  # Microsoft SharePoint Data Source][1]. For more information about
7633
- # Secrets Manager, see [ What Is Secrets Manager][2] in the <i>Secrets
9254
+ # Secrets Manager see [ What Is Secrets Manager][2] in the <i>Secrets
7634
9255
  # Manager </i> user guide.
7635
9256
  #
7636
9257
  #
@@ -7726,7 +9347,7 @@ module Aws::Kendra
7726
9347
  #
7727
9348
  # *When selecting websites to index, you must adhere to the [Amazon
7728
9349
  # Acceptable Use Policy][1] and all other Amazon terms. Remember that
7729
- # you must only use the Amazon Kendra web crawler to index your own
9350
+ # you must only use Amazon Kendra Web Crawler to index your own
7730
9351
  # webpages, or webpages that you have authorization to index.*
7731
9352
  #
7732
9353
  #
@@ -8609,6 +10230,62 @@ module Aws::Kendra
8609
10230
  # schedule: "ScanSchedule",
8610
10231
  # role_arn: "RoleArn",
8611
10232
  # language_code: "LanguageCode",
10233
+ # custom_document_enrichment_configuration: {
10234
+ # inline_configurations: [
10235
+ # {
10236
+ # condition: {
10237
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
10238
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
10239
+ # condition_on_value: {
10240
+ # string_value: "DocumentAttributeStringValue",
10241
+ # string_list_value: ["String"],
10242
+ # long_value: 1,
10243
+ # date_value: Time.now,
10244
+ # },
10245
+ # },
10246
+ # target: {
10247
+ # target_document_attribute_key: "DocumentAttributeKey",
10248
+ # target_document_attribute_value_deletion: false,
10249
+ # target_document_attribute_value: {
10250
+ # string_value: "DocumentAttributeStringValue",
10251
+ # string_list_value: ["String"],
10252
+ # long_value: 1,
10253
+ # date_value: Time.now,
10254
+ # },
10255
+ # },
10256
+ # document_content_deletion: false,
10257
+ # },
10258
+ # ],
10259
+ # pre_extraction_hook_configuration: {
10260
+ # invocation_condition: {
10261
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
10262
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
10263
+ # condition_on_value: {
10264
+ # string_value: "DocumentAttributeStringValue",
10265
+ # string_list_value: ["String"],
10266
+ # long_value: 1,
10267
+ # date_value: Time.now,
10268
+ # },
10269
+ # },
10270
+ # lambda_arn: "LambdaArn", # required
10271
+ # s3_bucket: "S3BucketName", # required
10272
+ # },
10273
+ # post_extraction_hook_configuration: {
10274
+ # invocation_condition: {
10275
+ # condition_document_attribute_key: "DocumentAttributeKey", # required
10276
+ # operator: "GreaterThan", # required, accepts GreaterThan, GreaterThanOrEquals, LessThan, LessThanOrEquals, Equals, NotEquals, Contains, NotContains, Exists, NotExists, BeginsWith
10277
+ # condition_on_value: {
10278
+ # string_value: "DocumentAttributeStringValue",
10279
+ # string_list_value: ["String"],
10280
+ # long_value: 1,
10281
+ # date_value: Time.now,
10282
+ # },
10283
+ # },
10284
+ # lambda_arn: "LambdaArn", # required
10285
+ # s3_bucket: "S3BucketName", # required
10286
+ # },
10287
+ # role_arn: "RoleArn",
10288
+ # },
8612
10289
  # }
8613
10290
  #
8614
10291
  # @!attribute [rw] id
@@ -8626,7 +10303,7 @@ module Aws::Kendra
8626
10303
  # @return [String]
8627
10304
  #
8628
10305
  # @!attribute [rw] configuration
8629
- # Configuration information for a Amazon Kendra data source.
10306
+ # Configuration information for an Amazon Kendra data source.
8630
10307
  # @return [Types::DataSourceConfiguration]
8631
10308
  #
8632
10309
  # @!attribute [rw] description
@@ -8654,6 +10331,20 @@ module Aws::Kendra
8654
10331
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-adding-languages.html
8655
10332
  # @return [String]
8656
10333
  #
10334
+ # @!attribute [rw] custom_document_enrichment_configuration
10335
+ # Configuration information for altering document metadata and content
10336
+ # during the document ingestion process when you update a data source.
10337
+ #
10338
+ # For more information on how to create, modify and delete document
10339
+ # metadata, or make other content alterations when you ingest
10340
+ # documents into Amazon Kendra, see [Customizing document metadata
10341
+ # during the ingestion process][1].
10342
+ #
10343
+ #
10344
+ #
10345
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/custom-document-enrichment.html
10346
+ # @return [Types::CustomDocumentEnrichmentConfiguration]
10347
+ #
8657
10348
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UpdateDataSourceRequest AWS API Documentation
8658
10349
  #
8659
10350
  class UpdateDataSourceRequest < Struct.new(
@@ -8664,7 +10355,77 @@ module Aws::Kendra
8664
10355
  :description,
8665
10356
  :schedule,
8666
10357
  :role_arn,
8667
- :language_code)
10358
+ :language_code,
10359
+ :custom_document_enrichment_configuration)
10360
+ SENSITIVE = []
10361
+ include Aws::Structure
10362
+ end
10363
+
10364
+ # @note When making an API call, you may pass UpdateExperienceRequest
10365
+ # data as a hash:
10366
+ #
10367
+ # {
10368
+ # id: "ExperienceId", # required
10369
+ # name: "ExperienceName",
10370
+ # index_id: "IndexId", # required
10371
+ # role_arn: "RoleArn",
10372
+ # configuration: {
10373
+ # content_source_configuration: {
10374
+ # data_source_ids: ["DataSourceId"],
10375
+ # faq_ids: ["FaqId"],
10376
+ # direct_put_content: false,
10377
+ # },
10378
+ # user_identity_configuration: {
10379
+ # identity_attribute_name: "IdentityAttributeName",
10380
+ # },
10381
+ # },
10382
+ # description: "Description",
10383
+ # }
10384
+ #
10385
+ # @!attribute [rw] id
10386
+ # The identifier of your Amazon Kendra experience you want to update.
10387
+ # @return [String]
10388
+ #
10389
+ # @!attribute [rw] name
10390
+ # The name of your Amazon Kendra experience you want to update.
10391
+ # @return [String]
10392
+ #
10393
+ # @!attribute [rw] index_id
10394
+ # The identifier of the index for your Amazon Kendra experience you
10395
+ # want to update.
10396
+ # @return [String]
10397
+ #
10398
+ # @!attribute [rw] role_arn
10399
+ # The Amazon Resource Name (ARN) of a role with permission to access
10400
+ # `Query` operations, `QuerySuggestions` operations, `SubmitFeedback`
10401
+ # operations, and Amazon Web Services SSO that stores your user and
10402
+ # group information. For more information, see [IAM roles for Amazon
10403
+ # Kendra][1].
10404
+ #
10405
+ #
10406
+ #
10407
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
10408
+ # @return [String]
10409
+ #
10410
+ # @!attribute [rw] configuration
10411
+ # Provides the user configuration information. This includes the
10412
+ # Amazon Web Services SSO field name that contains the identifiers of
10413
+ # your users, such as their emails.
10414
+ # @return [Types::ExperienceConfiguration]
10415
+ #
10416
+ # @!attribute [rw] description
10417
+ # The description of your Amazon Kendra experience you want to update.
10418
+ # @return [String]
10419
+ #
10420
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UpdateExperienceRequest AWS API Documentation
10421
+ #
10422
+ class UpdateExperienceRequest < Struct.new(
10423
+ :id,
10424
+ :name,
10425
+ :index_id,
10426
+ :role_arn,
10427
+ :configuration,
10428
+ :description)
8668
10429
  SENSITIVE = []
8669
10430
  include Aws::Structure
8670
10431
  end
@@ -8765,8 +10526,8 @@ module Aws::Kendra
8765
10526
  # @return [String]
8766
10527
  #
8767
10528
  # @!attribute [rw] user_group_resolution_configuration
8768
- # Enables fetching access levels of groups and users from an AWS
8769
- # Single Sign-On identity source. To configure this, see
10529
+ # Enables fetching access levels of groups and users from an Amazon
10530
+ # Web Services Single Sign On identity source. To configure this, see
8770
10531
  # [UserGroupResolutionConfiguration][1].
8771
10532
  #
8772
10533
  #
@@ -9003,7 +10764,7 @@ module Aws::Kendra
9003
10764
  #
9004
10765
  # *When selecting websites to index, you must adhere to the [Amazon
9005
10766
  # Acceptable Use Policy][1] and all other Amazon terms. Remember that
9006
- # you must only use the Amazon Kendra web crawler to index your own
10767
+ # you must only use Amazon Kendra Web Crawler to index your own
9007
10768
  # webpages, or webpages that you have authorization to index.*
9008
10769
  #
9009
10770
  #
@@ -9113,21 +10874,22 @@ module Aws::Kendra
9113
10874
  end
9114
10875
 
9115
10876
  # Provides the configuration information to fetch access levels of
9116
- # groups and users from an AWS Single Sign-On identity source. This is
9117
- # useful for setting up user context filtering, where Amazon Kendra
9118
- # filters search results for different users based on their group's
9119
- # access to documents. You can also map your users to their groups for
9120
- # user context filtering using the [PutPrincipalMapping operation][1].
10877
+ # groups and users from an Amazon Web Services Single Sign On identity
10878
+ # source. This is useful for setting up user context filtering, where
10879
+ # Amazon Kendra filters search results for different users based on
10880
+ # their group's access to documents. You can also map your users to
10881
+ # their groups for user context filtering using the [PutPrincipalMapping
10882
+ # operation][1].
9121
10883
  #
9122
- # To set up an AWS SSO identity source in the console to use with Amazon
9123
- # Kendra, see [Getting started with an AWS SSO identity source][2]. You
9124
- # must also grant the required permissions to use AWS SSO with Amazon
9125
- # Kendra. For more information, see [IAM roles for AWS Single
9126
- # Sign-On][3].
10884
+ # To set up an Amazon Web Services SSO identity source in the console to
10885
+ # use with Amazon Kendra, see [Getting started with an Amazon Web
10886
+ # Services SSO identity source][2]. You must also grant the required
10887
+ # permissions to use Amazon Web Services SSO with Amazon Kendra. For
10888
+ # more information, see [IAM roles for Amazon Web Services SSO][3].
9127
10889
  #
9128
10890
  #
9129
10891
  #
9130
- # [1]: https://docs.aws.amazon.com/latest/dg/API_PutPrincipalMapping.html
10892
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/API_PutPrincipalMapping.html
9131
10893
  # [2]: https://docs.aws.amazon.com/kendra/latest/dg/getting-started-aws-sso.html
9132
10894
  # [3]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-aws-sso
9133
10895
  #
@@ -9140,9 +10902,10 @@ module Aws::Kendra
9140
10902
  #
9141
10903
  # @!attribute [rw] user_group_resolution_mode
9142
10904
  # The identity store provider (mode) you want to use to fetch access
9143
- # levels of groups and users. AWS Single Sign-On is currently the only
9144
- # available mode. Your users and groups must exist in an AWS SSO
9145
- # identity source in order to use this mode.
10905
+ # levels of groups and users. Amazon Web Services Single Sign On is
10906
+ # currently the only available mode. Your users and groups must exist
10907
+ # in an Amazon Web Services SSO identity source in order to use this
10908
+ # mode.
9146
10909
  # @return [String]
9147
10910
  #
9148
10911
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UserGroupResolutionConfiguration AWS API Documentation
@@ -9153,6 +10916,39 @@ module Aws::Kendra
9153
10916
  include Aws::Structure
9154
10917
  end
9155
10918
 
10919
+ # Configuration information for the identifiers of your users.
10920
+ #
10921
+ # @note When making an API call, you may pass UserIdentityConfiguration
10922
+ # data as a hash:
10923
+ #
10924
+ # {
10925
+ # identity_attribute_name: "IdentityAttributeName",
10926
+ # }
10927
+ #
10928
+ # @!attribute [rw] identity_attribute_name
10929
+ # The Amazon Web Services SSO field name that contains the identifiers
10930
+ # of your users, such as their emails. This is used for [user context
10931
+ # filtering][1] and for granting access to your Amazon Kendra
10932
+ # experience. You must set up Amazon Web Services SSO with Amazon
10933
+ # Kendra. You must include your users and groups in your Access
10934
+ # Control List when you ingest documents into your index. For more
10935
+ # information, see [Getting started with an Amazon Web Services SSO
10936
+ # identity source][2].
10937
+ #
10938
+ #
10939
+ #
10940
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html
10941
+ # [2]: https://docs.aws.amazon.com/kendra/latest/dg/getting-started-aws-sso.html
10942
+ # @return [String]
10943
+ #
10944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UserIdentityConfiguration AWS API Documentation
10945
+ #
10946
+ class UserIdentityConfiguration < Struct.new(
10947
+ :identity_attribute_name)
10948
+ SENSITIVE = []
10949
+ include Aws::Structure
10950
+ end
10951
+
9156
10952
  # Provides configuration information for a token configuration.
9157
10953
  #
9158
10954
  # @note When making an API call, you may pass UserTokenConfiguration
@@ -9202,8 +10998,8 @@ module Aws::Kendra
9202
10998
  include Aws::Structure
9203
10999
  end
9204
11000
 
9205
- # Provides the configuration information required for Amazon Kendra web
9206
- # crawler.
11001
+ # Provides the configuration information required for Amazon Kendra Web
11002
+ # Crawler.
9207
11003
  #
9208
11004
  # @note When making an API call, you may pass WebCrawlerConfiguration
9209
11005
  # data as a hash:
@@ -9254,7 +11050,7 @@ module Aws::Kendra
9254
11050
  #
9255
11051
  # *When selecting websites to index, you must adhere to the [Amazon
9256
11052
  # Acceptable Use Policy][1] and all other Amazon terms. Remember that
9257
- # you must only use the Amazon Kendra web crawler to index your own
11053
+ # you must only use Amazon Kendra Web Crawler to index your own
9258
11054
  # webpages, or webpages that you have authorization to index.*
9259
11055
  #
9260
11056
  #
@@ -9328,7 +11124,7 @@ module Aws::Kendra
9328
11124
  #
9329
11125
  # Web proxy credentials are optional and you can use them to connect
9330
11126
  # to a web proxy server that requires basic authentication. To store
9331
- # web proxy credentials, you use a secret in [AWS Secrets Manager][1].
11127
+ # web proxy credentials, you use a secret in [Secrets Manager][1].
9332
11128
  #
9333
11129
  #
9334
11130
  #
@@ -9345,7 +11141,7 @@ module Aws::Kendra
9345
11141
  # You must provide the website host name and port number. For example,
9346
11142
  # the host name of https://a.example.com/page1.html is
9347
11143
  # "a.example.com" and the port is 443, the standard port for HTTPS.
9348
- # You use a secret in [AWS Secrets Manager][1] to store your
11144
+ # You use a secret in [Secrets Manager][1] to store your
9349
11145
  # authentication credentials.
9350
11146
  #
9351
11147
  #
@@ -9397,10 +11193,10 @@ module Aws::Kendra
9397
11193
  # The identifier of the directory corresponding to your Amazon
9398
11194
  # WorkDocs site repository.
9399
11195
  #
9400
- # You can find the organization ID in the [AWS Directory Service][1]
9401
- # by going to **Active Directory**, then **Directories**. Your Amazon
11196
+ # You can find the organization ID in the [Directory Service][1] by
11197
+ # going to **Active Directory**, then **Directories**. Your Amazon
9402
11198
  # WorkDocs site directory has an ID, which is the organization ID. You
9403
- # can also set up a new Amazon WorkDocs directory in the AWS Directory
11199
+ # can also set up a new Amazon WorkDocs directory in the Directory
9404
11200
  # Service console and enable a Amazon WorkDocs site for the directory
9405
11201
  # in the Amazon WorkDocs console.
9406
11202
  #