aws-sdk-kendra 1.14.0 → 1.19.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.
@@ -35,12 +35,33 @@ module Aws::Kendra
35
35
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
36
36
  CapacityUnitsConfiguration = Shapes::StructureShape.new(name: 'CapacityUnitsConfiguration')
37
37
  ChangeDetectingColumns = Shapes::ListShape.new(name: 'ChangeDetectingColumns')
38
+ ClaimRegex = Shapes::StringShape.new(name: 'ClaimRegex')
38
39
  ClickFeedback = Shapes::StructureShape.new(name: 'ClickFeedback')
39
40
  ClickFeedbackList = Shapes::ListShape.new(name: 'ClickFeedbackList')
40
41
  ClientTokenName = Shapes::StringShape.new(name: 'ClientTokenName')
41
42
  ColumnConfiguration = Shapes::StructureShape.new(name: 'ColumnConfiguration')
42
43
  ColumnName = Shapes::StringShape.new(name: 'ColumnName')
43
44
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
45
+ ConfluenceAttachmentConfiguration = Shapes::StructureShape.new(name: 'ConfluenceAttachmentConfiguration')
46
+ ConfluenceAttachmentFieldMappingsList = Shapes::ListShape.new(name: 'ConfluenceAttachmentFieldMappingsList')
47
+ ConfluenceAttachmentFieldName = Shapes::StringShape.new(name: 'ConfluenceAttachmentFieldName')
48
+ ConfluenceAttachmentToIndexFieldMapping = Shapes::StructureShape.new(name: 'ConfluenceAttachmentToIndexFieldMapping')
49
+ ConfluenceBlogConfiguration = Shapes::StructureShape.new(name: 'ConfluenceBlogConfiguration')
50
+ ConfluenceBlogFieldMappingsList = Shapes::ListShape.new(name: 'ConfluenceBlogFieldMappingsList')
51
+ ConfluenceBlogFieldName = Shapes::StringShape.new(name: 'ConfluenceBlogFieldName')
52
+ ConfluenceBlogToIndexFieldMapping = Shapes::StructureShape.new(name: 'ConfluenceBlogToIndexFieldMapping')
53
+ ConfluenceConfiguration = Shapes::StructureShape.new(name: 'ConfluenceConfiguration')
54
+ ConfluencePageConfiguration = Shapes::StructureShape.new(name: 'ConfluencePageConfiguration')
55
+ ConfluencePageFieldMappingsList = Shapes::ListShape.new(name: 'ConfluencePageFieldMappingsList')
56
+ ConfluencePageFieldName = Shapes::StringShape.new(name: 'ConfluencePageFieldName')
57
+ ConfluencePageToIndexFieldMapping = Shapes::StructureShape.new(name: 'ConfluencePageToIndexFieldMapping')
58
+ ConfluenceSpaceConfiguration = Shapes::StructureShape.new(name: 'ConfluenceSpaceConfiguration')
59
+ ConfluenceSpaceFieldMappingsList = Shapes::ListShape.new(name: 'ConfluenceSpaceFieldMappingsList')
60
+ ConfluenceSpaceFieldName = Shapes::StringShape.new(name: 'ConfluenceSpaceFieldName')
61
+ ConfluenceSpaceIdentifier = Shapes::StringShape.new(name: 'ConfluenceSpaceIdentifier')
62
+ ConfluenceSpaceList = Shapes::ListShape.new(name: 'ConfluenceSpaceList')
63
+ ConfluenceSpaceToIndexFieldMapping = Shapes::StructureShape.new(name: 'ConfluenceSpaceToIndexFieldMapping')
64
+ ConfluenceVersion = Shapes::StringShape.new(name: 'ConfluenceVersion')
44
65
  ConnectionConfiguration = Shapes::StructureShape.new(name: 'ConnectionConfiguration')
45
66
  ContentType = Shapes::StringShape.new(name: 'ContentType')
46
67
  CreateDataSourceRequest = Shapes::StructureShape.new(name: 'CreateDataSourceRequest')
@@ -106,6 +127,9 @@ module Aws::Kendra
106
127
  Duration = Shapes::StringShape.new(name: 'Duration')
107
128
  ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
108
129
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
130
+ ExcludeMimeTypesList = Shapes::ListShape.new(name: 'ExcludeMimeTypesList')
131
+ ExcludeSharedDrivesList = Shapes::ListShape.new(name: 'ExcludeSharedDrivesList')
132
+ ExcludeUserAccountsList = Shapes::ListShape.new(name: 'ExcludeUserAccountsList')
109
133
  Facet = Shapes::StructureShape.new(name: 'Facet')
110
134
  FacetList = Shapes::ListShape.new(name: 'FacetList')
111
135
  FacetResult = Shapes::StructureShape.new(name: 'FacetResult')
@@ -117,6 +141,9 @@ module Aws::Kendra
117
141
  FaqStatus = Shapes::StringShape.new(name: 'FaqStatus')
118
142
  FaqSummary = Shapes::StructureShape.new(name: 'FaqSummary')
119
143
  FaqSummaryItems = Shapes::ListShape.new(name: 'FaqSummaryItems')
144
+ FeedbackToken = Shapes::StringShape.new(name: 'FeedbackToken')
145
+ GoogleDriveConfiguration = Shapes::StructureShape.new(name: 'GoogleDriveConfiguration')
146
+ GroupAttributeField = Shapes::StringShape.new(name: 'GroupAttributeField')
120
147
  Highlight = Shapes::StructureShape.new(name: 'Highlight')
121
148
  HighlightList = Shapes::ListShape.new(name: 'HighlightList')
122
149
  Importance = Shapes::IntegerShape.new(name: 'Importance')
@@ -133,6 +160,10 @@ module Aws::Kendra
133
160
  IndexedTextDocumentsCount = Shapes::IntegerShape.new(name: 'IndexedTextDocumentsCount')
134
161
  Integer = Shapes::IntegerShape.new(name: 'Integer')
135
162
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
163
+ Issuer = Shapes::StringShape.new(name: 'Issuer')
164
+ JsonTokenTypeConfiguration = Shapes::StructureShape.new(name: 'JsonTokenTypeConfiguration')
165
+ JwtTokenTypeConfiguration = Shapes::StructureShape.new(name: 'JwtTokenTypeConfiguration')
166
+ KeyLocation = Shapes::StringShape.new(name: 'KeyLocation')
136
167
  KmsKeyId = Shapes::StringShape.new(name: 'KmsKeyId')
137
168
  ListDataSourceSyncJobsRequest = Shapes::StructureShape.new(name: 'ListDataSourceSyncJobsRequest')
138
169
  ListDataSourceSyncJobsResponse = Shapes::StructureShape.new(name: 'ListDataSourceSyncJobsResponse')
@@ -150,6 +181,7 @@ module Aws::Kendra
150
181
  MaxResultsIntegerForListFaqsRequest = Shapes::IntegerShape.new(name: 'MaxResultsIntegerForListFaqsRequest')
151
182
  MaxResultsIntegerForListIndicesRequest = Shapes::IntegerShape.new(name: 'MaxResultsIntegerForListIndicesRequest')
152
183
  MetricValue = Shapes::StringShape.new(name: 'MetricValue')
184
+ MimeType = Shapes::StringShape.new(name: 'MimeType')
153
185
  NextToken = Shapes::StringShape.new(name: 'NextToken')
154
186
  OneDriveConfiguration = Shapes::StructureShape.new(name: 'OneDriveConfiguration')
155
187
  OneDriveUser = Shapes::StringShape.new(name: 'OneDriveUser')
@@ -215,6 +247,7 @@ module Aws::Kendra
215
247
  SharePointConfiguration = Shapes::StructureShape.new(name: 'SharePointConfiguration')
216
248
  SharePointUrlList = Shapes::ListShape.new(name: 'SharePointUrlList')
217
249
  SharePointVersion = Shapes::StringShape.new(name: 'SharePointVersion')
250
+ SharedDriveId = Shapes::StringShape.new(name: 'SharedDriveId')
218
251
  SortOrder = Shapes::StringShape.new(name: 'SortOrder')
219
252
  SortingConfiguration = Shapes::StructureShape.new(name: 'SortingConfiguration')
220
253
  SqlConfiguration = Shapes::StructureShape.new(name: 'SqlConfiguration')
@@ -241,14 +274,22 @@ module Aws::Kendra
241
274
  TimeRange = Shapes::StructureShape.new(name: 'TimeRange')
242
275
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
243
276
  Title = Shapes::StringShape.new(name: 'Title')
277
+ Token = Shapes::StringShape.new(name: 'Token')
244
278
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
245
279
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
246
280
  UpdateDataSourceRequest = Shapes::StructureShape.new(name: 'UpdateDataSourceRequest')
247
281
  UpdateIndexRequest = Shapes::StructureShape.new(name: 'UpdateIndexRequest')
248
282
  Url = Shapes::StringShape.new(name: 'Url')
283
+ UserAccount = Shapes::StringShape.new(name: 'UserAccount')
284
+ UserContext = Shapes::StructureShape.new(name: 'UserContext')
285
+ UserContextPolicy = Shapes::StringShape.new(name: 'UserContextPolicy')
286
+ UserNameAttributeField = Shapes::StringShape.new(name: 'UserNameAttributeField')
287
+ UserTokenConfiguration = Shapes::StructureShape.new(name: 'UserTokenConfiguration')
288
+ UserTokenConfigurationList = Shapes::ListShape.new(name: 'UserTokenConfigurationList')
249
289
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
250
290
  ValueImportanceMap = Shapes::MapShape.new(name: 'ValueImportanceMap')
251
291
  ValueImportanceMapKey = Shapes::StringShape.new(name: 'ValueImportanceMapKey')
292
+ VisitorId = Shapes::StringShape.new(name: 'VisitorId')
252
293
  VpcSecurityGroupId = Shapes::StringShape.new(name: 'VpcSecurityGroupId')
253
294
 
254
295
  AccessControlListConfiguration.add_member(:key_path, Shapes::ShapeRef.new(shape: S3ObjectKey, location_name: "KeyPath"))
@@ -336,6 +377,65 @@ module Aws::Kendra
336
377
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
337
378
  ConflictException.struct_class = Types::ConflictException
338
379
 
380
+ ConfluenceAttachmentConfiguration.add_member(:crawl_attachments, Shapes::ShapeRef.new(shape: Boolean, location_name: "CrawlAttachments"))
381
+ ConfluenceAttachmentConfiguration.add_member(:attachment_field_mappings, Shapes::ShapeRef.new(shape: ConfluenceAttachmentFieldMappingsList, location_name: "AttachmentFieldMappings"))
382
+ ConfluenceAttachmentConfiguration.struct_class = Types::ConfluenceAttachmentConfiguration
383
+
384
+ ConfluenceAttachmentFieldMappingsList.member = Shapes::ShapeRef.new(shape: ConfluenceAttachmentToIndexFieldMapping)
385
+
386
+ ConfluenceAttachmentToIndexFieldMapping.add_member(:data_source_field_name, Shapes::ShapeRef.new(shape: ConfluenceAttachmentFieldName, location_name: "DataSourceFieldName"))
387
+ ConfluenceAttachmentToIndexFieldMapping.add_member(:date_field_format, Shapes::ShapeRef.new(shape: DataSourceDateFieldFormat, location_name: "DateFieldFormat"))
388
+ ConfluenceAttachmentToIndexFieldMapping.add_member(:index_field_name, Shapes::ShapeRef.new(shape: IndexFieldName, location_name: "IndexFieldName"))
389
+ ConfluenceAttachmentToIndexFieldMapping.struct_class = Types::ConfluenceAttachmentToIndexFieldMapping
390
+
391
+ ConfluenceBlogConfiguration.add_member(:blog_field_mappings, Shapes::ShapeRef.new(shape: ConfluenceBlogFieldMappingsList, location_name: "BlogFieldMappings"))
392
+ ConfluenceBlogConfiguration.struct_class = Types::ConfluenceBlogConfiguration
393
+
394
+ ConfluenceBlogFieldMappingsList.member = Shapes::ShapeRef.new(shape: ConfluenceBlogToIndexFieldMapping)
395
+
396
+ ConfluenceBlogToIndexFieldMapping.add_member(:data_source_field_name, Shapes::ShapeRef.new(shape: ConfluenceBlogFieldName, location_name: "DataSourceFieldName"))
397
+ ConfluenceBlogToIndexFieldMapping.add_member(:date_field_format, Shapes::ShapeRef.new(shape: DataSourceDateFieldFormat, location_name: "DateFieldFormat"))
398
+ ConfluenceBlogToIndexFieldMapping.add_member(:index_field_name, Shapes::ShapeRef.new(shape: IndexFieldName, location_name: "IndexFieldName"))
399
+ ConfluenceBlogToIndexFieldMapping.struct_class = Types::ConfluenceBlogToIndexFieldMapping
400
+
401
+ ConfluenceConfiguration.add_member(:server_url, Shapes::ShapeRef.new(shape: Url, required: true, location_name: "ServerUrl"))
402
+ ConfluenceConfiguration.add_member(:secret_arn, Shapes::ShapeRef.new(shape: SecretArn, required: true, location_name: "SecretArn"))
403
+ ConfluenceConfiguration.add_member(:version, Shapes::ShapeRef.new(shape: ConfluenceVersion, required: true, location_name: "Version"))
404
+ ConfluenceConfiguration.add_member(:space_configuration, Shapes::ShapeRef.new(shape: ConfluenceSpaceConfiguration, location_name: "SpaceConfiguration"))
405
+ ConfluenceConfiguration.add_member(:page_configuration, Shapes::ShapeRef.new(shape: ConfluencePageConfiguration, location_name: "PageConfiguration"))
406
+ ConfluenceConfiguration.add_member(:blog_configuration, Shapes::ShapeRef.new(shape: ConfluenceBlogConfiguration, location_name: "BlogConfiguration"))
407
+ ConfluenceConfiguration.add_member(:attachment_configuration, Shapes::ShapeRef.new(shape: ConfluenceAttachmentConfiguration, location_name: "AttachmentConfiguration"))
408
+ ConfluenceConfiguration.add_member(:vpc_configuration, Shapes::ShapeRef.new(shape: DataSourceVpcConfiguration, location_name: "VpcConfiguration"))
409
+ ConfluenceConfiguration.add_member(:inclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPatterns"))
410
+ ConfluenceConfiguration.add_member(:exclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "ExclusionPatterns"))
411
+ ConfluenceConfiguration.struct_class = Types::ConfluenceConfiguration
412
+
413
+ ConfluencePageConfiguration.add_member(:page_field_mappings, Shapes::ShapeRef.new(shape: ConfluencePageFieldMappingsList, location_name: "PageFieldMappings"))
414
+ ConfluencePageConfiguration.struct_class = Types::ConfluencePageConfiguration
415
+
416
+ ConfluencePageFieldMappingsList.member = Shapes::ShapeRef.new(shape: ConfluencePageToIndexFieldMapping)
417
+
418
+ ConfluencePageToIndexFieldMapping.add_member(:data_source_field_name, Shapes::ShapeRef.new(shape: ConfluencePageFieldName, location_name: "DataSourceFieldName"))
419
+ ConfluencePageToIndexFieldMapping.add_member(:date_field_format, Shapes::ShapeRef.new(shape: DataSourceDateFieldFormat, location_name: "DateFieldFormat"))
420
+ ConfluencePageToIndexFieldMapping.add_member(:index_field_name, Shapes::ShapeRef.new(shape: IndexFieldName, location_name: "IndexFieldName"))
421
+ ConfluencePageToIndexFieldMapping.struct_class = Types::ConfluencePageToIndexFieldMapping
422
+
423
+ ConfluenceSpaceConfiguration.add_member(:crawl_personal_spaces, Shapes::ShapeRef.new(shape: Boolean, location_name: "CrawlPersonalSpaces"))
424
+ ConfluenceSpaceConfiguration.add_member(:crawl_archived_spaces, Shapes::ShapeRef.new(shape: Boolean, location_name: "CrawlArchivedSpaces"))
425
+ ConfluenceSpaceConfiguration.add_member(:include_spaces, Shapes::ShapeRef.new(shape: ConfluenceSpaceList, location_name: "IncludeSpaces"))
426
+ ConfluenceSpaceConfiguration.add_member(:exclude_spaces, Shapes::ShapeRef.new(shape: ConfluenceSpaceList, location_name: "ExcludeSpaces"))
427
+ ConfluenceSpaceConfiguration.add_member(:space_field_mappings, Shapes::ShapeRef.new(shape: ConfluenceSpaceFieldMappingsList, location_name: "SpaceFieldMappings"))
428
+ ConfluenceSpaceConfiguration.struct_class = Types::ConfluenceSpaceConfiguration
429
+
430
+ ConfluenceSpaceFieldMappingsList.member = Shapes::ShapeRef.new(shape: ConfluenceSpaceToIndexFieldMapping)
431
+
432
+ ConfluenceSpaceList.member = Shapes::ShapeRef.new(shape: ConfluenceSpaceIdentifier)
433
+
434
+ ConfluenceSpaceToIndexFieldMapping.add_member(:data_source_field_name, Shapes::ShapeRef.new(shape: ConfluenceSpaceFieldName, location_name: "DataSourceFieldName"))
435
+ ConfluenceSpaceToIndexFieldMapping.add_member(:date_field_format, Shapes::ShapeRef.new(shape: DataSourceDateFieldFormat, location_name: "DateFieldFormat"))
436
+ ConfluenceSpaceToIndexFieldMapping.add_member(:index_field_name, Shapes::ShapeRef.new(shape: IndexFieldName, location_name: "IndexFieldName"))
437
+ ConfluenceSpaceToIndexFieldMapping.struct_class = Types::ConfluenceSpaceToIndexFieldMapping
438
+
339
439
  ConnectionConfiguration.add_member(:database_host, Shapes::ShapeRef.new(shape: DatabaseHost, required: true, location_name: "DatabaseHost"))
340
440
  ConnectionConfiguration.add_member(:database_port, Shapes::ShapeRef.new(shape: DatabasePort, required: true, location_name: "DatabasePort"))
341
441
  ConnectionConfiguration.add_member(:database_name, Shapes::ShapeRef.new(shape: DatabaseName, required: true, location_name: "DatabaseName"))
@@ -346,11 +446,12 @@ module Aws::Kendra
346
446
  CreateDataSourceRequest.add_member(:name, Shapes::ShapeRef.new(shape: DataSourceName, required: true, location_name: "Name"))
347
447
  CreateDataSourceRequest.add_member(:index_id, Shapes::ShapeRef.new(shape: IndexId, required: true, location_name: "IndexId"))
348
448
  CreateDataSourceRequest.add_member(:type, Shapes::ShapeRef.new(shape: DataSourceType, required: true, location_name: "Type"))
349
- CreateDataSourceRequest.add_member(:configuration, Shapes::ShapeRef.new(shape: DataSourceConfiguration, required: true, location_name: "Configuration"))
449
+ CreateDataSourceRequest.add_member(:configuration, Shapes::ShapeRef.new(shape: DataSourceConfiguration, location_name: "Configuration"))
350
450
  CreateDataSourceRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
351
451
  CreateDataSourceRequest.add_member(:schedule, Shapes::ShapeRef.new(shape: ScanSchedule, location_name: "Schedule"))
352
- CreateDataSourceRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "RoleArn"))
452
+ CreateDataSourceRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "RoleArn"))
353
453
  CreateDataSourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
454
+ CreateDataSourceRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientTokenName, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
354
455
  CreateDataSourceRequest.struct_class = Types::CreateDataSourceRequest
355
456
 
356
457
  CreateDataSourceResponse.add_member(:id, Shapes::ShapeRef.new(shape: DataSourceId, required: true, location_name: "Id"))
@@ -363,6 +464,7 @@ module Aws::Kendra
363
464
  CreateFaqRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "RoleArn"))
364
465
  CreateFaqRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
365
466
  CreateFaqRequest.add_member(:file_format, Shapes::ShapeRef.new(shape: FaqFileFormat, location_name: "FileFormat"))
467
+ CreateFaqRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientTokenName, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
366
468
  CreateFaqRequest.struct_class = Types::CreateFaqRequest
367
469
 
368
470
  CreateFaqResponse.add_member(:id, Shapes::ShapeRef.new(shape: FaqId, location_name: "Id"))
@@ -375,6 +477,8 @@ module Aws::Kendra
375
477
  CreateIndexRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
376
478
  CreateIndexRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientTokenName, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
377
479
  CreateIndexRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
480
+ CreateIndexRequest.add_member(:user_token_configurations, Shapes::ShapeRef.new(shape: UserTokenConfigurationList, location_name: "UserTokenConfigurations"))
481
+ CreateIndexRequest.add_member(:user_context_policy, Shapes::ShapeRef.new(shape: UserContextPolicy, location_name: "UserContextPolicy"))
378
482
  CreateIndexRequest.struct_class = Types::CreateIndexRequest
379
483
 
380
484
  CreateIndexResponse.add_member(:id, Shapes::ShapeRef.new(shape: IndexId, location_name: "Id"))
@@ -386,6 +490,8 @@ module Aws::Kendra
386
490
  DataSourceConfiguration.add_member(:salesforce_configuration, Shapes::ShapeRef.new(shape: SalesforceConfiguration, location_name: "SalesforceConfiguration"))
387
491
  DataSourceConfiguration.add_member(:one_drive_configuration, Shapes::ShapeRef.new(shape: OneDriveConfiguration, location_name: "OneDriveConfiguration"))
388
492
  DataSourceConfiguration.add_member(:service_now_configuration, Shapes::ShapeRef.new(shape: ServiceNowConfiguration, location_name: "ServiceNowConfiguration"))
493
+ DataSourceConfiguration.add_member(:confluence_configuration, Shapes::ShapeRef.new(shape: ConfluenceConfiguration, location_name: "ConfluenceConfiguration"))
494
+ DataSourceConfiguration.add_member(:google_drive_configuration, Shapes::ShapeRef.new(shape: GoogleDriveConfiguration, location_name: "GoogleDriveConfiguration"))
389
495
  DataSourceConfiguration.struct_class = Types::DataSourceConfiguration
390
496
 
391
497
  DataSourceInclusionsExclusionsStrings.member = Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStringsMember)
@@ -504,6 +610,8 @@ module Aws::Kendra
504
610
  DescribeIndexResponse.add_member(:index_statistics, Shapes::ShapeRef.new(shape: IndexStatistics, location_name: "IndexStatistics"))
505
611
  DescribeIndexResponse.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "ErrorMessage"))
506
612
  DescribeIndexResponse.add_member(:capacity_units, Shapes::ShapeRef.new(shape: CapacityUnitsConfiguration, location_name: "CapacityUnits"))
613
+ DescribeIndexResponse.add_member(:user_token_configurations, Shapes::ShapeRef.new(shape: UserTokenConfigurationList, location_name: "UserTokenConfigurations"))
614
+ DescribeIndexResponse.add_member(:user_context_policy, Shapes::ShapeRef.new(shape: UserContextPolicy, location_name: "UserContextPolicy"))
507
615
  DescribeIndexResponse.struct_class = Types::DescribeIndexResponse
508
616
 
509
617
  Document.add_member(:id, Shapes::ShapeRef.new(shape: DocumentId, required: true, location_name: "Id"))
@@ -552,6 +660,12 @@ module Aws::Kendra
552
660
  DocumentsMetadataConfiguration.add_member(:s3_prefix, Shapes::ShapeRef.new(shape: S3ObjectKey, location_name: "S3Prefix"))
553
661
  DocumentsMetadataConfiguration.struct_class = Types::DocumentsMetadataConfiguration
554
662
 
663
+ ExcludeMimeTypesList.member = Shapes::ShapeRef.new(shape: MimeType)
664
+
665
+ ExcludeSharedDrivesList.member = Shapes::ShapeRef.new(shape: SharedDriveId)
666
+
667
+ ExcludeUserAccountsList.member = Shapes::ShapeRef.new(shape: UserAccount)
668
+
555
669
  Facet.add_member(:document_attribute_key, Shapes::ShapeRef.new(shape: DocumentAttributeKey, location_name: "DocumentAttributeKey"))
556
670
  Facet.struct_class = Types::Facet
557
671
 
@@ -577,6 +691,15 @@ module Aws::Kendra
577
691
 
578
692
  FaqSummaryItems.member = Shapes::ShapeRef.new(shape: FaqSummary)
579
693
 
694
+ GoogleDriveConfiguration.add_member(:secret_arn, Shapes::ShapeRef.new(shape: SecretArn, required: true, location_name: "SecretArn"))
695
+ GoogleDriveConfiguration.add_member(:inclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPatterns"))
696
+ GoogleDriveConfiguration.add_member(:exclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "ExclusionPatterns"))
697
+ GoogleDriveConfiguration.add_member(:field_mappings, Shapes::ShapeRef.new(shape: DataSourceToIndexFieldMappingList, location_name: "FieldMappings"))
698
+ GoogleDriveConfiguration.add_member(:exclude_mime_types, Shapes::ShapeRef.new(shape: ExcludeMimeTypesList, location_name: "ExcludeMimeTypes"))
699
+ GoogleDriveConfiguration.add_member(:exclude_user_accounts, Shapes::ShapeRef.new(shape: ExcludeUserAccountsList, location_name: "ExcludeUserAccounts"))
700
+ GoogleDriveConfiguration.add_member(:exclude_shared_drives, Shapes::ShapeRef.new(shape: ExcludeSharedDrivesList, location_name: "ExcludeSharedDrives"))
701
+ GoogleDriveConfiguration.struct_class = Types::GoogleDriveConfiguration
702
+
580
703
  Highlight.add_member(:begin_offset, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "BeginOffset"))
581
704
  Highlight.add_member(:end_offset, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "EndOffset"))
582
705
  Highlight.add_member(:top_answer, Shapes::ShapeRef.new(shape: Boolean, location_name: "TopAnswer"))
@@ -601,6 +724,19 @@ module Aws::Kendra
601
724
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
602
725
  InternalServerException.struct_class = Types::InternalServerException
603
726
 
727
+ JsonTokenTypeConfiguration.add_member(:user_name_attribute_field, Shapes::ShapeRef.new(shape: String, required: true, location_name: "UserNameAttributeField"))
728
+ JsonTokenTypeConfiguration.add_member(:group_attribute_field, Shapes::ShapeRef.new(shape: String, required: true, location_name: "GroupAttributeField"))
729
+ JsonTokenTypeConfiguration.struct_class = Types::JsonTokenTypeConfiguration
730
+
731
+ JwtTokenTypeConfiguration.add_member(:key_location, Shapes::ShapeRef.new(shape: KeyLocation, required: true, location_name: "KeyLocation"))
732
+ JwtTokenTypeConfiguration.add_member(:url, Shapes::ShapeRef.new(shape: Url, location_name: "URL"))
733
+ JwtTokenTypeConfiguration.add_member(:secret_manager_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "SecretManagerArn"))
734
+ JwtTokenTypeConfiguration.add_member(:user_name_attribute_field, Shapes::ShapeRef.new(shape: UserNameAttributeField, location_name: "UserNameAttributeField"))
735
+ JwtTokenTypeConfiguration.add_member(:group_attribute_field, Shapes::ShapeRef.new(shape: GroupAttributeField, location_name: "GroupAttributeField"))
736
+ JwtTokenTypeConfiguration.add_member(:issuer, Shapes::ShapeRef.new(shape: Issuer, location_name: "Issuer"))
737
+ JwtTokenTypeConfiguration.add_member(:claim_regex, Shapes::ShapeRef.new(shape: ClaimRegex, location_name: "ClaimRegex"))
738
+ JwtTokenTypeConfiguration.struct_class = Types::JwtTokenTypeConfiguration
739
+
604
740
  ListDataSourceSyncJobsRequest.add_member(:id, Shapes::ShapeRef.new(shape: DataSourceId, required: true, location_name: "Id"))
605
741
  ListDataSourceSyncJobsRequest.add_member(:index_id, Shapes::ShapeRef.new(shape: IndexId, required: true, location_name: "IndexId"))
606
742
  ListDataSourceSyncJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -651,6 +787,7 @@ module Aws::Kendra
651
787
  OneDriveConfiguration.add_member(:inclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPatterns"))
652
788
  OneDriveConfiguration.add_member(:exclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "ExclusionPatterns"))
653
789
  OneDriveConfiguration.add_member(:field_mappings, Shapes::ShapeRef.new(shape: DataSourceToIndexFieldMappingList, location_name: "FieldMappings"))
790
+ OneDriveConfiguration.add_member(:disable_local_groups, Shapes::ShapeRef.new(shape: Boolean, location_name: "DisableLocalGroups"))
654
791
  OneDriveConfiguration.struct_class = Types::OneDriveConfiguration
655
792
 
656
793
  OneDriveUserList.member = Shapes::ShapeRef.new(shape: OneDriveUser)
@@ -675,6 +812,8 @@ module Aws::Kendra
675
812
  QueryRequest.add_member(:page_number, Shapes::ShapeRef.new(shape: Integer, location_name: "PageNumber"))
676
813
  QueryRequest.add_member(:page_size, Shapes::ShapeRef.new(shape: Integer, location_name: "PageSize"))
677
814
  QueryRequest.add_member(:sorting_configuration, Shapes::ShapeRef.new(shape: SortingConfiguration, location_name: "SortingConfiguration"))
815
+ QueryRequest.add_member(:user_context, Shapes::ShapeRef.new(shape: UserContext, location_name: "UserContext"))
816
+ QueryRequest.add_member(:visitor_id, Shapes::ShapeRef.new(shape: VisitorId, location_name: "VisitorId"))
678
817
  QueryRequest.struct_class = Types::QueryRequest
679
818
 
680
819
  QueryResult.add_member(:query_id, Shapes::ShapeRef.new(shape: QueryId, location_name: "QueryId"))
@@ -692,6 +831,7 @@ module Aws::Kendra
692
831
  QueryResultItem.add_member(:document_uri, Shapes::ShapeRef.new(shape: Url, location_name: "DocumentURI"))
693
832
  QueryResultItem.add_member(:document_attributes, Shapes::ShapeRef.new(shape: DocumentAttributeList, location_name: "DocumentAttributes"))
694
833
  QueryResultItem.add_member(:score_attributes, Shapes::ShapeRef.new(shape: ScoreAttributes, location_name: "ScoreAttributes"))
834
+ QueryResultItem.add_member(:feedback_token, Shapes::ShapeRef.new(shape: FeedbackToken, location_name: "FeedbackToken"))
695
835
  QueryResultItem.struct_class = Types::QueryResultItem
696
836
 
697
837
  QueryResultItemList.member = Shapes::ShapeRef.new(shape: QueryResultItem)
@@ -723,6 +863,7 @@ module Aws::Kendra
723
863
 
724
864
  S3DataSourceConfiguration.add_member(:bucket_name, Shapes::ShapeRef.new(shape: S3BucketName, required: true, location_name: "BucketName"))
725
865
  S3DataSourceConfiguration.add_member(:inclusion_prefixes, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPrefixes"))
866
+ S3DataSourceConfiguration.add_member(:inclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPatterns"))
726
867
  S3DataSourceConfiguration.add_member(:exclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "ExclusionPatterns"))
727
868
  S3DataSourceConfiguration.add_member(:documents_metadata_configuration, Shapes::ShapeRef.new(shape: DocumentsMetadataConfiguration, location_name: "DocumentsMetadataConfiguration"))
728
869
  S3DataSourceConfiguration.add_member(:access_control_list_configuration, Shapes::ShapeRef.new(shape: AccessControlListConfiguration, location_name: "AccessControlListConfiguration"))
@@ -833,6 +974,7 @@ module Aws::Kendra
833
974
  SharePointConfiguration.add_member(:vpc_configuration, Shapes::ShapeRef.new(shape: DataSourceVpcConfiguration, location_name: "VpcConfiguration"))
834
975
  SharePointConfiguration.add_member(:field_mappings, Shapes::ShapeRef.new(shape: DataSourceToIndexFieldMappingList, location_name: "FieldMappings"))
835
976
  SharePointConfiguration.add_member(:document_title_field_name, Shapes::ShapeRef.new(shape: DataSourceFieldName, location_name: "DocumentTitleFieldName"))
977
+ SharePointConfiguration.add_member(:disable_local_groups, Shapes::ShapeRef.new(shape: Boolean, location_name: "DisableLocalGroups"))
836
978
  SharePointConfiguration.struct_class = Types::SharePointConfiguration
837
979
 
838
980
  SharePointUrlList.member = Shapes::ShapeRef.new(shape: Url)
@@ -913,8 +1055,19 @@ module Aws::Kendra
913
1055
  UpdateIndexRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
914
1056
  UpdateIndexRequest.add_member(:document_metadata_configuration_updates, Shapes::ShapeRef.new(shape: DocumentMetadataConfigurationList, location_name: "DocumentMetadataConfigurationUpdates"))
915
1057
  UpdateIndexRequest.add_member(:capacity_units, Shapes::ShapeRef.new(shape: CapacityUnitsConfiguration, location_name: "CapacityUnits"))
1058
+ UpdateIndexRequest.add_member(:user_token_configurations, Shapes::ShapeRef.new(shape: UserTokenConfigurationList, location_name: "UserTokenConfigurations"))
1059
+ UpdateIndexRequest.add_member(:user_context_policy, Shapes::ShapeRef.new(shape: UserContextPolicy, location_name: "UserContextPolicy"))
916
1060
  UpdateIndexRequest.struct_class = Types::UpdateIndexRequest
917
1061
 
1062
+ UserContext.add_member(:token, Shapes::ShapeRef.new(shape: Token, location_name: "Token"))
1063
+ UserContext.struct_class = Types::UserContext
1064
+
1065
+ UserTokenConfiguration.add_member(:jwt_token_type_configuration, Shapes::ShapeRef.new(shape: JwtTokenTypeConfiguration, location_name: "JwtTokenTypeConfiguration"))
1066
+ UserTokenConfiguration.add_member(:json_token_type_configuration, Shapes::ShapeRef.new(shape: JsonTokenTypeConfiguration, location_name: "JsonTokenTypeConfiguration"))
1067
+ UserTokenConfiguration.struct_class = Types::UserTokenConfiguration
1068
+
1069
+ UserTokenConfigurationList.member = Shapes::ShapeRef.new(shape: UserTokenConfiguration)
1070
+
918
1071
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
919
1072
  ValidationException.struct_class = Types::ValidationException
920
1073
 
@@ -10,7 +10,12 @@
10
10
  module Aws::Kendra
11
11
  module Types
12
12
 
13
- # Access Control List files for the documents in a data source.
13
+ # Access Control List files for the documents in a data source. For the
14
+ # format of the file, see [Access control for S3 data sources][1].
15
+ #
16
+ #
17
+ #
18
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/s3-acl.html
14
19
  #
15
20
  # @note When making an API call, you may pass AccessControlListConfiguration
16
21
  # data as a hash:
@@ -818,6 +823,491 @@ module Aws::Kendra
818
823
  include Aws::Structure
819
824
  end
820
825
 
826
+ # Specifies the attachment settings for the Confluence data source.
827
+ # Attachment settings are optional, if you don't specify settings
828
+ # attachments, Amazon Kendra won't index them.
829
+ #
830
+ # @note When making an API call, you may pass ConfluenceAttachmentConfiguration
831
+ # data as a hash:
832
+ #
833
+ # {
834
+ # crawl_attachments: false,
835
+ # attachment_field_mappings: [
836
+ # {
837
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
838
+ # date_field_format: "DataSourceDateFieldFormat",
839
+ # index_field_name: "IndexFieldName",
840
+ # },
841
+ # ],
842
+ # }
843
+ #
844
+ # @!attribute [rw] crawl_attachments
845
+ # Indicates whether Amazon Kendra indexes attachments to the pages and
846
+ # blogs in the Confluence data source.
847
+ # @return [Boolean]
848
+ #
849
+ # @!attribute [rw] attachment_field_mappings
850
+ # Defines how attachment metadata fields should be mapped to index
851
+ # fields. Before you can map a field, you must first create an index
852
+ # field with a matching type using the console or the `UpdateIndex`
853
+ # operation.
854
+ #
855
+ # If you specify the `AttachentFieldMappings` parameter, you must
856
+ # specify at least one field mapping.
857
+ # @return [Array<Types::ConfluenceAttachmentToIndexFieldMapping>]
858
+ #
859
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceAttachmentConfiguration AWS API Documentation
860
+ #
861
+ class ConfluenceAttachmentConfiguration < Struct.new(
862
+ :crawl_attachments,
863
+ :attachment_field_mappings)
864
+ SENSITIVE = []
865
+ include Aws::Structure
866
+ end
867
+
868
+ # Defines the mapping between a field in the Confluence data source to a
869
+ # Amazon Kendra index field.
870
+ #
871
+ # You must first create the index field using the operation.
872
+ #
873
+ # @note When making an API call, you may pass ConfluenceAttachmentToIndexFieldMapping
874
+ # data as a hash:
875
+ #
876
+ # {
877
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
878
+ # date_field_format: "DataSourceDateFieldFormat",
879
+ # index_field_name: "IndexFieldName",
880
+ # }
881
+ #
882
+ # @!attribute [rw] data_source_field_name
883
+ # The name of the field in the data source.
884
+ #
885
+ # You must first create the index field using the operation.
886
+ # @return [String]
887
+ #
888
+ # @!attribute [rw] date_field_format
889
+ # The format for date fields in the data source. If the field
890
+ # specified in `DataSourceFieldName` is a date field you must specify
891
+ # the date format. If the field is not a date field, an exception is
892
+ # thrown.
893
+ # @return [String]
894
+ #
895
+ # @!attribute [rw] index_field_name
896
+ # The name of the index field to map to the Confluence data source
897
+ # field. The index field type must match the Confluence field type.
898
+ # @return [String]
899
+ #
900
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceAttachmentToIndexFieldMapping AWS API Documentation
901
+ #
902
+ class ConfluenceAttachmentToIndexFieldMapping < Struct.new(
903
+ :data_source_field_name,
904
+ :date_field_format,
905
+ :index_field_name)
906
+ SENSITIVE = []
907
+ include Aws::Structure
908
+ end
909
+
910
+ # Specifies the blog settings for the Confluence data source. Blogs are
911
+ # always indexed unless filtered from the index by the
912
+ # `ExclusionPatterns` or `InclusionPatterns` fields in the data type.
913
+ #
914
+ # @note When making an API call, you may pass ConfluenceBlogConfiguration
915
+ # data as a hash:
916
+ #
917
+ # {
918
+ # blog_field_mappings: [
919
+ # {
920
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
921
+ # date_field_format: "DataSourceDateFieldFormat",
922
+ # index_field_name: "IndexFieldName",
923
+ # },
924
+ # ],
925
+ # }
926
+ #
927
+ # @!attribute [rw] blog_field_mappings
928
+ # Defines how blog metadata fields should be mapped to index fields.
929
+ # Before you can map a field, you must first create an index field
930
+ # with a matching type using the console or the `UpdateIndex`
931
+ # operation.
932
+ #
933
+ # If you specify the `BlogFieldMappings` parameter, you must specify
934
+ # at least one field mapping.
935
+ # @return [Array<Types::ConfluenceBlogToIndexFieldMapping>]
936
+ #
937
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceBlogConfiguration AWS API Documentation
938
+ #
939
+ class ConfluenceBlogConfiguration < Struct.new(
940
+ :blog_field_mappings)
941
+ SENSITIVE = []
942
+ include Aws::Structure
943
+ end
944
+
945
+ # Defines the mapping between a blog field in the Confluence data source
946
+ # to a Amazon Kendra index field.
947
+ #
948
+ # You must first create the index field using the operation.
949
+ #
950
+ # @note When making an API call, you may pass ConfluenceBlogToIndexFieldMapping
951
+ # data as a hash:
952
+ #
953
+ # {
954
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
955
+ # date_field_format: "DataSourceDateFieldFormat",
956
+ # index_field_name: "IndexFieldName",
957
+ # }
958
+ #
959
+ # @!attribute [rw] data_source_field_name
960
+ # The name of the field in the data source.
961
+ # @return [String]
962
+ #
963
+ # @!attribute [rw] date_field_format
964
+ # The format for date fields in the data source. If the field
965
+ # specified in `DataSourceFieldName` is a date field you must specify
966
+ # the date format. If the field is not a date field, an exception is
967
+ # thrown.
968
+ # @return [String]
969
+ #
970
+ # @!attribute [rw] index_field_name
971
+ # The name of the index field to map to the Confluence data source
972
+ # field. The index field type must match the Confluence field type.
973
+ # @return [String]
974
+ #
975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceBlogToIndexFieldMapping AWS API Documentation
976
+ #
977
+ class ConfluenceBlogToIndexFieldMapping < Struct.new(
978
+ :data_source_field_name,
979
+ :date_field_format,
980
+ :index_field_name)
981
+ SENSITIVE = []
982
+ include Aws::Structure
983
+ end
984
+
985
+ # Provides configuration information for data sources that connect to
986
+ # Confluence.
987
+ #
988
+ # @note When making an API call, you may pass ConfluenceConfiguration
989
+ # data as a hash:
990
+ #
991
+ # {
992
+ # server_url: "Url", # required
993
+ # secret_arn: "SecretArn", # required
994
+ # version: "CLOUD", # required, accepts CLOUD, SERVER
995
+ # space_configuration: {
996
+ # crawl_personal_spaces: false,
997
+ # crawl_archived_spaces: false,
998
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
999
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
1000
+ # space_field_mappings: [
1001
+ # {
1002
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1003
+ # date_field_format: "DataSourceDateFieldFormat",
1004
+ # index_field_name: "IndexFieldName",
1005
+ # },
1006
+ # ],
1007
+ # },
1008
+ # page_configuration: {
1009
+ # page_field_mappings: [
1010
+ # {
1011
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1012
+ # date_field_format: "DataSourceDateFieldFormat",
1013
+ # index_field_name: "IndexFieldName",
1014
+ # },
1015
+ # ],
1016
+ # },
1017
+ # blog_configuration: {
1018
+ # blog_field_mappings: [
1019
+ # {
1020
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
1021
+ # date_field_format: "DataSourceDateFieldFormat",
1022
+ # index_field_name: "IndexFieldName",
1023
+ # },
1024
+ # ],
1025
+ # },
1026
+ # attachment_configuration: {
1027
+ # crawl_attachments: false,
1028
+ # attachment_field_mappings: [
1029
+ # {
1030
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1031
+ # date_field_format: "DataSourceDateFieldFormat",
1032
+ # index_field_name: "IndexFieldName",
1033
+ # },
1034
+ # ],
1035
+ # },
1036
+ # vpc_configuration: {
1037
+ # subnet_ids: ["SubnetId"], # required
1038
+ # security_group_ids: ["VpcSecurityGroupId"], # required
1039
+ # },
1040
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1041
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1042
+ # }
1043
+ #
1044
+ # @!attribute [rw] server_url
1045
+ # The URL of your Confluence instance. Use the full URL of the server.
1046
+ # For example, `https://server.example.com:port/`. You can also use an
1047
+ # IP address, for example, `https://192.168.1.113/`.
1048
+ # @return [String]
1049
+ #
1050
+ # @!attribute [rw] secret_arn
1051
+ # The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that
1052
+ # contains the key/value pairs required to connect to your Confluence
1053
+ # server. The secret must contain a JSON structure with the following
1054
+ # keys:
1055
+ #
1056
+ # * username - The user name or email address of a user with
1057
+ # administrative privileges for the Confluence server.
1058
+ #
1059
+ # * password - The password associated with the user logging in to the
1060
+ # Confluence server.
1061
+ # @return [String]
1062
+ #
1063
+ # @!attribute [rw] version
1064
+ # Specifies the version of the Confluence installation that you are
1065
+ # connecting to.
1066
+ # @return [String]
1067
+ #
1068
+ # @!attribute [rw] space_configuration
1069
+ # Specifies configuration information for indexing Confluence spaces.
1070
+ # @return [Types::ConfluenceSpaceConfiguration]
1071
+ #
1072
+ # @!attribute [rw] page_configuration
1073
+ # Specifies configuration information for indexing Confluence pages.
1074
+ # @return [Types::ConfluencePageConfiguration]
1075
+ #
1076
+ # @!attribute [rw] blog_configuration
1077
+ # Specifies configuration information for indexing Confluence blogs.
1078
+ # @return [Types::ConfluenceBlogConfiguration]
1079
+ #
1080
+ # @!attribute [rw] attachment_configuration
1081
+ # Specifies configuration information for indexing attachments to
1082
+ # Confluence blogs and pages.
1083
+ # @return [Types::ConfluenceAttachmentConfiguration]
1084
+ #
1085
+ # @!attribute [rw] vpc_configuration
1086
+ # Specifies the information for connecting to an Amazon VPC.
1087
+ # @return [Types::DataSourceVpcConfiguration]
1088
+ #
1089
+ # @!attribute [rw] inclusion_patterns
1090
+ # A list of regular expression patterns that apply to a URL on the
1091
+ # Confluence server. An inclusion pattern can apply to a blog post, a
1092
+ # page, a space, or an attachment. Items that match the patterns are
1093
+ # included in the index. Items that don't match the pattern are
1094
+ # excluded from the index. If an item matches both an inclusion
1095
+ # pattern and an exclusion pattern, the item isn't included in the
1096
+ # index.
1097
+ # @return [Array<String>]
1098
+ #
1099
+ # @!attribute [rw] exclusion_patterns
1100
+ # A list of regular expression patterns that apply to a URL on the
1101
+ # Confluence server. An exclusion pattern can apply to a blog post, a
1102
+ # page, a space, or an attachment. Items that match the pattern are
1103
+ # excluded from the index. Items that don't match the pattern are
1104
+ # included in the index. If a item matches both an exclusion pattern
1105
+ # and an inclusion pattern, the item isn't included in the index.
1106
+ # @return [Array<String>]
1107
+ #
1108
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceConfiguration AWS API Documentation
1109
+ #
1110
+ class ConfluenceConfiguration < Struct.new(
1111
+ :server_url,
1112
+ :secret_arn,
1113
+ :version,
1114
+ :space_configuration,
1115
+ :page_configuration,
1116
+ :blog_configuration,
1117
+ :attachment_configuration,
1118
+ :vpc_configuration,
1119
+ :inclusion_patterns,
1120
+ :exclusion_patterns)
1121
+ SENSITIVE = []
1122
+ include Aws::Structure
1123
+ end
1124
+
1125
+ # Specifies the page settings for the Confluence data source.
1126
+ #
1127
+ # @note When making an API call, you may pass ConfluencePageConfiguration
1128
+ # data as a hash:
1129
+ #
1130
+ # {
1131
+ # page_field_mappings: [
1132
+ # {
1133
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1134
+ # date_field_format: "DataSourceDateFieldFormat",
1135
+ # index_field_name: "IndexFieldName",
1136
+ # },
1137
+ # ],
1138
+ # }
1139
+ #
1140
+ # @!attribute [rw] page_field_mappings
1141
+ # Defines how page metadata fields should be mapped to index fields.
1142
+ # Before you can map a field, you must first create an index field
1143
+ # with a matching type using the console or the `UpdateIndex`
1144
+ # operation.
1145
+ #
1146
+ # If you specify the `PageFieldMappings` parameter, you must specify
1147
+ # at least one field mapping.
1148
+ # @return [Array<Types::ConfluencePageToIndexFieldMapping>]
1149
+ #
1150
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluencePageConfiguration AWS API Documentation
1151
+ #
1152
+ class ConfluencePageConfiguration < Struct.new(
1153
+ :page_field_mappings)
1154
+ SENSITIVE = []
1155
+ include Aws::Structure
1156
+ end
1157
+
1158
+ # Defines the mapping between a field in the Confluence data source to a
1159
+ # Amazon Kendra index field.
1160
+ #
1161
+ # You must first create the index field using the operation.
1162
+ #
1163
+ # @note When making an API call, you may pass ConfluencePageToIndexFieldMapping
1164
+ # data as a hash:
1165
+ #
1166
+ # {
1167
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1168
+ # date_field_format: "DataSourceDateFieldFormat",
1169
+ # index_field_name: "IndexFieldName",
1170
+ # }
1171
+ #
1172
+ # @!attribute [rw] data_source_field_name
1173
+ # The name of the field in the data source.
1174
+ # @return [String]
1175
+ #
1176
+ # @!attribute [rw] date_field_format
1177
+ # The format for date fields in the data source. If the field
1178
+ # specified in `DataSourceFieldName` is a date field you must specify
1179
+ # the date format. If the field is not a date field, an exception is
1180
+ # thrown.
1181
+ # @return [String]
1182
+ #
1183
+ # @!attribute [rw] index_field_name
1184
+ # The name of the index field to map to the Confluence data source
1185
+ # field. The index field type must match the Confluence field type.
1186
+ # @return [String]
1187
+ #
1188
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluencePageToIndexFieldMapping AWS API Documentation
1189
+ #
1190
+ class ConfluencePageToIndexFieldMapping < Struct.new(
1191
+ :data_source_field_name,
1192
+ :date_field_format,
1193
+ :index_field_name)
1194
+ SENSITIVE = []
1195
+ include Aws::Structure
1196
+ end
1197
+
1198
+ # Specifies the configuration for indexing Confluence spaces.
1199
+ #
1200
+ # @note When making an API call, you may pass ConfluenceSpaceConfiguration
1201
+ # data as a hash:
1202
+ #
1203
+ # {
1204
+ # crawl_personal_spaces: false,
1205
+ # crawl_archived_spaces: false,
1206
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
1207
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
1208
+ # space_field_mappings: [
1209
+ # {
1210
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1211
+ # date_field_format: "DataSourceDateFieldFormat",
1212
+ # index_field_name: "IndexFieldName",
1213
+ # },
1214
+ # ],
1215
+ # }
1216
+ #
1217
+ # @!attribute [rw] crawl_personal_spaces
1218
+ # Specifies whether Amazon Kendra should index personal spaces. Users
1219
+ # can add restrictions to items in personal spaces. If personal spaces
1220
+ # are indexed, queries without user context information may return
1221
+ # restricted items from a personal space in their results. For more
1222
+ # information, see [Filtering on user context][1].
1223
+ #
1224
+ #
1225
+ #
1226
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html
1227
+ # @return [Boolean]
1228
+ #
1229
+ # @!attribute [rw] crawl_archived_spaces
1230
+ # Specifies whether Amazon Kendra should index archived spaces.
1231
+ # @return [Boolean]
1232
+ #
1233
+ # @!attribute [rw] include_spaces
1234
+ # A list of space keys for Confluence spaces. If you include a key,
1235
+ # the blogs, documents, and attachments in the space are indexed.
1236
+ # Spaces that aren't in the list aren't indexed. A space in the list
1237
+ # must exist. Otherwise, Amazon Kendra logs an error when the data
1238
+ # source is synchronized. If a space is in both the `IncludeSpaces`
1239
+ # and the `ExcludeSpaces` list, the space is excluded.
1240
+ # @return [Array<String>]
1241
+ #
1242
+ # @!attribute [rw] exclude_spaces
1243
+ # A list of space keys of Confluence spaces. If you include a key, the
1244
+ # blogs, documents, and attachments in the space are not indexed. If a
1245
+ # space is in both the `ExcludeSpaces` and the `IncludeSpaces` list,
1246
+ # the space is excluded.
1247
+ # @return [Array<String>]
1248
+ #
1249
+ # @!attribute [rw] space_field_mappings
1250
+ # Defines how space metadata fields should be mapped to index fields.
1251
+ # Before you can map a field, you must first create an index field
1252
+ # with a matching type using the console or the `UpdateIndex`
1253
+ # operation.
1254
+ #
1255
+ # If you specify the `SpaceFieldMappings` parameter, you must specify
1256
+ # at least one field mapping.
1257
+ # @return [Array<Types::ConfluenceSpaceToIndexFieldMapping>]
1258
+ #
1259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceSpaceConfiguration AWS API Documentation
1260
+ #
1261
+ class ConfluenceSpaceConfiguration < Struct.new(
1262
+ :crawl_personal_spaces,
1263
+ :crawl_archived_spaces,
1264
+ :include_spaces,
1265
+ :exclude_spaces,
1266
+ :space_field_mappings)
1267
+ SENSITIVE = []
1268
+ include Aws::Structure
1269
+ end
1270
+
1271
+ # Defines the mapping between a field in the Confluence data source to a
1272
+ # Amazon Kendra index field.
1273
+ #
1274
+ # You must first create the index field using the operation.
1275
+ #
1276
+ # @note When making an API call, you may pass ConfluenceSpaceToIndexFieldMapping
1277
+ # data as a hash:
1278
+ #
1279
+ # {
1280
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1281
+ # date_field_format: "DataSourceDateFieldFormat",
1282
+ # index_field_name: "IndexFieldName",
1283
+ # }
1284
+ #
1285
+ # @!attribute [rw] data_source_field_name
1286
+ # The name of the field in the data source.
1287
+ # @return [String]
1288
+ #
1289
+ # @!attribute [rw] date_field_format
1290
+ # The format for date fields in the data source. If the field
1291
+ # specified in `DataSourceFieldName` is a date field you must specify
1292
+ # the date format. If the field is not a date field, an exception is
1293
+ # thrown.
1294
+ # @return [String]
1295
+ #
1296
+ # @!attribute [rw] index_field_name
1297
+ # The name of the index field to map to the Confluence data source
1298
+ # field. The index field type must match the Confluence field type.
1299
+ # @return [String]
1300
+ #
1301
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceSpaceToIndexFieldMapping AWS API Documentation
1302
+ #
1303
+ class ConfluenceSpaceToIndexFieldMapping < Struct.new(
1304
+ :data_source_field_name,
1305
+ :date_field_format,
1306
+ :index_field_name)
1307
+ SENSITIVE = []
1308
+ include Aws::Structure
1309
+ end
1310
+
821
1311
  # Provides the information necessary to connect to a database.
822
1312
  #
823
1313
  # @note When making an API call, you may pass ConnectionConfiguration
@@ -879,11 +1369,12 @@ module Aws::Kendra
879
1369
  # {
880
1370
  # name: "DataSourceName", # required
881
1371
  # index_id: "IndexId", # required
882
- # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW
883
- # configuration: { # required
1372
+ # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW, CUSTOM, CONFLUENCE, GOOGLEDRIVE
1373
+ # configuration: {
884
1374
  # s3_configuration: {
885
1375
  # bucket_name: "S3BucketName", # required
886
1376
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
1377
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
887
1378
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
888
1379
  # documents_metadata_configuration: {
889
1380
  # s3_prefix: "S3ObjectKey",
@@ -912,6 +1403,7 @@ module Aws::Kendra
912
1403
  # },
913
1404
  # ],
914
1405
  # document_title_field_name: "DataSourceFieldName",
1406
+ # disable_local_groups: false,
915
1407
  # },
916
1408
  # database_configuration: {
917
1409
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -1036,6 +1528,7 @@ module Aws::Kendra
1036
1528
  # index_field_name: "IndexFieldName", # required
1037
1529
  # },
1038
1530
  # ],
1531
+ # disable_local_groups: false,
1039
1532
  # },
1040
1533
  # service_now_configuration: {
1041
1534
  # host_url: "ServiceNowHostUrl", # required
@@ -1070,16 +1563,84 @@ module Aws::Kendra
1070
1563
  # ],
1071
1564
  # },
1072
1565
  # },
1566
+ # confluence_configuration: {
1567
+ # server_url: "Url", # required
1568
+ # secret_arn: "SecretArn", # required
1569
+ # version: "CLOUD", # required, accepts CLOUD, SERVER
1570
+ # space_configuration: {
1571
+ # crawl_personal_spaces: false,
1572
+ # crawl_archived_spaces: false,
1573
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
1574
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
1575
+ # space_field_mappings: [
1576
+ # {
1577
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1578
+ # date_field_format: "DataSourceDateFieldFormat",
1579
+ # index_field_name: "IndexFieldName",
1580
+ # },
1581
+ # ],
1582
+ # },
1583
+ # page_configuration: {
1584
+ # page_field_mappings: [
1585
+ # {
1586
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1587
+ # date_field_format: "DataSourceDateFieldFormat",
1588
+ # index_field_name: "IndexFieldName",
1589
+ # },
1590
+ # ],
1591
+ # },
1592
+ # blog_configuration: {
1593
+ # blog_field_mappings: [
1594
+ # {
1595
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
1596
+ # date_field_format: "DataSourceDateFieldFormat",
1597
+ # index_field_name: "IndexFieldName",
1598
+ # },
1599
+ # ],
1600
+ # },
1601
+ # attachment_configuration: {
1602
+ # crawl_attachments: false,
1603
+ # attachment_field_mappings: [
1604
+ # {
1605
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1606
+ # date_field_format: "DataSourceDateFieldFormat",
1607
+ # index_field_name: "IndexFieldName",
1608
+ # },
1609
+ # ],
1610
+ # },
1611
+ # vpc_configuration: {
1612
+ # subnet_ids: ["SubnetId"], # required
1613
+ # security_group_ids: ["VpcSecurityGroupId"], # required
1614
+ # },
1615
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1616
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1617
+ # },
1618
+ # google_drive_configuration: {
1619
+ # secret_arn: "SecretArn", # required
1620
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1621
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1622
+ # field_mappings: [
1623
+ # {
1624
+ # data_source_field_name: "DataSourceFieldName", # required
1625
+ # date_field_format: "DataSourceDateFieldFormat",
1626
+ # index_field_name: "IndexFieldName", # required
1627
+ # },
1628
+ # ],
1629
+ # exclude_mime_types: ["MimeType"],
1630
+ # exclude_user_accounts: ["UserAccount"],
1631
+ # exclude_shared_drives: ["SharedDriveId"],
1632
+ # },
1073
1633
  # },
1074
1634
  # description: "Description",
1075
1635
  # schedule: "ScanSchedule",
1076
- # role_arn: "RoleArn", # required
1636
+ # role_arn: "RoleArn",
1077
1637
  # tags: [
1078
1638
  # {
1079
1639
  # key: "TagKey", # required
1080
1640
  # value: "TagValue", # required
1081
1641
  # },
1082
1642
  # ],
1643
+ # client_token: "ClientTokenName",
1083
1644
  # }
1084
1645
  #
1085
1646
  # @!attribute [rw] name
@@ -1097,8 +1658,15 @@ module Aws::Kendra
1097
1658
  # @return [String]
1098
1659
  #
1099
1660
  # @!attribute [rw] configuration
1100
- # The data source connector configuration information that is required
1101
- # to access the repository.
1661
+ # The connector configuration information that is required to access
1662
+ # the repository.
1663
+ #
1664
+ # You can't specify the `Configuration` parameter when the `Type`
1665
+ # parameter is set to `CUSTOM`. If you do, you receive a
1666
+ # `ValidationException` exception.
1667
+ #
1668
+ # The `Configuration` parameter is required for all other data
1669
+ # sources.
1102
1670
  # @return [Types::DataSourceConfiguration]
1103
1671
  #
1104
1672
  # @!attribute [rw] description
@@ -1110,6 +1678,10 @@ module Aws::Kendra
1110
1678
  # your repository and update the index. If you don't set a schedule
1111
1679
  # Amazon Kendra will not periodically update the index. You can call
1112
1680
  # the `StartDataSourceSyncJob` operation to update the index.
1681
+ #
1682
+ # You can't specify the `Schedule` parameter when the `Type`
1683
+ # parameter is set to `CUSTOM`. If you do, you receive a
1684
+ # `ValidationException` exception.
1113
1685
  # @return [String]
1114
1686
  #
1115
1687
  # @!attribute [rw] role_arn
@@ -1117,6 +1689,12 @@ module Aws::Kendra
1117
1689
  # the data source. For more information, see [IAM Roles for Amazon
1118
1690
  # Kendra][1].
1119
1691
  #
1692
+ # You can't specify the `RoleArn` parameter when the `Type` parameter
1693
+ # is set to `CUSTOM`. If you do, you receive a `ValidationException`
1694
+ # exception.
1695
+ #
1696
+ # The `RoleArn` parameter is required for all other data sources.
1697
+ #
1120
1698
  #
1121
1699
  #
1122
1700
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
@@ -1128,6 +1706,15 @@ module Aws::Kendra
1128
1706
  # access to resources.
1129
1707
  # @return [Array<Types::Tag>]
1130
1708
  #
1709
+ # @!attribute [rw] client_token
1710
+ # A token that you provide to identify the request to create a data
1711
+ # source. Multiple calls to the `CreateDataSource` operation with the
1712
+ # same client token will create only one data source.
1713
+ #
1714
+ # **A suitable default value is auto-generated.** You should normally
1715
+ # not need to pass this option.
1716
+ # @return [String]
1717
+ #
1131
1718
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateDataSourceRequest AWS API Documentation
1132
1719
  #
1133
1720
  class CreateDataSourceRequest < Struct.new(
@@ -1138,7 +1725,8 @@ module Aws::Kendra
1138
1725
  :description,
1139
1726
  :schedule,
1140
1727
  :role_arn,
1141
- :tags)
1728
+ :tags,
1729
+ :client_token)
1142
1730
  SENSITIVE = []
1143
1731
  include Aws::Structure
1144
1732
  end
@@ -1174,6 +1762,7 @@ module Aws::Kendra
1174
1762
  # },
1175
1763
  # ],
1176
1764
  # file_format: "CSV", # accepts CSV, CSV_WITH_HEADER, JSON
1765
+ # client_token: "ClientTokenName",
1177
1766
  # }
1178
1767
  #
1179
1768
  # @!attribute [rw] index_id
@@ -1223,6 +1812,15 @@ module Aws::Kendra
1223
1812
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-creating-faq.html
1224
1813
  # @return [String]
1225
1814
  #
1815
+ # @!attribute [rw] client_token
1816
+ # A token that you provide to identify the request to create a FAQ.
1817
+ # Multiple calls to the `CreateFaqRequest` operation with the same
1818
+ # client token will create only one FAQ.
1819
+ #
1820
+ # **A suitable default value is auto-generated.** You should normally
1821
+ # not need to pass this option.
1822
+ # @return [String]
1823
+ #
1226
1824
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateFaqRequest AWS API Documentation
1227
1825
  #
1228
1826
  class CreateFaqRequest < Struct.new(
@@ -1232,7 +1830,8 @@ module Aws::Kendra
1232
1830
  :s3_path,
1233
1831
  :role_arn,
1234
1832
  :tags,
1235
- :file_format)
1833
+ :file_format,
1834
+ :client_token)
1236
1835
  SENSITIVE = []
1237
1836
  include Aws::Structure
1238
1837
  end
@@ -1267,6 +1866,24 @@ module Aws::Kendra
1267
1866
  # value: "TagValue", # required
1268
1867
  # },
1269
1868
  # ],
1869
+ # user_token_configurations: [
1870
+ # {
1871
+ # jwt_token_type_configuration: {
1872
+ # key_location: "URL", # required, accepts URL, SECRET_MANAGER
1873
+ # url: "Url",
1874
+ # secret_manager_arn: "RoleArn",
1875
+ # user_name_attribute_field: "UserNameAttributeField",
1876
+ # group_attribute_field: "GroupAttributeField",
1877
+ # issuer: "Issuer",
1878
+ # claim_regex: "ClaimRegex",
1879
+ # },
1880
+ # json_token_type_configuration: {
1881
+ # user_name_attribute_field: "String", # required
1882
+ # group_attribute_field: "String", # required
1883
+ # },
1884
+ # },
1885
+ # ],
1886
+ # user_context_policy: "ATTRIBUTE_FILTER", # accepts ATTRIBUTE_FILTER, USER_TOKEN
1270
1887
  # }
1271
1888
  #
1272
1889
  # @!attribute [rw] name
@@ -1285,10 +1902,11 @@ module Aws::Kendra
1285
1902
  # @return [String]
1286
1903
  #
1287
1904
  # @!attribute [rw] role_arn
1288
- # An IAM role that gives Amazon Kendra permissions to access your
1289
- # Amazon CloudWatch logs and metrics. This is also the role used when
1290
- # you use the `BatchPutDocument` operation to index documents from an
1291
- # Amazon S3 bucket.
1905
+ # An AWS Identity and Access Management (IAM) role that gives Amazon
1906
+ # Kendra permissions to access your Amazon CloudWatch logs and
1907
+ # metrics. This is also the role used when you use the
1908
+ # `BatchPutDocument` operation to index documents from an Amazon S3
1909
+ # bucket.
1292
1910
  # @return [String]
1293
1911
  #
1294
1912
  # @!attribute [rw] server_side_encryption_configuration
@@ -1304,7 +1922,7 @@ module Aws::Kendra
1304
1922
  # @!attribute [rw] client_token
1305
1923
  # A token that you provide to identify the request to create an index.
1306
1924
  # Multiple calls to the `CreateIndex` operation with the same client
1307
- # token will create only one index.”
1925
+ # token will create only one index.
1308
1926
  #
1309
1927
  # **A suitable default value is auto-generated.** You should normally
1310
1928
  # not need to pass this option.
@@ -1316,6 +1934,26 @@ module Aws::Kendra
1316
1934
  # to resources.
1317
1935
  # @return [Array<Types::Tag>]
1318
1936
  #
1937
+ # @!attribute [rw] user_token_configurations
1938
+ # The user token configuration.
1939
+ # @return [Array<Types::UserTokenConfiguration>]
1940
+ #
1941
+ # @!attribute [rw] user_context_policy
1942
+ # The user context policy.
1943
+ #
1944
+ # ATTRIBUTE\_FILTER
1945
+ #
1946
+ # : All indexed content is searchable and displayable for all users.
1947
+ # If there is an access control list, it is ignored. You can filter
1948
+ # on user and group attributes.
1949
+ #
1950
+ # USER\_TOKEN
1951
+ #
1952
+ # : Enables SSO and token-based user access control. All documents
1953
+ # with no access control and all documents accessible to the user
1954
+ # will be searchable and displayable.
1955
+ # @return [String]
1956
+ #
1319
1957
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateIndexRequest AWS API Documentation
1320
1958
  #
1321
1959
  class CreateIndexRequest < Struct.new(
@@ -1325,7 +1963,9 @@ module Aws::Kendra
1325
1963
  :server_side_encryption_configuration,
1326
1964
  :description,
1327
1965
  :client_token,
1328
- :tags)
1966
+ :tags,
1967
+ :user_token_configurations,
1968
+ :user_context_policy)
1329
1969
  SENSITIVE = []
1330
1970
  include Aws::Structure
1331
1971
  end
@@ -1352,6 +1992,7 @@ module Aws::Kendra
1352
1992
  # s3_configuration: {
1353
1993
  # bucket_name: "S3BucketName", # required
1354
1994
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
1995
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1355
1996
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1356
1997
  # documents_metadata_configuration: {
1357
1998
  # s3_prefix: "S3ObjectKey",
@@ -1380,6 +2021,7 @@ module Aws::Kendra
1380
2021
  # },
1381
2022
  # ],
1382
2023
  # document_title_field_name: "DataSourceFieldName",
2024
+ # disable_local_groups: false,
1383
2025
  # },
1384
2026
  # database_configuration: {
1385
2027
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -1504,6 +2146,7 @@ module Aws::Kendra
1504
2146
  # index_field_name: "IndexFieldName", # required
1505
2147
  # },
1506
2148
  # ],
2149
+ # disable_local_groups: false,
1507
2150
  # },
1508
2151
  # service_now_configuration: {
1509
2152
  # host_url: "ServiceNowHostUrl", # required
@@ -1538,6 +2181,73 @@ module Aws::Kendra
1538
2181
  # ],
1539
2182
  # },
1540
2183
  # },
2184
+ # confluence_configuration: {
2185
+ # server_url: "Url", # required
2186
+ # secret_arn: "SecretArn", # required
2187
+ # version: "CLOUD", # required, accepts CLOUD, SERVER
2188
+ # space_configuration: {
2189
+ # crawl_personal_spaces: false,
2190
+ # crawl_archived_spaces: false,
2191
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
2192
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
2193
+ # space_field_mappings: [
2194
+ # {
2195
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
2196
+ # date_field_format: "DataSourceDateFieldFormat",
2197
+ # index_field_name: "IndexFieldName",
2198
+ # },
2199
+ # ],
2200
+ # },
2201
+ # page_configuration: {
2202
+ # page_field_mappings: [
2203
+ # {
2204
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
2205
+ # date_field_format: "DataSourceDateFieldFormat",
2206
+ # index_field_name: "IndexFieldName",
2207
+ # },
2208
+ # ],
2209
+ # },
2210
+ # blog_configuration: {
2211
+ # blog_field_mappings: [
2212
+ # {
2213
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
2214
+ # date_field_format: "DataSourceDateFieldFormat",
2215
+ # index_field_name: "IndexFieldName",
2216
+ # },
2217
+ # ],
2218
+ # },
2219
+ # attachment_configuration: {
2220
+ # crawl_attachments: false,
2221
+ # attachment_field_mappings: [
2222
+ # {
2223
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
2224
+ # date_field_format: "DataSourceDateFieldFormat",
2225
+ # index_field_name: "IndexFieldName",
2226
+ # },
2227
+ # ],
2228
+ # },
2229
+ # vpc_configuration: {
2230
+ # subnet_ids: ["SubnetId"], # required
2231
+ # security_group_ids: ["VpcSecurityGroupId"], # required
2232
+ # },
2233
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2234
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2235
+ # },
2236
+ # google_drive_configuration: {
2237
+ # secret_arn: "SecretArn", # required
2238
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2239
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2240
+ # field_mappings: [
2241
+ # {
2242
+ # data_source_field_name: "DataSourceFieldName", # required
2243
+ # date_field_format: "DataSourceDateFieldFormat",
2244
+ # index_field_name: "IndexFieldName", # required
2245
+ # },
2246
+ # ],
2247
+ # exclude_mime_types: ["MimeType"],
2248
+ # exclude_user_accounts: ["UserAccount"],
2249
+ # exclude_shared_drives: ["SharedDriveId"],
2250
+ # },
1541
2251
  # }
1542
2252
  #
1543
2253
  # @!attribute [rw] s3_configuration
@@ -1561,7 +2271,7 @@ module Aws::Kendra
1561
2271
  # @return [Types::SalesforceConfiguration]
1562
2272
  #
1563
2273
  # @!attribute [rw] one_drive_configuration
1564
- # Provided configuration for data sources that connect to Microsoft
2274
+ # Provides configuration for data sources that connect to Microsoft
1565
2275
  # OneDrive.
1566
2276
  # @return [Types::OneDriveConfiguration]
1567
2277
  #
@@ -1570,6 +2280,16 @@ module Aws::Kendra
1570
2280
  # instances.
1571
2281
  # @return [Types::ServiceNowConfiguration]
1572
2282
  #
2283
+ # @!attribute [rw] confluence_configuration
2284
+ # Provides configuration information for connecting to a Confluence
2285
+ # data source.
2286
+ # @return [Types::ConfluenceConfiguration]
2287
+ #
2288
+ # @!attribute [rw] google_drive_configuration
2289
+ # Provides configuration for data sources that connect to Google
2290
+ # Drive.
2291
+ # @return [Types::GoogleDriveConfiguration]
2292
+ #
1573
2293
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DataSourceConfiguration AWS API Documentation
1574
2294
  #
1575
2295
  class DataSourceConfiguration < Struct.new(
@@ -1578,7 +2298,9 @@ module Aws::Kendra
1578
2298
  :database_configuration,
1579
2299
  :salesforce_configuration,
1580
2300
  :one_drive_configuration,
1581
- :service_now_configuration)
2301
+ :service_now_configuration,
2302
+ :confluence_configuration,
2303
+ :google_drive_configuration)
1582
2304
  SENSITIVE = []
1583
2305
  include Aws::Structure
1584
2306
  end
@@ -2238,6 +2960,14 @@ module Aws::Kendra
2238
2960
  # capacity for the index.
2239
2961
  # @return [Types::CapacityUnitsConfiguration]
2240
2962
  #
2963
+ # @!attribute [rw] user_token_configurations
2964
+ # The user token configuration for the Amazon Kendra index.
2965
+ # @return [Array<Types::UserTokenConfiguration>]
2966
+ #
2967
+ # @!attribute [rw] user_context_policy
2968
+ # The user context policy for the Amazon Kendra index.
2969
+ # @return [String]
2970
+ #
2241
2971
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeIndexResponse AWS API Documentation
2242
2972
  #
2243
2973
  class DescribeIndexResponse < Struct.new(
@@ -2253,7 +2983,9 @@ module Aws::Kendra
2253
2983
  :document_metadata_configurations,
2254
2984
  :index_statistics,
2255
2985
  :error_message,
2256
- :capacity_units)
2986
+ :capacity_units,
2987
+ :user_token_configurations,
2988
+ :user_context_policy)
2257
2989
  SENSITIVE = []
2258
2990
  include Aws::Structure
2259
2991
  end
@@ -2622,6 +3354,103 @@ module Aws::Kendra
2622
3354
  include Aws::Structure
2623
3355
  end
2624
3356
 
3357
+ # Provides configuration information for data sources that connect to
3358
+ # Google Drive.
3359
+ #
3360
+ # @note When making an API call, you may pass GoogleDriveConfiguration
3361
+ # data as a hash:
3362
+ #
3363
+ # {
3364
+ # secret_arn: "SecretArn", # required
3365
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3366
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3367
+ # field_mappings: [
3368
+ # {
3369
+ # data_source_field_name: "DataSourceFieldName", # required
3370
+ # date_field_format: "DataSourceDateFieldFormat",
3371
+ # index_field_name: "IndexFieldName", # required
3372
+ # },
3373
+ # ],
3374
+ # exclude_mime_types: ["MimeType"],
3375
+ # exclude_user_accounts: ["UserAccount"],
3376
+ # exclude_shared_drives: ["SharedDriveId"],
3377
+ # }
3378
+ #
3379
+ # @!attribute [rw] secret_arn
3380
+ # The Amazon Resource Name (ARN) of a AWS Secrets Manager secret that
3381
+ # contains the credentials required to connect to Google Drive. For
3382
+ # more information, see [Using a Google Workspace Drive data
3383
+ # source][1].
3384
+ #
3385
+ #
3386
+ #
3387
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/data-source-google-drive.html
3388
+ # @return [String]
3389
+ #
3390
+ # @!attribute [rw] inclusion_patterns
3391
+ # A list of regular expression patterns that apply to path on Google
3392
+ # Drive. Items that match the pattern are included in the index from
3393
+ # both shared drives and users' My Drives. Items that don't match
3394
+ # the pattern are excluded from the index. If an item matches both an
3395
+ # inclusion pattern and an exclusion pattern, it is excluded from the
3396
+ # index.
3397
+ # @return [Array<String>]
3398
+ #
3399
+ # @!attribute [rw] exclusion_patterns
3400
+ # A list of regular expression patterns that apply to the path on
3401
+ # Google Drive. Items that match the pattern are excluded from the
3402
+ # index from both shared drives and users' My Drives. Items that
3403
+ # don't match the pattern are included in the index. If an item
3404
+ # matches both an exclusion pattern and an inclusion pattern, it is
3405
+ # excluded from the index.
3406
+ # @return [Array<String>]
3407
+ #
3408
+ # @!attribute [rw] field_mappings
3409
+ # Defines mapping between a field in the Google Drive and a Amazon
3410
+ # Kendra index field.
3411
+ #
3412
+ # If you are using the console, you can define index fields when
3413
+ # creating the mapping. If you are using the API, you must first
3414
+ # create the field using the UpdateIndex operation.
3415
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
3416
+ #
3417
+ # @!attribute [rw] exclude_mime_types
3418
+ # A list of MIME types to exclude from the index. All documents
3419
+ # matching the specified MIME type are excluded.
3420
+ #
3421
+ # For a list of MIME types, see [Using a Google Workspace Drive data
3422
+ # source][1].
3423
+ #
3424
+ #
3425
+ #
3426
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/data-source-google-drive.html
3427
+ # @return [Array<String>]
3428
+ #
3429
+ # @!attribute [rw] exclude_user_accounts
3430
+ # A list of email addresses of the users. Documents owned by these
3431
+ # users are excluded from the index. Documents shared with excluded
3432
+ # users are indexed unless they are excluded in another way.
3433
+ # @return [Array<String>]
3434
+ #
3435
+ # @!attribute [rw] exclude_shared_drives
3436
+ # A list of identifiers or shared drives to exclude from the index.
3437
+ # All files and folders stored on the shared drive are excluded.
3438
+ # @return [Array<String>]
3439
+ #
3440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/GoogleDriveConfiguration AWS API Documentation
3441
+ #
3442
+ class GoogleDriveConfiguration < Struct.new(
3443
+ :secret_arn,
3444
+ :inclusion_patterns,
3445
+ :exclusion_patterns,
3446
+ :field_mappings,
3447
+ :exclude_mime_types,
3448
+ :exclude_user_accounts,
3449
+ :exclude_shared_drives)
3450
+ SENSITIVE = []
3451
+ include Aws::Structure
3452
+ end
3453
+
2625
3454
  # Provides information that you can use to highlight a search result so
2626
3455
  # that your users can quickly identify terms in the response.
2627
3456
  #
@@ -2725,6 +3554,90 @@ module Aws::Kendra
2725
3554
  include Aws::Structure
2726
3555
  end
2727
3556
 
3557
+ # Configuration information for the JSON token type.
3558
+ #
3559
+ # @note When making an API call, you may pass JsonTokenTypeConfiguration
3560
+ # data as a hash:
3561
+ #
3562
+ # {
3563
+ # user_name_attribute_field: "String", # required
3564
+ # group_attribute_field: "String", # required
3565
+ # }
3566
+ #
3567
+ # @!attribute [rw] user_name_attribute_field
3568
+ # The user name attribute field.
3569
+ # @return [String]
3570
+ #
3571
+ # @!attribute [rw] group_attribute_field
3572
+ # The group attribute field.
3573
+ # @return [String]
3574
+ #
3575
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/JsonTokenTypeConfiguration AWS API Documentation
3576
+ #
3577
+ class JsonTokenTypeConfiguration < Struct.new(
3578
+ :user_name_attribute_field,
3579
+ :group_attribute_field)
3580
+ SENSITIVE = []
3581
+ include Aws::Structure
3582
+ end
3583
+
3584
+ # Configuration information for the JWT token type.
3585
+ #
3586
+ # @note When making an API call, you may pass JwtTokenTypeConfiguration
3587
+ # data as a hash:
3588
+ #
3589
+ # {
3590
+ # key_location: "URL", # required, accepts URL, SECRET_MANAGER
3591
+ # url: "Url",
3592
+ # secret_manager_arn: "RoleArn",
3593
+ # user_name_attribute_field: "UserNameAttributeField",
3594
+ # group_attribute_field: "GroupAttributeField",
3595
+ # issuer: "Issuer",
3596
+ # claim_regex: "ClaimRegex",
3597
+ # }
3598
+ #
3599
+ # @!attribute [rw] key_location
3600
+ # The location of the key.
3601
+ # @return [String]
3602
+ #
3603
+ # @!attribute [rw] url
3604
+ # The signing key URL.
3605
+ # @return [String]
3606
+ #
3607
+ # @!attribute [rw] secret_manager_arn
3608
+ # The Amazon Resource Name (arn) of the secret.
3609
+ # @return [String]
3610
+ #
3611
+ # @!attribute [rw] user_name_attribute_field
3612
+ # The user name attribute field.
3613
+ # @return [String]
3614
+ #
3615
+ # @!attribute [rw] group_attribute_field
3616
+ # The group attribute field.
3617
+ # @return [String]
3618
+ #
3619
+ # @!attribute [rw] issuer
3620
+ # The issuer of the token.
3621
+ # @return [String]
3622
+ #
3623
+ # @!attribute [rw] claim_regex
3624
+ # The regular expression that identifies the claim.
3625
+ # @return [String]
3626
+ #
3627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/JwtTokenTypeConfiguration AWS API Documentation
3628
+ #
3629
+ class JwtTokenTypeConfiguration < Struct.new(
3630
+ :key_location,
3631
+ :url,
3632
+ :secret_manager_arn,
3633
+ :user_name_attribute_field,
3634
+ :group_attribute_field,
3635
+ :issuer,
3636
+ :claim_regex)
3637
+ SENSITIVE = []
3638
+ include Aws::Structure
3639
+ end
3640
+
2728
3641
  # @note When making an API call, you may pass ListDataSourceSyncJobsRequest
2729
3642
  # data as a hash:
2730
3643
  #
@@ -3017,10 +3930,11 @@ module Aws::Kendra
3017
3930
  # index_field_name: "IndexFieldName", # required
3018
3931
  # },
3019
3932
  # ],
3933
+ # disable_local_groups: false,
3020
3934
  # }
3021
3935
  #
3022
3936
  # @!attribute [rw] tenant_domain
3023
- # Tha Azure Active Directory domain of the organization.
3937
+ # The Azure Active Directory domain of the organization.
3024
3938
  # @return [String]
3025
3939
  #
3026
3940
  # @!attribute [rw] secret_arn
@@ -3059,6 +3973,11 @@ module Aws::Kendra
3059
3973
  # must first create the index fields before you map OneDrive fields.
3060
3974
  # @return [Array<Types::DataSourceToIndexFieldMapping>]
3061
3975
  #
3976
+ # @!attribute [rw] disable_local_groups
3977
+ # A Boolean value that specifies whether local groups are disabled
3978
+ # (`True`) or enabled (`False`).
3979
+ # @return [Boolean]
3980
+ #
3062
3981
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/OneDriveConfiguration AWS API Documentation
3063
3982
  #
3064
3983
  class OneDriveConfiguration < Struct.new(
@@ -3067,7 +3986,8 @@ module Aws::Kendra
3067
3986
  :one_drive_users,
3068
3987
  :inclusion_patterns,
3069
3988
  :exclusion_patterns,
3070
- :field_mappings)
3989
+ :field_mappings,
3990
+ :disable_local_groups)
3071
3991
  SENSITIVE = []
3072
3992
  include Aws::Structure
3073
3993
  end
@@ -3237,6 +4157,10 @@ module Aws::Kendra
3237
4157
  # document_attribute_key: "DocumentAttributeKey", # required
3238
4158
  # sort_order: "DESC", # required, accepts DESC, ASC
3239
4159
  # },
4160
+ # user_context: {
4161
+ # token: "Token",
4162
+ # },
4163
+ # visitor_id: "VisitorId",
3240
4164
  # }
3241
4165
  #
3242
4166
  # @!attribute [rw] index_id
@@ -3300,6 +4224,17 @@ module Aws::Kendra
3300
4224
  # by the relevance that Amazon Kendra determines for the result.
3301
4225
  # @return [Types::SortingConfiguration]
3302
4226
  #
4227
+ # @!attribute [rw] user_context
4228
+ # The user context token.
4229
+ # @return [Types::UserContext]
4230
+ #
4231
+ # @!attribute [rw] visitor_id
4232
+ # Provides an identifier for a specific user. The `VisitorId` should
4233
+ # be a unique identifier, such as a GUID. Don't use personally
4234
+ # identifiable information, such as the user's email address, as the
4235
+ # `VisitorId`.
4236
+ # @return [String]
4237
+ #
3303
4238
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/QueryRequest AWS API Documentation
3304
4239
  #
3305
4240
  class QueryRequest < Struct.new(
@@ -3311,7 +4246,9 @@ module Aws::Kendra
3311
4246
  :query_result_type_filter,
3312
4247
  :page_number,
3313
4248
  :page_size,
3314
- :sorting_configuration)
4249
+ :sorting_configuration,
4250
+ :user_context,
4251
+ :visitor_id)
3315
4252
  SENSITIVE = []
3316
4253
  include Aws::Structure
3317
4254
  end
@@ -3403,6 +4340,16 @@ module Aws::Kendra
3403
4340
  # matches the query.
3404
4341
  # @return [Types::ScoreAttributes]
3405
4342
  #
4343
+ # @!attribute [rw] feedback_token
4344
+ # A token that identifies a particular result from a particular query.
4345
+ # Use this token to provide click-through feedback for the result. For
4346
+ # more information, see [ Submitting feedback ][1].
4347
+ #
4348
+ #
4349
+ #
4350
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/submitting-feedback.html
4351
+ # @return [String]
4352
+ #
3406
4353
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/QueryResultItem AWS API Documentation
3407
4354
  #
3408
4355
  class QueryResultItem < Struct.new(
@@ -3414,7 +4361,8 @@ module Aws::Kendra
3414
4361
  :document_excerpt,
3415
4362
  :document_uri,
3416
4363
  :document_attributes,
3417
- :score_attributes)
4364
+ :score_attributes,
4365
+ :feedback_token)
3418
4366
  SENSITIVE = []
3419
4367
  include Aws::Structure
3420
4368
  end
@@ -3585,6 +4533,7 @@ module Aws::Kendra
3585
4533
  # {
3586
4534
  # bucket_name: "S3BucketName", # required
3587
4535
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
4536
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3588
4537
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3589
4538
  # documents_metadata_configuration: {
3590
4539
  # s3_prefix: "S3ObjectKey",
@@ -3603,10 +4552,23 @@ module Aws::Kendra
3603
4552
  # the index.
3604
4553
  # @return [Array<String>]
3605
4554
  #
4555
+ # @!attribute [rw] inclusion_patterns
4556
+ # A list of glob patterns for documents that should be indexed. If a
4557
+ # document that matches an inclusion pattern also matches an exclusion
4558
+ # pattern, the document is not indexed.
4559
+ #
4560
+ # For more information about glob patterns, see [glob
4561
+ # (programming)][1] in *Wikipedia*.
4562
+ #
4563
+ #
4564
+ #
4565
+ # [1]: https://en.wikipedia.org/wiki/Glob_(programming)
4566
+ # @return [Array<String>]
4567
+ #
3606
4568
  # @!attribute [rw] exclusion_patterns
3607
4569
  # A list of glob patterns for documents that should not be indexed. If
3608
- # a document that matches an inclusion prefix also matches an
3609
- # exclusion pattern, the document is not indexed.
4570
+ # a document that matches an inclusion prefix or inclusion pattern
4571
+ # also matches an exclusion pattern, the document is not indexed.
3610
4572
  #
3611
4573
  # For more information about glob patterns, see [glob
3612
4574
  # (programming)][1] in *Wikipedia*.
@@ -3625,7 +4587,12 @@ module Aws::Kendra
3625
4587
  #
3626
4588
  # @!attribute [rw] access_control_list_configuration
3627
4589
  # Provides the path to the S3 bucket that contains the user context
3628
- # filtering files for the data source.
4590
+ # filtering files for the data source. For the format of the file, see
4591
+ # [Access control for S3 data sources][1].
4592
+ #
4593
+ #
4594
+ #
4595
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/s3-acl.html
3629
4596
  # @return [Types::AccessControlListConfiguration]
3630
4597
  #
3631
4598
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/S3DataSourceConfiguration AWS API Documentation
@@ -3633,6 +4600,7 @@ module Aws::Kendra
3633
4600
  class S3DataSourceConfiguration < Struct.new(
3634
4601
  :bucket_name,
3635
4602
  :inclusion_prefixes,
4603
+ :inclusion_patterns,
3636
4604
  :exclusion_patterns,
3637
4605
  :documents_metadata_configuration,
3638
4606
  :access_control_list_configuration)
@@ -4464,6 +5432,7 @@ module Aws::Kendra
4464
5432
  # },
4465
5433
  # ],
4466
5434
  # document_title_field_name: "DataSourceFieldName",
5435
+ # disable_local_groups: false,
4467
5436
  # }
4468
5437
  #
4469
5438
  # @!attribute [rw] share_point_version
@@ -4544,6 +5513,11 @@ module Aws::Kendra
4544
5513
  # the document.
4545
5514
  # @return [String]
4546
5515
  #
5516
+ # @!attribute [rw] disable_local_groups
5517
+ # A Boolean value that specifies whether local groups are disabled
5518
+ # (`True`) or enabled (`False`).
5519
+ # @return [Boolean]
5520
+ #
4547
5521
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SharePointConfiguration AWS API Documentation
4548
5522
  #
4549
5523
  class SharePointConfiguration < Struct.new(
@@ -4556,7 +5530,8 @@ module Aws::Kendra
4556
5530
  :exclusion_patterns,
4557
5531
  :vpc_configuration,
4558
5532
  :field_mappings,
4559
- :document_title_field_name)
5533
+ :document_title_field_name,
5534
+ :disable_local_groups)
4560
5535
  SENSITIVE = []
4561
5536
  include Aws::Structure
4562
5537
  end
@@ -4954,6 +5929,7 @@ module Aws::Kendra
4954
5929
  # s3_configuration: {
4955
5930
  # bucket_name: "S3BucketName", # required
4956
5931
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
5932
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4957
5933
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4958
5934
  # documents_metadata_configuration: {
4959
5935
  # s3_prefix: "S3ObjectKey",
@@ -4982,6 +5958,7 @@ module Aws::Kendra
4982
5958
  # },
4983
5959
  # ],
4984
5960
  # document_title_field_name: "DataSourceFieldName",
5961
+ # disable_local_groups: false,
4985
5962
  # },
4986
5963
  # database_configuration: {
4987
5964
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -5106,6 +6083,7 @@ module Aws::Kendra
5106
6083
  # index_field_name: "IndexFieldName", # required
5107
6084
  # },
5108
6085
  # ],
6086
+ # disable_local_groups: false,
5109
6087
  # },
5110
6088
  # service_now_configuration: {
5111
6089
  # host_url: "ServiceNowHostUrl", # required
@@ -5140,6 +6118,73 @@ module Aws::Kendra
5140
6118
  # ],
5141
6119
  # },
5142
6120
  # },
6121
+ # confluence_configuration: {
6122
+ # server_url: "Url", # required
6123
+ # secret_arn: "SecretArn", # required
6124
+ # version: "CLOUD", # required, accepts CLOUD, SERVER
6125
+ # space_configuration: {
6126
+ # crawl_personal_spaces: false,
6127
+ # crawl_archived_spaces: false,
6128
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
6129
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
6130
+ # space_field_mappings: [
6131
+ # {
6132
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
6133
+ # date_field_format: "DataSourceDateFieldFormat",
6134
+ # index_field_name: "IndexFieldName",
6135
+ # },
6136
+ # ],
6137
+ # },
6138
+ # page_configuration: {
6139
+ # page_field_mappings: [
6140
+ # {
6141
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
6142
+ # date_field_format: "DataSourceDateFieldFormat",
6143
+ # index_field_name: "IndexFieldName",
6144
+ # },
6145
+ # ],
6146
+ # },
6147
+ # blog_configuration: {
6148
+ # blog_field_mappings: [
6149
+ # {
6150
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
6151
+ # date_field_format: "DataSourceDateFieldFormat",
6152
+ # index_field_name: "IndexFieldName",
6153
+ # },
6154
+ # ],
6155
+ # },
6156
+ # attachment_configuration: {
6157
+ # crawl_attachments: false,
6158
+ # attachment_field_mappings: [
6159
+ # {
6160
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
6161
+ # date_field_format: "DataSourceDateFieldFormat",
6162
+ # index_field_name: "IndexFieldName",
6163
+ # },
6164
+ # ],
6165
+ # },
6166
+ # vpc_configuration: {
6167
+ # subnet_ids: ["SubnetId"], # required
6168
+ # security_group_ids: ["VpcSecurityGroupId"], # required
6169
+ # },
6170
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
6171
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
6172
+ # },
6173
+ # google_drive_configuration: {
6174
+ # secret_arn: "SecretArn", # required
6175
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
6176
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
6177
+ # field_mappings: [
6178
+ # {
6179
+ # data_source_field_name: "DataSourceFieldName", # required
6180
+ # date_field_format: "DataSourceDateFieldFormat",
6181
+ # index_field_name: "IndexFieldName", # required
6182
+ # },
6183
+ # ],
6184
+ # exclude_mime_types: ["MimeType"],
6185
+ # exclude_user_accounts: ["UserAccount"],
6186
+ # exclude_shared_drives: ["SharedDriveId"],
6187
+ # },
5143
6188
  # },
5144
6189
  # description: "Description",
5145
6190
  # schedule: "ScanSchedule",
@@ -5224,6 +6269,24 @@ module Aws::Kendra
5224
6269
  # storage_capacity_units: 1, # required
5225
6270
  # query_capacity_units: 1, # required
5226
6271
  # },
6272
+ # user_token_configurations: [
6273
+ # {
6274
+ # jwt_token_type_configuration: {
6275
+ # key_location: "URL", # required, accepts URL, SECRET_MANAGER
6276
+ # url: "Url",
6277
+ # secret_manager_arn: "RoleArn",
6278
+ # user_name_attribute_field: "UserNameAttributeField",
6279
+ # group_attribute_field: "GroupAttributeField",
6280
+ # issuer: "Issuer",
6281
+ # claim_regex: "ClaimRegex",
6282
+ # },
6283
+ # json_token_type_configuration: {
6284
+ # user_name_attribute_field: "String", # required
6285
+ # group_attribute_field: "String", # required
6286
+ # },
6287
+ # },
6288
+ # ],
6289
+ # user_context_policy: "ATTRIBUTE_FILTER", # accepts ATTRIBUTE_FILTER, USER_TOKEN
5227
6290
  # }
5228
6291
  #
5229
6292
  # @!attribute [rw] id
@@ -5257,6 +6320,14 @@ module Aws::Kendra
5257
6320
  # index.
5258
6321
  # @return [Types::CapacityUnitsConfiguration]
5259
6322
  #
6323
+ # @!attribute [rw] user_token_configurations
6324
+ # The user token configuration.
6325
+ # @return [Array<Types::UserTokenConfiguration>]
6326
+ #
6327
+ # @!attribute [rw] user_context_policy
6328
+ # The user user token context policy.
6329
+ # @return [String]
6330
+ #
5260
6331
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UpdateIndexRequest AWS API Documentation
5261
6332
  #
5262
6333
  class UpdateIndexRequest < Struct.new(
@@ -5265,7 +6336,68 @@ module Aws::Kendra
5265
6336
  :role_arn,
5266
6337
  :description,
5267
6338
  :document_metadata_configuration_updates,
5268
- :capacity_units)
6339
+ :capacity_units,
6340
+ :user_token_configurations,
6341
+ :user_context_policy)
6342
+ SENSITIVE = []
6343
+ include Aws::Structure
6344
+ end
6345
+
6346
+ # Provides information about the user context for a Amazon Kendra index.
6347
+ #
6348
+ # @note When making an API call, you may pass UserContext
6349
+ # data as a hash:
6350
+ #
6351
+ # {
6352
+ # token: "Token",
6353
+ # }
6354
+ #
6355
+ # @!attribute [rw] token
6356
+ # The user context token. It must be a JWT or a JSON token.
6357
+ # @return [String]
6358
+ #
6359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UserContext AWS API Documentation
6360
+ #
6361
+ class UserContext < Struct.new(
6362
+ :token)
6363
+ SENSITIVE = []
6364
+ include Aws::Structure
6365
+ end
6366
+
6367
+ # Provides configuration information for a token configuration.
6368
+ #
6369
+ # @note When making an API call, you may pass UserTokenConfiguration
6370
+ # data as a hash:
6371
+ #
6372
+ # {
6373
+ # jwt_token_type_configuration: {
6374
+ # key_location: "URL", # required, accepts URL, SECRET_MANAGER
6375
+ # url: "Url",
6376
+ # secret_manager_arn: "RoleArn",
6377
+ # user_name_attribute_field: "UserNameAttributeField",
6378
+ # group_attribute_field: "GroupAttributeField",
6379
+ # issuer: "Issuer",
6380
+ # claim_regex: "ClaimRegex",
6381
+ # },
6382
+ # json_token_type_configuration: {
6383
+ # user_name_attribute_field: "String", # required
6384
+ # group_attribute_field: "String", # required
6385
+ # },
6386
+ # }
6387
+ #
6388
+ # @!attribute [rw] jwt_token_type_configuration
6389
+ # Information about the JWT token type configuration.
6390
+ # @return [Types::JwtTokenTypeConfiguration]
6391
+ #
6392
+ # @!attribute [rw] json_token_type_configuration
6393
+ # Information about the JSON token type configuration.
6394
+ # @return [Types::JsonTokenTypeConfiguration]
6395
+ #
6396
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UserTokenConfiguration AWS API Documentation
6397
+ #
6398
+ class UserTokenConfiguration < Struct.new(
6399
+ :jwt_token_type_configuration,
6400
+ :json_token_type_configuration)
5269
6401
  SENSITIVE = []
5270
6402
  include Aws::Structure
5271
6403
  end