aws-sdk-kendra 1.13.0 → 1.18.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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')
@@ -117,6 +138,7 @@ module Aws::Kendra
117
138
  FaqStatus = Shapes::StringShape.new(name: 'FaqStatus')
118
139
  FaqSummary = Shapes::StructureShape.new(name: 'FaqSummary')
119
140
  FaqSummaryItems = Shapes::ListShape.new(name: 'FaqSummaryItems')
141
+ GroupAttributeField = Shapes::StringShape.new(name: 'GroupAttributeField')
120
142
  Highlight = Shapes::StructureShape.new(name: 'Highlight')
121
143
  HighlightList = Shapes::ListShape.new(name: 'HighlightList')
122
144
  Importance = Shapes::IntegerShape.new(name: 'Importance')
@@ -133,6 +155,10 @@ module Aws::Kendra
133
155
  IndexedTextDocumentsCount = Shapes::IntegerShape.new(name: 'IndexedTextDocumentsCount')
134
156
  Integer = Shapes::IntegerShape.new(name: 'Integer')
135
157
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
158
+ Issuer = Shapes::StringShape.new(name: 'Issuer')
159
+ JsonTokenTypeConfiguration = Shapes::StructureShape.new(name: 'JsonTokenTypeConfiguration')
160
+ JwtTokenTypeConfiguration = Shapes::StructureShape.new(name: 'JwtTokenTypeConfiguration')
161
+ KeyLocation = Shapes::StringShape.new(name: 'KeyLocation')
136
162
  KmsKeyId = Shapes::StringShape.new(name: 'KmsKeyId')
137
163
  ListDataSourceSyncJobsRequest = Shapes::StructureShape.new(name: 'ListDataSourceSyncJobsRequest')
138
164
  ListDataSourceSyncJobsResponse = Shapes::StructureShape.new(name: 'ListDataSourceSyncJobsResponse')
@@ -241,11 +267,17 @@ module Aws::Kendra
241
267
  TimeRange = Shapes::StructureShape.new(name: 'TimeRange')
242
268
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
243
269
  Title = Shapes::StringShape.new(name: 'Title')
270
+ Token = Shapes::StringShape.new(name: 'Token')
244
271
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
245
272
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
246
273
  UpdateDataSourceRequest = Shapes::StructureShape.new(name: 'UpdateDataSourceRequest')
247
274
  UpdateIndexRequest = Shapes::StructureShape.new(name: 'UpdateIndexRequest')
248
275
  Url = Shapes::StringShape.new(name: 'Url')
276
+ UserContext = Shapes::StructureShape.new(name: 'UserContext')
277
+ UserContextPolicy = Shapes::StringShape.new(name: 'UserContextPolicy')
278
+ UserNameAttributeField = Shapes::StringShape.new(name: 'UserNameAttributeField')
279
+ UserTokenConfiguration = Shapes::StructureShape.new(name: 'UserTokenConfiguration')
280
+ UserTokenConfigurationList = Shapes::ListShape.new(name: 'UserTokenConfigurationList')
249
281
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
250
282
  ValueImportanceMap = Shapes::MapShape.new(name: 'ValueImportanceMap')
251
283
  ValueImportanceMapKey = Shapes::StringShape.new(name: 'ValueImportanceMapKey')
@@ -336,6 +368,65 @@ module Aws::Kendra
336
368
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
337
369
  ConflictException.struct_class = Types::ConflictException
338
370
 
371
+ ConfluenceAttachmentConfiguration.add_member(:crawl_attachments, Shapes::ShapeRef.new(shape: Boolean, location_name: "CrawlAttachments"))
372
+ ConfluenceAttachmentConfiguration.add_member(:attachment_field_mappings, Shapes::ShapeRef.new(shape: ConfluenceAttachmentFieldMappingsList, location_name: "AttachmentFieldMappings"))
373
+ ConfluenceAttachmentConfiguration.struct_class = Types::ConfluenceAttachmentConfiguration
374
+
375
+ ConfluenceAttachmentFieldMappingsList.member = Shapes::ShapeRef.new(shape: ConfluenceAttachmentToIndexFieldMapping)
376
+
377
+ ConfluenceAttachmentToIndexFieldMapping.add_member(:data_source_field_name, Shapes::ShapeRef.new(shape: ConfluenceAttachmentFieldName, location_name: "DataSourceFieldName"))
378
+ ConfluenceAttachmentToIndexFieldMapping.add_member(:date_field_format, Shapes::ShapeRef.new(shape: DataSourceDateFieldFormat, location_name: "DateFieldFormat"))
379
+ ConfluenceAttachmentToIndexFieldMapping.add_member(:index_field_name, Shapes::ShapeRef.new(shape: IndexFieldName, location_name: "IndexFieldName"))
380
+ ConfluenceAttachmentToIndexFieldMapping.struct_class = Types::ConfluenceAttachmentToIndexFieldMapping
381
+
382
+ ConfluenceBlogConfiguration.add_member(:blog_field_mappings, Shapes::ShapeRef.new(shape: ConfluenceBlogFieldMappingsList, location_name: "BlogFieldMappings"))
383
+ ConfluenceBlogConfiguration.struct_class = Types::ConfluenceBlogConfiguration
384
+
385
+ ConfluenceBlogFieldMappingsList.member = Shapes::ShapeRef.new(shape: ConfluenceBlogToIndexFieldMapping)
386
+
387
+ ConfluenceBlogToIndexFieldMapping.add_member(:data_source_field_name, Shapes::ShapeRef.new(shape: ConfluenceBlogFieldName, location_name: "DataSourceFieldName"))
388
+ ConfluenceBlogToIndexFieldMapping.add_member(:date_field_format, Shapes::ShapeRef.new(shape: DataSourceDateFieldFormat, location_name: "DateFieldFormat"))
389
+ ConfluenceBlogToIndexFieldMapping.add_member(:index_field_name, Shapes::ShapeRef.new(shape: IndexFieldName, location_name: "IndexFieldName"))
390
+ ConfluenceBlogToIndexFieldMapping.struct_class = Types::ConfluenceBlogToIndexFieldMapping
391
+
392
+ ConfluenceConfiguration.add_member(:server_url, Shapes::ShapeRef.new(shape: Url, required: true, location_name: "ServerUrl"))
393
+ ConfluenceConfiguration.add_member(:secret_arn, Shapes::ShapeRef.new(shape: SecretArn, required: true, location_name: "SecretArn"))
394
+ ConfluenceConfiguration.add_member(:version, Shapes::ShapeRef.new(shape: ConfluenceVersion, required: true, location_name: "Version"))
395
+ ConfluenceConfiguration.add_member(:space_configuration, Shapes::ShapeRef.new(shape: ConfluenceSpaceConfiguration, location_name: "SpaceConfiguration"))
396
+ ConfluenceConfiguration.add_member(:page_configuration, Shapes::ShapeRef.new(shape: ConfluencePageConfiguration, location_name: "PageConfiguration"))
397
+ ConfluenceConfiguration.add_member(:blog_configuration, Shapes::ShapeRef.new(shape: ConfluenceBlogConfiguration, location_name: "BlogConfiguration"))
398
+ ConfluenceConfiguration.add_member(:attachment_configuration, Shapes::ShapeRef.new(shape: ConfluenceAttachmentConfiguration, location_name: "AttachmentConfiguration"))
399
+ ConfluenceConfiguration.add_member(:vpc_configuration, Shapes::ShapeRef.new(shape: DataSourceVpcConfiguration, location_name: "VpcConfiguration"))
400
+ ConfluenceConfiguration.add_member(:inclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPatterns"))
401
+ ConfluenceConfiguration.add_member(:exclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "ExclusionPatterns"))
402
+ ConfluenceConfiguration.struct_class = Types::ConfluenceConfiguration
403
+
404
+ ConfluencePageConfiguration.add_member(:page_field_mappings, Shapes::ShapeRef.new(shape: ConfluencePageFieldMappingsList, location_name: "PageFieldMappings"))
405
+ ConfluencePageConfiguration.struct_class = Types::ConfluencePageConfiguration
406
+
407
+ ConfluencePageFieldMappingsList.member = Shapes::ShapeRef.new(shape: ConfluencePageToIndexFieldMapping)
408
+
409
+ ConfluencePageToIndexFieldMapping.add_member(:data_source_field_name, Shapes::ShapeRef.new(shape: ConfluencePageFieldName, location_name: "DataSourceFieldName"))
410
+ ConfluencePageToIndexFieldMapping.add_member(:date_field_format, Shapes::ShapeRef.new(shape: DataSourceDateFieldFormat, location_name: "DateFieldFormat"))
411
+ ConfluencePageToIndexFieldMapping.add_member(:index_field_name, Shapes::ShapeRef.new(shape: IndexFieldName, location_name: "IndexFieldName"))
412
+ ConfluencePageToIndexFieldMapping.struct_class = Types::ConfluencePageToIndexFieldMapping
413
+
414
+ ConfluenceSpaceConfiguration.add_member(:crawl_personal_spaces, Shapes::ShapeRef.new(shape: Boolean, location_name: "CrawlPersonalSpaces"))
415
+ ConfluenceSpaceConfiguration.add_member(:crawl_archived_spaces, Shapes::ShapeRef.new(shape: Boolean, location_name: "CrawlArchivedSpaces"))
416
+ ConfluenceSpaceConfiguration.add_member(:include_spaces, Shapes::ShapeRef.new(shape: ConfluenceSpaceList, location_name: "IncludeSpaces"))
417
+ ConfluenceSpaceConfiguration.add_member(:exclude_spaces, Shapes::ShapeRef.new(shape: ConfluenceSpaceList, location_name: "ExcludeSpaces"))
418
+ ConfluenceSpaceConfiguration.add_member(:space_field_mappings, Shapes::ShapeRef.new(shape: ConfluenceSpaceFieldMappingsList, location_name: "SpaceFieldMappings"))
419
+ ConfluenceSpaceConfiguration.struct_class = Types::ConfluenceSpaceConfiguration
420
+
421
+ ConfluenceSpaceFieldMappingsList.member = Shapes::ShapeRef.new(shape: ConfluenceSpaceToIndexFieldMapping)
422
+
423
+ ConfluenceSpaceList.member = Shapes::ShapeRef.new(shape: ConfluenceSpaceIdentifier)
424
+
425
+ ConfluenceSpaceToIndexFieldMapping.add_member(:data_source_field_name, Shapes::ShapeRef.new(shape: ConfluenceSpaceFieldName, location_name: "DataSourceFieldName"))
426
+ ConfluenceSpaceToIndexFieldMapping.add_member(:date_field_format, Shapes::ShapeRef.new(shape: DataSourceDateFieldFormat, location_name: "DateFieldFormat"))
427
+ ConfluenceSpaceToIndexFieldMapping.add_member(:index_field_name, Shapes::ShapeRef.new(shape: IndexFieldName, location_name: "IndexFieldName"))
428
+ ConfluenceSpaceToIndexFieldMapping.struct_class = Types::ConfluenceSpaceToIndexFieldMapping
429
+
339
430
  ConnectionConfiguration.add_member(:database_host, Shapes::ShapeRef.new(shape: DatabaseHost, required: true, location_name: "DatabaseHost"))
340
431
  ConnectionConfiguration.add_member(:database_port, Shapes::ShapeRef.new(shape: DatabasePort, required: true, location_name: "DatabasePort"))
341
432
  ConnectionConfiguration.add_member(:database_name, Shapes::ShapeRef.new(shape: DatabaseName, required: true, location_name: "DatabaseName"))
@@ -346,11 +437,12 @@ module Aws::Kendra
346
437
  CreateDataSourceRequest.add_member(:name, Shapes::ShapeRef.new(shape: DataSourceName, required: true, location_name: "Name"))
347
438
  CreateDataSourceRequest.add_member(:index_id, Shapes::ShapeRef.new(shape: IndexId, required: true, location_name: "IndexId"))
348
439
  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"))
440
+ CreateDataSourceRequest.add_member(:configuration, Shapes::ShapeRef.new(shape: DataSourceConfiguration, location_name: "Configuration"))
350
441
  CreateDataSourceRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
351
442
  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"))
443
+ CreateDataSourceRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "RoleArn"))
353
444
  CreateDataSourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
445
+ CreateDataSourceRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientTokenName, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
354
446
  CreateDataSourceRequest.struct_class = Types::CreateDataSourceRequest
355
447
 
356
448
  CreateDataSourceResponse.add_member(:id, Shapes::ShapeRef.new(shape: DataSourceId, required: true, location_name: "Id"))
@@ -363,6 +455,7 @@ module Aws::Kendra
363
455
  CreateFaqRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "RoleArn"))
364
456
  CreateFaqRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
365
457
  CreateFaqRequest.add_member(:file_format, Shapes::ShapeRef.new(shape: FaqFileFormat, location_name: "FileFormat"))
458
+ CreateFaqRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientTokenName, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
366
459
  CreateFaqRequest.struct_class = Types::CreateFaqRequest
367
460
 
368
461
  CreateFaqResponse.add_member(:id, Shapes::ShapeRef.new(shape: FaqId, location_name: "Id"))
@@ -375,6 +468,8 @@ module Aws::Kendra
375
468
  CreateIndexRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
376
469
  CreateIndexRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientTokenName, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
377
470
  CreateIndexRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
471
+ CreateIndexRequest.add_member(:user_token_configurations, Shapes::ShapeRef.new(shape: UserTokenConfigurationList, location_name: "UserTokenConfigurations"))
472
+ CreateIndexRequest.add_member(:user_context_policy, Shapes::ShapeRef.new(shape: UserContextPolicy, location_name: "UserContextPolicy"))
378
473
  CreateIndexRequest.struct_class = Types::CreateIndexRequest
379
474
 
380
475
  CreateIndexResponse.add_member(:id, Shapes::ShapeRef.new(shape: IndexId, location_name: "Id"))
@@ -386,6 +481,7 @@ module Aws::Kendra
386
481
  DataSourceConfiguration.add_member(:salesforce_configuration, Shapes::ShapeRef.new(shape: SalesforceConfiguration, location_name: "SalesforceConfiguration"))
387
482
  DataSourceConfiguration.add_member(:one_drive_configuration, Shapes::ShapeRef.new(shape: OneDriveConfiguration, location_name: "OneDriveConfiguration"))
388
483
  DataSourceConfiguration.add_member(:service_now_configuration, Shapes::ShapeRef.new(shape: ServiceNowConfiguration, location_name: "ServiceNowConfiguration"))
484
+ DataSourceConfiguration.add_member(:confluence_configuration, Shapes::ShapeRef.new(shape: ConfluenceConfiguration, location_name: "ConfluenceConfiguration"))
389
485
  DataSourceConfiguration.struct_class = Types::DataSourceConfiguration
390
486
 
391
487
  DataSourceInclusionsExclusionsStrings.member = Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStringsMember)
@@ -504,6 +600,8 @@ module Aws::Kendra
504
600
  DescribeIndexResponse.add_member(:index_statistics, Shapes::ShapeRef.new(shape: IndexStatistics, location_name: "IndexStatistics"))
505
601
  DescribeIndexResponse.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "ErrorMessage"))
506
602
  DescribeIndexResponse.add_member(:capacity_units, Shapes::ShapeRef.new(shape: CapacityUnitsConfiguration, location_name: "CapacityUnits"))
603
+ DescribeIndexResponse.add_member(:user_token_configurations, Shapes::ShapeRef.new(shape: UserTokenConfigurationList, location_name: "UserTokenConfigurations"))
604
+ DescribeIndexResponse.add_member(:user_context_policy, Shapes::ShapeRef.new(shape: UserContextPolicy, location_name: "UserContextPolicy"))
507
605
  DescribeIndexResponse.struct_class = Types::DescribeIndexResponse
508
606
 
509
607
  Document.add_member(:id, Shapes::ShapeRef.new(shape: DocumentId, required: true, location_name: "Id"))
@@ -601,6 +699,19 @@ module Aws::Kendra
601
699
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
602
700
  InternalServerException.struct_class = Types::InternalServerException
603
701
 
702
+ JsonTokenTypeConfiguration.add_member(:user_name_attribute_field, Shapes::ShapeRef.new(shape: String, required: true, location_name: "UserNameAttributeField"))
703
+ JsonTokenTypeConfiguration.add_member(:group_attribute_field, Shapes::ShapeRef.new(shape: String, required: true, location_name: "GroupAttributeField"))
704
+ JsonTokenTypeConfiguration.struct_class = Types::JsonTokenTypeConfiguration
705
+
706
+ JwtTokenTypeConfiguration.add_member(:key_location, Shapes::ShapeRef.new(shape: KeyLocation, required: true, location_name: "KeyLocation"))
707
+ JwtTokenTypeConfiguration.add_member(:url, Shapes::ShapeRef.new(shape: Url, location_name: "URL"))
708
+ JwtTokenTypeConfiguration.add_member(:secret_manager_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "SecretManagerArn"))
709
+ JwtTokenTypeConfiguration.add_member(:user_name_attribute_field, Shapes::ShapeRef.new(shape: UserNameAttributeField, location_name: "UserNameAttributeField"))
710
+ JwtTokenTypeConfiguration.add_member(:group_attribute_field, Shapes::ShapeRef.new(shape: GroupAttributeField, location_name: "GroupAttributeField"))
711
+ JwtTokenTypeConfiguration.add_member(:issuer, Shapes::ShapeRef.new(shape: Issuer, location_name: "Issuer"))
712
+ JwtTokenTypeConfiguration.add_member(:claim_regex, Shapes::ShapeRef.new(shape: ClaimRegex, location_name: "ClaimRegex"))
713
+ JwtTokenTypeConfiguration.struct_class = Types::JwtTokenTypeConfiguration
714
+
604
715
  ListDataSourceSyncJobsRequest.add_member(:id, Shapes::ShapeRef.new(shape: DataSourceId, required: true, location_name: "Id"))
605
716
  ListDataSourceSyncJobsRequest.add_member(:index_id, Shapes::ShapeRef.new(shape: IndexId, required: true, location_name: "IndexId"))
606
717
  ListDataSourceSyncJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -651,6 +762,7 @@ module Aws::Kendra
651
762
  OneDriveConfiguration.add_member(:inclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPatterns"))
652
763
  OneDriveConfiguration.add_member(:exclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "ExclusionPatterns"))
653
764
  OneDriveConfiguration.add_member(:field_mappings, Shapes::ShapeRef.new(shape: DataSourceToIndexFieldMappingList, location_name: "FieldMappings"))
765
+ OneDriveConfiguration.add_member(:disable_local_groups, Shapes::ShapeRef.new(shape: Boolean, location_name: "DisableLocalGroups"))
654
766
  OneDriveConfiguration.struct_class = Types::OneDriveConfiguration
655
767
 
656
768
  OneDriveUserList.member = Shapes::ShapeRef.new(shape: OneDriveUser)
@@ -675,6 +787,7 @@ module Aws::Kendra
675
787
  QueryRequest.add_member(:page_number, Shapes::ShapeRef.new(shape: Integer, location_name: "PageNumber"))
676
788
  QueryRequest.add_member(:page_size, Shapes::ShapeRef.new(shape: Integer, location_name: "PageSize"))
677
789
  QueryRequest.add_member(:sorting_configuration, Shapes::ShapeRef.new(shape: SortingConfiguration, location_name: "SortingConfiguration"))
790
+ QueryRequest.add_member(:user_context, Shapes::ShapeRef.new(shape: UserContext, location_name: "UserContext"))
678
791
  QueryRequest.struct_class = Types::QueryRequest
679
792
 
680
793
  QueryResult.add_member(:query_id, Shapes::ShapeRef.new(shape: QueryId, location_name: "QueryId"))
@@ -723,6 +836,7 @@ module Aws::Kendra
723
836
 
724
837
  S3DataSourceConfiguration.add_member(:bucket_name, Shapes::ShapeRef.new(shape: S3BucketName, required: true, location_name: "BucketName"))
725
838
  S3DataSourceConfiguration.add_member(:inclusion_prefixes, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPrefixes"))
839
+ S3DataSourceConfiguration.add_member(:inclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "InclusionPatterns"))
726
840
  S3DataSourceConfiguration.add_member(:exclusion_patterns, Shapes::ShapeRef.new(shape: DataSourceInclusionsExclusionsStrings, location_name: "ExclusionPatterns"))
727
841
  S3DataSourceConfiguration.add_member(:documents_metadata_configuration, Shapes::ShapeRef.new(shape: DocumentsMetadataConfiguration, location_name: "DocumentsMetadataConfiguration"))
728
842
  S3DataSourceConfiguration.add_member(:access_control_list_configuration, Shapes::ShapeRef.new(shape: AccessControlListConfiguration, location_name: "AccessControlListConfiguration"))
@@ -833,6 +947,7 @@ module Aws::Kendra
833
947
  SharePointConfiguration.add_member(:vpc_configuration, Shapes::ShapeRef.new(shape: DataSourceVpcConfiguration, location_name: "VpcConfiguration"))
834
948
  SharePointConfiguration.add_member(:field_mappings, Shapes::ShapeRef.new(shape: DataSourceToIndexFieldMappingList, location_name: "FieldMappings"))
835
949
  SharePointConfiguration.add_member(:document_title_field_name, Shapes::ShapeRef.new(shape: DataSourceFieldName, location_name: "DocumentTitleFieldName"))
950
+ SharePointConfiguration.add_member(:disable_local_groups, Shapes::ShapeRef.new(shape: Boolean, location_name: "DisableLocalGroups"))
836
951
  SharePointConfiguration.struct_class = Types::SharePointConfiguration
837
952
 
838
953
  SharePointUrlList.member = Shapes::ShapeRef.new(shape: Url)
@@ -913,8 +1028,19 @@ module Aws::Kendra
913
1028
  UpdateIndexRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
914
1029
  UpdateIndexRequest.add_member(:document_metadata_configuration_updates, Shapes::ShapeRef.new(shape: DocumentMetadataConfigurationList, location_name: "DocumentMetadataConfigurationUpdates"))
915
1030
  UpdateIndexRequest.add_member(:capacity_units, Shapes::ShapeRef.new(shape: CapacityUnitsConfiguration, location_name: "CapacityUnits"))
1031
+ UpdateIndexRequest.add_member(:user_token_configurations, Shapes::ShapeRef.new(shape: UserTokenConfigurationList, location_name: "UserTokenConfigurations"))
1032
+ UpdateIndexRequest.add_member(:user_context_policy, Shapes::ShapeRef.new(shape: UserContextPolicy, location_name: "UserContextPolicy"))
916
1033
  UpdateIndexRequest.struct_class = Types::UpdateIndexRequest
917
1034
 
1035
+ UserContext.add_member(:token, Shapes::ShapeRef.new(shape: Token, location_name: "Token"))
1036
+ UserContext.struct_class = Types::UserContext
1037
+
1038
+ UserTokenConfiguration.add_member(:jwt_token_type_configuration, Shapes::ShapeRef.new(shape: JwtTokenTypeConfiguration, location_name: "JwtTokenTypeConfiguration"))
1039
+ UserTokenConfiguration.add_member(:json_token_type_configuration, Shapes::ShapeRef.new(shape: JsonTokenTypeConfiguration, location_name: "JsonTokenTypeConfiguration"))
1040
+ UserTokenConfiguration.struct_class = Types::UserTokenConfiguration
1041
+
1042
+ UserTokenConfigurationList.member = Shapes::ShapeRef.new(shape: UserTokenConfiguration)
1043
+
918
1044
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
919
1045
  ValidationException.struct_class = Types::ValidationException
920
1046
 
@@ -818,6 +818,491 @@ module Aws::Kendra
818
818
  include Aws::Structure
819
819
  end
820
820
 
821
+ # Specifies the attachment settings for the Confluence data source.
822
+ # Attachment settings are optional, if you don't specify settings
823
+ # attachments, Amazon Kendra won't index them.
824
+ #
825
+ # @note When making an API call, you may pass ConfluenceAttachmentConfiguration
826
+ # data as a hash:
827
+ #
828
+ # {
829
+ # crawl_attachments: false,
830
+ # attachment_field_mappings: [
831
+ # {
832
+ # 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
833
+ # date_field_format: "DataSourceDateFieldFormat",
834
+ # index_field_name: "IndexFieldName",
835
+ # },
836
+ # ],
837
+ # }
838
+ #
839
+ # @!attribute [rw] crawl_attachments
840
+ # Indicates whether Amazon Kendra indexes attachments to the pages and
841
+ # blogs in the Confluence data source.
842
+ # @return [Boolean]
843
+ #
844
+ # @!attribute [rw] attachment_field_mappings
845
+ # Defines how attachment metadata fields should be mapped to index
846
+ # fields. Before you can map a field, you must first create an index
847
+ # field with a matching type using the console or the `UpdateIndex`
848
+ # operation.
849
+ #
850
+ # If you specify the `AttachentFieldMappings` parameter, you must
851
+ # specify at least one field mapping.
852
+ # @return [Array<Types::ConfluenceAttachmentToIndexFieldMapping>]
853
+ #
854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceAttachmentConfiguration AWS API Documentation
855
+ #
856
+ class ConfluenceAttachmentConfiguration < Struct.new(
857
+ :crawl_attachments,
858
+ :attachment_field_mappings)
859
+ SENSITIVE = []
860
+ include Aws::Structure
861
+ end
862
+
863
+ # Defines the mapping between a field in the Confluence data source to a
864
+ # Amazon Kendra index field.
865
+ #
866
+ # You must first create the index field using the operation.
867
+ #
868
+ # @note When making an API call, you may pass ConfluenceAttachmentToIndexFieldMapping
869
+ # data as a hash:
870
+ #
871
+ # {
872
+ # 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
873
+ # date_field_format: "DataSourceDateFieldFormat",
874
+ # index_field_name: "IndexFieldName",
875
+ # }
876
+ #
877
+ # @!attribute [rw] data_source_field_name
878
+ # The name of the field in the data source.
879
+ #
880
+ # You must first create the index field using the operation.
881
+ # @return [String]
882
+ #
883
+ # @!attribute [rw] date_field_format
884
+ # The format for date fields in the data source. If the field
885
+ # specified in `DataSourceFieldName` is a date field you must specify
886
+ # the date format. If the field is not a date field, an exception is
887
+ # thrown.
888
+ # @return [String]
889
+ #
890
+ # @!attribute [rw] index_field_name
891
+ # The name of the index field to map to the Confluence data source
892
+ # field. The index field type must match the Confluence field type.
893
+ # @return [String]
894
+ #
895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceAttachmentToIndexFieldMapping AWS API Documentation
896
+ #
897
+ class ConfluenceAttachmentToIndexFieldMapping < Struct.new(
898
+ :data_source_field_name,
899
+ :date_field_format,
900
+ :index_field_name)
901
+ SENSITIVE = []
902
+ include Aws::Structure
903
+ end
904
+
905
+ # Specifies the blog settings for the Confluence data source. Blogs are
906
+ # always indexed unless filtered from the index by the
907
+ # `ExclusionPatterns` or `InclusionPatterns` fields in the data type.
908
+ #
909
+ # @note When making an API call, you may pass ConfluenceBlogConfiguration
910
+ # data as a hash:
911
+ #
912
+ # {
913
+ # blog_field_mappings: [
914
+ # {
915
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
916
+ # date_field_format: "DataSourceDateFieldFormat",
917
+ # index_field_name: "IndexFieldName",
918
+ # },
919
+ # ],
920
+ # }
921
+ #
922
+ # @!attribute [rw] blog_field_mappings
923
+ # Defines how blog metadata fields should be mapped to index fields.
924
+ # Before you can map a field, you must first create an index field
925
+ # with a matching type using the console or the `UpdateIndex`
926
+ # operation.
927
+ #
928
+ # If you specify the `BlogFieldMappings` parameter, you must specify
929
+ # at least one field mapping.
930
+ # @return [Array<Types::ConfluenceBlogToIndexFieldMapping>]
931
+ #
932
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceBlogConfiguration AWS API Documentation
933
+ #
934
+ class ConfluenceBlogConfiguration < Struct.new(
935
+ :blog_field_mappings)
936
+ SENSITIVE = []
937
+ include Aws::Structure
938
+ end
939
+
940
+ # Defines the mapping between a blog field in the Confluence data source
941
+ # to a Amazon Kendra index field.
942
+ #
943
+ # You must first create the index field using the operation.
944
+ #
945
+ # @note When making an API call, you may pass ConfluenceBlogToIndexFieldMapping
946
+ # data as a hash:
947
+ #
948
+ # {
949
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
950
+ # date_field_format: "DataSourceDateFieldFormat",
951
+ # index_field_name: "IndexFieldName",
952
+ # }
953
+ #
954
+ # @!attribute [rw] data_source_field_name
955
+ # The name of the field in the data source.
956
+ # @return [String]
957
+ #
958
+ # @!attribute [rw] date_field_format
959
+ # The format for date fields in the data source. If the field
960
+ # specified in `DataSourceFieldName` is a date field you must specify
961
+ # the date format. If the field is not a date field, an exception is
962
+ # thrown.
963
+ # @return [String]
964
+ #
965
+ # @!attribute [rw] index_field_name
966
+ # The name of the index field to map to the Confluence data source
967
+ # field. The index field type must match the Confluence field type.
968
+ # @return [String]
969
+ #
970
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceBlogToIndexFieldMapping AWS API Documentation
971
+ #
972
+ class ConfluenceBlogToIndexFieldMapping < Struct.new(
973
+ :data_source_field_name,
974
+ :date_field_format,
975
+ :index_field_name)
976
+ SENSITIVE = []
977
+ include Aws::Structure
978
+ end
979
+
980
+ # Provides configuration information for data sources that connect to
981
+ # Confluence.
982
+ #
983
+ # @note When making an API call, you may pass ConfluenceConfiguration
984
+ # data as a hash:
985
+ #
986
+ # {
987
+ # server_url: "Url", # required
988
+ # secret_arn: "SecretArn", # required
989
+ # version: "CLOUD", # required, accepts CLOUD, SERVER
990
+ # space_configuration: {
991
+ # crawl_personal_spaces: false,
992
+ # crawl_archived_spaces: false,
993
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
994
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
995
+ # space_field_mappings: [
996
+ # {
997
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
998
+ # date_field_format: "DataSourceDateFieldFormat",
999
+ # index_field_name: "IndexFieldName",
1000
+ # },
1001
+ # ],
1002
+ # },
1003
+ # page_configuration: {
1004
+ # page_field_mappings: [
1005
+ # {
1006
+ # 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
1007
+ # date_field_format: "DataSourceDateFieldFormat",
1008
+ # index_field_name: "IndexFieldName",
1009
+ # },
1010
+ # ],
1011
+ # },
1012
+ # blog_configuration: {
1013
+ # blog_field_mappings: [
1014
+ # {
1015
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
1016
+ # date_field_format: "DataSourceDateFieldFormat",
1017
+ # index_field_name: "IndexFieldName",
1018
+ # },
1019
+ # ],
1020
+ # },
1021
+ # attachment_configuration: {
1022
+ # crawl_attachments: false,
1023
+ # attachment_field_mappings: [
1024
+ # {
1025
+ # 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
1026
+ # date_field_format: "DataSourceDateFieldFormat",
1027
+ # index_field_name: "IndexFieldName",
1028
+ # },
1029
+ # ],
1030
+ # },
1031
+ # vpc_configuration: {
1032
+ # subnet_ids: ["SubnetId"], # required
1033
+ # security_group_ids: ["VpcSecurityGroupId"], # required
1034
+ # },
1035
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1036
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1037
+ # }
1038
+ #
1039
+ # @!attribute [rw] server_url
1040
+ # The URL of your Confluence instance. Use the full URL of the server.
1041
+ # For example, `https://server.example.com:port/`. You can also use an
1042
+ # IP address, for example, `https://192.168.1.113/`.
1043
+ # @return [String]
1044
+ #
1045
+ # @!attribute [rw] secret_arn
1046
+ # The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that
1047
+ # contains the key/value pairs required to connect to your Confluence
1048
+ # server. The secret must contain a JSON structure with the following
1049
+ # keys:
1050
+ #
1051
+ # * username - The user name or email address of a user with
1052
+ # administrative privileges for the Confluence server.
1053
+ #
1054
+ # * password - The password associated with the user logging in to the
1055
+ # Confluence server.
1056
+ # @return [String]
1057
+ #
1058
+ # @!attribute [rw] version
1059
+ # Specifies the version of the Confluence installation that you are
1060
+ # connecting to.
1061
+ # @return [String]
1062
+ #
1063
+ # @!attribute [rw] space_configuration
1064
+ # Specifies configuration information for indexing Confluence spaces.
1065
+ # @return [Types::ConfluenceSpaceConfiguration]
1066
+ #
1067
+ # @!attribute [rw] page_configuration
1068
+ # Specifies configuration information for indexing Confluence pages.
1069
+ # @return [Types::ConfluencePageConfiguration]
1070
+ #
1071
+ # @!attribute [rw] blog_configuration
1072
+ # Specifies configuration information for indexing Confluence blogs.
1073
+ # @return [Types::ConfluenceBlogConfiguration]
1074
+ #
1075
+ # @!attribute [rw] attachment_configuration
1076
+ # Specifies configuration information for indexing attachments to
1077
+ # Confluence blogs and pages.
1078
+ # @return [Types::ConfluenceAttachmentConfiguration]
1079
+ #
1080
+ # @!attribute [rw] vpc_configuration
1081
+ # Specifies the information for connecting to an Amazon VPC.
1082
+ # @return [Types::DataSourceVpcConfiguration]
1083
+ #
1084
+ # @!attribute [rw] inclusion_patterns
1085
+ # A list of regular expression patterns that apply to a URL on the
1086
+ # Confluence server. An inclusion pattern can apply to a blog post, a
1087
+ # page, a space, or an attachment. Items that match the patterns are
1088
+ # included in the index. Items that don't match the pattern are
1089
+ # excluded from the index. If an item matches both an inclusion
1090
+ # pattern and an exclusion pattern, the item isn't included in the
1091
+ # index.
1092
+ # @return [Array<String>]
1093
+ #
1094
+ # @!attribute [rw] exclusion_patterns
1095
+ # A list of regular expression patterns that apply to a URL on the
1096
+ # Confluence server. An exclusion pattern can apply to a blog post, a
1097
+ # page, a space, or an attachment. Items that match the pattern are
1098
+ # excluded from the index. Items that don't match the pattern are
1099
+ # included in the index. If a item matches both an exclusion pattern
1100
+ # and an inclusion pattern, the item isn't included in the index.
1101
+ # @return [Array<String>]
1102
+ #
1103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceConfiguration AWS API Documentation
1104
+ #
1105
+ class ConfluenceConfiguration < Struct.new(
1106
+ :server_url,
1107
+ :secret_arn,
1108
+ :version,
1109
+ :space_configuration,
1110
+ :page_configuration,
1111
+ :blog_configuration,
1112
+ :attachment_configuration,
1113
+ :vpc_configuration,
1114
+ :inclusion_patterns,
1115
+ :exclusion_patterns)
1116
+ SENSITIVE = []
1117
+ include Aws::Structure
1118
+ end
1119
+
1120
+ # Specifies the page settings for the Confluence data source.
1121
+ #
1122
+ # @note When making an API call, you may pass ConfluencePageConfiguration
1123
+ # data as a hash:
1124
+ #
1125
+ # {
1126
+ # page_field_mappings: [
1127
+ # {
1128
+ # 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
1129
+ # date_field_format: "DataSourceDateFieldFormat",
1130
+ # index_field_name: "IndexFieldName",
1131
+ # },
1132
+ # ],
1133
+ # }
1134
+ #
1135
+ # @!attribute [rw] page_field_mappings
1136
+ # Defines how page metadata fields should be mapped to index fields.
1137
+ # Before you can map a field, you must first create an index field
1138
+ # with a matching type using the console or the `UpdateIndex`
1139
+ # operation.
1140
+ #
1141
+ # If you specify the `PageFieldMappings` parameter, you must specify
1142
+ # at least one field mapping.
1143
+ # @return [Array<Types::ConfluencePageToIndexFieldMapping>]
1144
+ #
1145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluencePageConfiguration AWS API Documentation
1146
+ #
1147
+ class ConfluencePageConfiguration < Struct.new(
1148
+ :page_field_mappings)
1149
+ SENSITIVE = []
1150
+ include Aws::Structure
1151
+ end
1152
+
1153
+ # Defines the mapping between a field in the Confluence data source to a
1154
+ # Amazon Kendra index field.
1155
+ #
1156
+ # You must first create the index field using the operation.
1157
+ #
1158
+ # @note When making an API call, you may pass ConfluencePageToIndexFieldMapping
1159
+ # data as a hash:
1160
+ #
1161
+ # {
1162
+ # 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
1163
+ # date_field_format: "DataSourceDateFieldFormat",
1164
+ # index_field_name: "IndexFieldName",
1165
+ # }
1166
+ #
1167
+ # @!attribute [rw] data_source_field_name
1168
+ # The name of the field in the data source.
1169
+ # @return [String]
1170
+ #
1171
+ # @!attribute [rw] date_field_format
1172
+ # The format for date fields in the data source. If the field
1173
+ # specified in `DataSourceFieldName` is a date field you must specify
1174
+ # the date format. If the field is not a date field, an exception is
1175
+ # thrown.
1176
+ # @return [String]
1177
+ #
1178
+ # @!attribute [rw] index_field_name
1179
+ # The name of the index field to map to the Confluence data source
1180
+ # field. The index field type must match the Confluence field type.
1181
+ # @return [String]
1182
+ #
1183
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluencePageToIndexFieldMapping AWS API Documentation
1184
+ #
1185
+ class ConfluencePageToIndexFieldMapping < Struct.new(
1186
+ :data_source_field_name,
1187
+ :date_field_format,
1188
+ :index_field_name)
1189
+ SENSITIVE = []
1190
+ include Aws::Structure
1191
+ end
1192
+
1193
+ # Specifies the configuration for indexing Confluence spaces.
1194
+ #
1195
+ # @note When making an API call, you may pass ConfluenceSpaceConfiguration
1196
+ # data as a hash:
1197
+ #
1198
+ # {
1199
+ # crawl_personal_spaces: false,
1200
+ # crawl_archived_spaces: false,
1201
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
1202
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
1203
+ # space_field_mappings: [
1204
+ # {
1205
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1206
+ # date_field_format: "DataSourceDateFieldFormat",
1207
+ # index_field_name: "IndexFieldName",
1208
+ # },
1209
+ # ],
1210
+ # }
1211
+ #
1212
+ # @!attribute [rw] crawl_personal_spaces
1213
+ # Specifies whether Amazon Kendra should index personal spaces. Users
1214
+ # can add restrictions to items in personal spaces. If personal spaces
1215
+ # are indexed, queries without user context information may return
1216
+ # restricted items from a personal space in their results. For more
1217
+ # information, see [Filtering on user context][1].
1218
+ #
1219
+ #
1220
+ #
1221
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html
1222
+ # @return [Boolean]
1223
+ #
1224
+ # @!attribute [rw] crawl_archived_spaces
1225
+ # Specifies whether Amazon Kendra should index archived spaces.
1226
+ # @return [Boolean]
1227
+ #
1228
+ # @!attribute [rw] include_spaces
1229
+ # A list of space keys for Confluence spaces. If you include a key,
1230
+ # the blogs, documents, and attachments in the space are indexed.
1231
+ # Spaces that aren't in the list aren't indexed. A space in the list
1232
+ # must exist. Otherwise, Amazon Kendra logs an error when the data
1233
+ # source is synchronized. If a space is in both the `IncludeSpaces`
1234
+ # and the `ExcludeSpaces` list, the space is excluded.
1235
+ # @return [Array<String>]
1236
+ #
1237
+ # @!attribute [rw] exclude_spaces
1238
+ # A list of space keys of Confluence spaces. If you include a key, the
1239
+ # blogs, documents, and attachments in the space are not indexed. If a
1240
+ # space is in both the `ExcludeSpaces` and the `IncludeSpaces` list,
1241
+ # the space is excluded.
1242
+ # @return [Array<String>]
1243
+ #
1244
+ # @!attribute [rw] space_field_mappings
1245
+ # Defines how space metadata fields should be mapped to index fields.
1246
+ # Before you can map a field, you must first create an index field
1247
+ # with a matching type using the console or the `UpdateIndex`
1248
+ # operation.
1249
+ #
1250
+ # If you specify the `SpaceFieldMappings` parameter, you must specify
1251
+ # at least one field mapping.
1252
+ # @return [Array<Types::ConfluenceSpaceToIndexFieldMapping>]
1253
+ #
1254
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceSpaceConfiguration AWS API Documentation
1255
+ #
1256
+ class ConfluenceSpaceConfiguration < Struct.new(
1257
+ :crawl_personal_spaces,
1258
+ :crawl_archived_spaces,
1259
+ :include_spaces,
1260
+ :exclude_spaces,
1261
+ :space_field_mappings)
1262
+ SENSITIVE = []
1263
+ include Aws::Structure
1264
+ end
1265
+
1266
+ # Defines the mapping between a field in the Confluence data source to a
1267
+ # Amazon Kendra index field.
1268
+ #
1269
+ # You must first create the index field using the operation.
1270
+ #
1271
+ # @note When making an API call, you may pass ConfluenceSpaceToIndexFieldMapping
1272
+ # data as a hash:
1273
+ #
1274
+ # {
1275
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1276
+ # date_field_format: "DataSourceDateFieldFormat",
1277
+ # index_field_name: "IndexFieldName",
1278
+ # }
1279
+ #
1280
+ # @!attribute [rw] data_source_field_name
1281
+ # The name of the field in the data source.
1282
+ # @return [String]
1283
+ #
1284
+ # @!attribute [rw] date_field_format
1285
+ # The format for date fields in the data source. If the field
1286
+ # specified in `DataSourceFieldName` is a date field you must specify
1287
+ # the date format. If the field is not a date field, an exception is
1288
+ # thrown.
1289
+ # @return [String]
1290
+ #
1291
+ # @!attribute [rw] index_field_name
1292
+ # The name of the index field to map to the Confluence data source
1293
+ # field. The index field type must match the Confluence field type.
1294
+ # @return [String]
1295
+ #
1296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceSpaceToIndexFieldMapping AWS API Documentation
1297
+ #
1298
+ class ConfluenceSpaceToIndexFieldMapping < Struct.new(
1299
+ :data_source_field_name,
1300
+ :date_field_format,
1301
+ :index_field_name)
1302
+ SENSITIVE = []
1303
+ include Aws::Structure
1304
+ end
1305
+
821
1306
  # Provides the information necessary to connect to a database.
822
1307
  #
823
1308
  # @note When making an API call, you may pass ConnectionConfiguration
@@ -879,11 +1364,12 @@ module Aws::Kendra
879
1364
  # {
880
1365
  # name: "DataSourceName", # required
881
1366
  # index_id: "IndexId", # required
882
- # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW
883
- # configuration: { # required
1367
+ # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW, CUSTOM, CONFLUENCE
1368
+ # configuration: {
884
1369
  # s3_configuration: {
885
1370
  # bucket_name: "S3BucketName", # required
886
1371
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
1372
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
887
1373
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
888
1374
  # documents_metadata_configuration: {
889
1375
  # s3_prefix: "S3ObjectKey",
@@ -912,6 +1398,7 @@ module Aws::Kendra
912
1398
  # },
913
1399
  # ],
914
1400
  # document_title_field_name: "DataSourceFieldName",
1401
+ # disable_local_groups: false,
915
1402
  # },
916
1403
  # database_configuration: {
917
1404
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -1036,6 +1523,7 @@ module Aws::Kendra
1036
1523
  # index_field_name: "IndexFieldName", # required
1037
1524
  # },
1038
1525
  # ],
1526
+ # disable_local_groups: false,
1039
1527
  # },
1040
1528
  # service_now_configuration: {
1041
1529
  # host_url: "ServiceNowHostUrl", # required
@@ -1070,16 +1558,69 @@ module Aws::Kendra
1070
1558
  # ],
1071
1559
  # },
1072
1560
  # },
1561
+ # confluence_configuration: {
1562
+ # server_url: "Url", # required
1563
+ # secret_arn: "SecretArn", # required
1564
+ # version: "CLOUD", # required, accepts CLOUD, SERVER
1565
+ # space_configuration: {
1566
+ # crawl_personal_spaces: false,
1567
+ # crawl_archived_spaces: false,
1568
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
1569
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
1570
+ # space_field_mappings: [
1571
+ # {
1572
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1573
+ # date_field_format: "DataSourceDateFieldFormat",
1574
+ # index_field_name: "IndexFieldName",
1575
+ # },
1576
+ # ],
1577
+ # },
1578
+ # page_configuration: {
1579
+ # page_field_mappings: [
1580
+ # {
1581
+ # 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
1582
+ # date_field_format: "DataSourceDateFieldFormat",
1583
+ # index_field_name: "IndexFieldName",
1584
+ # },
1585
+ # ],
1586
+ # },
1587
+ # blog_configuration: {
1588
+ # blog_field_mappings: [
1589
+ # {
1590
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
1591
+ # date_field_format: "DataSourceDateFieldFormat",
1592
+ # index_field_name: "IndexFieldName",
1593
+ # },
1594
+ # ],
1595
+ # },
1596
+ # attachment_configuration: {
1597
+ # crawl_attachments: false,
1598
+ # attachment_field_mappings: [
1599
+ # {
1600
+ # 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
1601
+ # date_field_format: "DataSourceDateFieldFormat",
1602
+ # index_field_name: "IndexFieldName",
1603
+ # },
1604
+ # ],
1605
+ # },
1606
+ # vpc_configuration: {
1607
+ # subnet_ids: ["SubnetId"], # required
1608
+ # security_group_ids: ["VpcSecurityGroupId"], # required
1609
+ # },
1610
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1611
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1612
+ # },
1073
1613
  # },
1074
1614
  # description: "Description",
1075
1615
  # schedule: "ScanSchedule",
1076
- # role_arn: "RoleArn", # required
1616
+ # role_arn: "RoleArn",
1077
1617
  # tags: [
1078
1618
  # {
1079
1619
  # key: "TagKey", # required
1080
1620
  # value: "TagValue", # required
1081
1621
  # },
1082
1622
  # ],
1623
+ # client_token: "ClientTokenName",
1083
1624
  # }
1084
1625
  #
1085
1626
  # @!attribute [rw] name
@@ -1097,8 +1638,15 @@ module Aws::Kendra
1097
1638
  # @return [String]
1098
1639
  #
1099
1640
  # @!attribute [rw] configuration
1100
- # The data source connector configuration information that is required
1101
- # to access the repository.
1641
+ # The connector configuration information that is required to access
1642
+ # the repository.
1643
+ #
1644
+ # You can't specify the `Configuration` parameter when the `Type`
1645
+ # parameter is set to `CUSTOM`. If you do, you receive a
1646
+ # `ValidationException` exception.
1647
+ #
1648
+ # The `Configuration` parameter is required for all other data
1649
+ # sources.
1102
1650
  # @return [Types::DataSourceConfiguration]
1103
1651
  #
1104
1652
  # @!attribute [rw] description
@@ -1110,6 +1658,10 @@ module Aws::Kendra
1110
1658
  # your repository and update the index. If you don't set a schedule
1111
1659
  # Amazon Kendra will not periodically update the index. You can call
1112
1660
  # the `StartDataSourceSyncJob` operation to update the index.
1661
+ #
1662
+ # You can't specify the `Schedule` parameter when the `Type`
1663
+ # parameter is set to `CUSTOM`. If you do, you receive a
1664
+ # `ValidationException` exception.
1113
1665
  # @return [String]
1114
1666
  #
1115
1667
  # @!attribute [rw] role_arn
@@ -1117,6 +1669,12 @@ module Aws::Kendra
1117
1669
  # the data source. For more information, see [IAM Roles for Amazon
1118
1670
  # Kendra][1].
1119
1671
  #
1672
+ # You can't specify the `RoleArn` parameter when the `Type` parameter
1673
+ # is set to `CUSTOM`. If you do, you receive a `ValidationException`
1674
+ # exception.
1675
+ #
1676
+ # The `RoleArn` parameter is required for all other data sources.
1677
+ #
1120
1678
  #
1121
1679
  #
1122
1680
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
@@ -1128,6 +1686,15 @@ module Aws::Kendra
1128
1686
  # access to resources.
1129
1687
  # @return [Array<Types::Tag>]
1130
1688
  #
1689
+ # @!attribute [rw] client_token
1690
+ # A token that you provide to identify the request to create a data
1691
+ # source. Multiple calls to the `CreateDataSource` operation with the
1692
+ # same client token will create only one data source.
1693
+ #
1694
+ # **A suitable default value is auto-generated.** You should normally
1695
+ # not need to pass this option.
1696
+ # @return [String]
1697
+ #
1131
1698
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateDataSourceRequest AWS API Documentation
1132
1699
  #
1133
1700
  class CreateDataSourceRequest < Struct.new(
@@ -1138,7 +1705,8 @@ module Aws::Kendra
1138
1705
  :description,
1139
1706
  :schedule,
1140
1707
  :role_arn,
1141
- :tags)
1708
+ :tags,
1709
+ :client_token)
1142
1710
  SENSITIVE = []
1143
1711
  include Aws::Structure
1144
1712
  end
@@ -1174,6 +1742,7 @@ module Aws::Kendra
1174
1742
  # },
1175
1743
  # ],
1176
1744
  # file_format: "CSV", # accepts CSV, CSV_WITH_HEADER, JSON
1745
+ # client_token: "ClientTokenName",
1177
1746
  # }
1178
1747
  #
1179
1748
  # @!attribute [rw] index_id
@@ -1223,6 +1792,15 @@ module Aws::Kendra
1223
1792
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-creating-faq.html
1224
1793
  # @return [String]
1225
1794
  #
1795
+ # @!attribute [rw] client_token
1796
+ # A token that you provide to identify the request to create a FAQ.
1797
+ # Multiple calls to the `CreateFaqRequest` operation with the same
1798
+ # client token will create only one FAQ.
1799
+ #
1800
+ # **A suitable default value is auto-generated.** You should normally
1801
+ # not need to pass this option.
1802
+ # @return [String]
1803
+ #
1226
1804
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateFaqRequest AWS API Documentation
1227
1805
  #
1228
1806
  class CreateFaqRequest < Struct.new(
@@ -1232,7 +1810,8 @@ module Aws::Kendra
1232
1810
  :s3_path,
1233
1811
  :role_arn,
1234
1812
  :tags,
1235
- :file_format)
1813
+ :file_format,
1814
+ :client_token)
1236
1815
  SENSITIVE = []
1237
1816
  include Aws::Structure
1238
1817
  end
@@ -1267,6 +1846,24 @@ module Aws::Kendra
1267
1846
  # value: "TagValue", # required
1268
1847
  # },
1269
1848
  # ],
1849
+ # user_token_configurations: [
1850
+ # {
1851
+ # jwt_token_type_configuration: {
1852
+ # key_location: "URL", # required, accepts URL, SECRET_MANAGER
1853
+ # url: "Url",
1854
+ # secret_manager_arn: "RoleArn",
1855
+ # user_name_attribute_field: "UserNameAttributeField",
1856
+ # group_attribute_field: "GroupAttributeField",
1857
+ # issuer: "Issuer",
1858
+ # claim_regex: "ClaimRegex",
1859
+ # },
1860
+ # json_token_type_configuration: {
1861
+ # user_name_attribute_field: "String", # required
1862
+ # group_attribute_field: "String", # required
1863
+ # },
1864
+ # },
1865
+ # ],
1866
+ # user_context_policy: "ATTRIBUTE_FILTER", # accepts ATTRIBUTE_FILTER, USER_TOKEN
1270
1867
  # }
1271
1868
  #
1272
1869
  # @!attribute [rw] name
@@ -1285,10 +1882,11 @@ module Aws::Kendra
1285
1882
  # @return [String]
1286
1883
  #
1287
1884
  # @!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.
1885
+ # An AWS Identity and Access Management (IAM) role that gives Amazon
1886
+ # Kendra permissions to access your Amazon CloudWatch logs and
1887
+ # metrics. This is also the role used when you use the
1888
+ # `BatchPutDocument` operation to index documents from an Amazon S3
1889
+ # bucket.
1292
1890
  # @return [String]
1293
1891
  #
1294
1892
  # @!attribute [rw] server_side_encryption_configuration
@@ -1304,7 +1902,7 @@ module Aws::Kendra
1304
1902
  # @!attribute [rw] client_token
1305
1903
  # A token that you provide to identify the request to create an index.
1306
1904
  # Multiple calls to the `CreateIndex` operation with the same client
1307
- # token will create only one index.”
1905
+ # token will create only one index.
1308
1906
  #
1309
1907
  # **A suitable default value is auto-generated.** You should normally
1310
1908
  # not need to pass this option.
@@ -1316,6 +1914,26 @@ module Aws::Kendra
1316
1914
  # to resources.
1317
1915
  # @return [Array<Types::Tag>]
1318
1916
  #
1917
+ # @!attribute [rw] user_token_configurations
1918
+ # The user token configuration.
1919
+ # @return [Array<Types::UserTokenConfiguration>]
1920
+ #
1921
+ # @!attribute [rw] user_context_policy
1922
+ # The user context policy.
1923
+ #
1924
+ # ATTRIBUTE\_FILTER
1925
+ #
1926
+ # : All indexed content is searchable and displayable for all users.
1927
+ # If there is an access control list, it is ignored. You can filter
1928
+ # on user and group attributes.
1929
+ #
1930
+ # USER\_TOKEN
1931
+ #
1932
+ # : Enables SSO and token-based user access control. All documents
1933
+ # with no access control and all documents accessible to the user
1934
+ # will be searchable and displayable.
1935
+ # @return [String]
1936
+ #
1319
1937
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateIndexRequest AWS API Documentation
1320
1938
  #
1321
1939
  class CreateIndexRequest < Struct.new(
@@ -1325,7 +1943,9 @@ module Aws::Kendra
1325
1943
  :server_side_encryption_configuration,
1326
1944
  :description,
1327
1945
  :client_token,
1328
- :tags)
1946
+ :tags,
1947
+ :user_token_configurations,
1948
+ :user_context_policy)
1329
1949
  SENSITIVE = []
1330
1950
  include Aws::Structure
1331
1951
  end
@@ -1352,6 +1972,7 @@ module Aws::Kendra
1352
1972
  # s3_configuration: {
1353
1973
  # bucket_name: "S3BucketName", # required
1354
1974
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
1975
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1355
1976
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1356
1977
  # documents_metadata_configuration: {
1357
1978
  # s3_prefix: "S3ObjectKey",
@@ -1380,6 +2001,7 @@ module Aws::Kendra
1380
2001
  # },
1381
2002
  # ],
1382
2003
  # document_title_field_name: "DataSourceFieldName",
2004
+ # disable_local_groups: false,
1383
2005
  # },
1384
2006
  # database_configuration: {
1385
2007
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -1504,6 +2126,7 @@ module Aws::Kendra
1504
2126
  # index_field_name: "IndexFieldName", # required
1505
2127
  # },
1506
2128
  # ],
2129
+ # disable_local_groups: false,
1507
2130
  # },
1508
2131
  # service_now_configuration: {
1509
2132
  # host_url: "ServiceNowHostUrl", # required
@@ -1538,6 +2161,58 @@ module Aws::Kendra
1538
2161
  # ],
1539
2162
  # },
1540
2163
  # },
2164
+ # confluence_configuration: {
2165
+ # server_url: "Url", # required
2166
+ # secret_arn: "SecretArn", # required
2167
+ # version: "CLOUD", # required, accepts CLOUD, SERVER
2168
+ # space_configuration: {
2169
+ # crawl_personal_spaces: false,
2170
+ # crawl_archived_spaces: false,
2171
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
2172
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
2173
+ # space_field_mappings: [
2174
+ # {
2175
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
2176
+ # date_field_format: "DataSourceDateFieldFormat",
2177
+ # index_field_name: "IndexFieldName",
2178
+ # },
2179
+ # ],
2180
+ # },
2181
+ # page_configuration: {
2182
+ # page_field_mappings: [
2183
+ # {
2184
+ # 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
2185
+ # date_field_format: "DataSourceDateFieldFormat",
2186
+ # index_field_name: "IndexFieldName",
2187
+ # },
2188
+ # ],
2189
+ # },
2190
+ # blog_configuration: {
2191
+ # blog_field_mappings: [
2192
+ # {
2193
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
2194
+ # date_field_format: "DataSourceDateFieldFormat",
2195
+ # index_field_name: "IndexFieldName",
2196
+ # },
2197
+ # ],
2198
+ # },
2199
+ # attachment_configuration: {
2200
+ # crawl_attachments: false,
2201
+ # attachment_field_mappings: [
2202
+ # {
2203
+ # 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
2204
+ # date_field_format: "DataSourceDateFieldFormat",
2205
+ # index_field_name: "IndexFieldName",
2206
+ # },
2207
+ # ],
2208
+ # },
2209
+ # vpc_configuration: {
2210
+ # subnet_ids: ["SubnetId"], # required
2211
+ # security_group_ids: ["VpcSecurityGroupId"], # required
2212
+ # },
2213
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2214
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2215
+ # },
1541
2216
  # }
1542
2217
  #
1543
2218
  # @!attribute [rw] s3_configuration
@@ -1570,6 +2245,11 @@ module Aws::Kendra
1570
2245
  # instances.
1571
2246
  # @return [Types::ServiceNowConfiguration]
1572
2247
  #
2248
+ # @!attribute [rw] confluence_configuration
2249
+ # Provides configuration information for connecting to a Confluence
2250
+ # data source.
2251
+ # @return [Types::ConfluenceConfiguration]
2252
+ #
1573
2253
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DataSourceConfiguration AWS API Documentation
1574
2254
  #
1575
2255
  class DataSourceConfiguration < Struct.new(
@@ -1578,7 +2258,8 @@ module Aws::Kendra
1578
2258
  :database_configuration,
1579
2259
  :salesforce_configuration,
1580
2260
  :one_drive_configuration,
1581
- :service_now_configuration)
2261
+ :service_now_configuration,
2262
+ :confluence_configuration)
1582
2263
  SENSITIVE = []
1583
2264
  include Aws::Structure
1584
2265
  end
@@ -2238,6 +2919,14 @@ module Aws::Kendra
2238
2919
  # capacity for the index.
2239
2920
  # @return [Types::CapacityUnitsConfiguration]
2240
2921
  #
2922
+ # @!attribute [rw] user_token_configurations
2923
+ # The user token configuration for the Amazon Kendra index.
2924
+ # @return [Array<Types::UserTokenConfiguration>]
2925
+ #
2926
+ # @!attribute [rw] user_context_policy
2927
+ # The user context policy for the Amazon Kendra index.
2928
+ # @return [String]
2929
+ #
2241
2930
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeIndexResponse AWS API Documentation
2242
2931
  #
2243
2932
  class DescribeIndexResponse < Struct.new(
@@ -2253,7 +2942,9 @@ module Aws::Kendra
2253
2942
  :document_metadata_configurations,
2254
2943
  :index_statistics,
2255
2944
  :error_message,
2256
- :capacity_units)
2945
+ :capacity_units,
2946
+ :user_token_configurations,
2947
+ :user_context_policy)
2257
2948
  SENSITIVE = []
2258
2949
  include Aws::Structure
2259
2950
  end
@@ -2725,6 +3416,90 @@ module Aws::Kendra
2725
3416
  include Aws::Structure
2726
3417
  end
2727
3418
 
3419
+ # Configuration information for the JSON token type.
3420
+ #
3421
+ # @note When making an API call, you may pass JsonTokenTypeConfiguration
3422
+ # data as a hash:
3423
+ #
3424
+ # {
3425
+ # user_name_attribute_field: "String", # required
3426
+ # group_attribute_field: "String", # required
3427
+ # }
3428
+ #
3429
+ # @!attribute [rw] user_name_attribute_field
3430
+ # The user name attribute field.
3431
+ # @return [String]
3432
+ #
3433
+ # @!attribute [rw] group_attribute_field
3434
+ # The group attribute field.
3435
+ # @return [String]
3436
+ #
3437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/JsonTokenTypeConfiguration AWS API Documentation
3438
+ #
3439
+ class JsonTokenTypeConfiguration < Struct.new(
3440
+ :user_name_attribute_field,
3441
+ :group_attribute_field)
3442
+ SENSITIVE = []
3443
+ include Aws::Structure
3444
+ end
3445
+
3446
+ # Configuration information for the JWT token type.
3447
+ #
3448
+ # @note When making an API call, you may pass JwtTokenTypeConfiguration
3449
+ # data as a hash:
3450
+ #
3451
+ # {
3452
+ # key_location: "URL", # required, accepts URL, SECRET_MANAGER
3453
+ # url: "Url",
3454
+ # secret_manager_arn: "RoleArn",
3455
+ # user_name_attribute_field: "UserNameAttributeField",
3456
+ # group_attribute_field: "GroupAttributeField",
3457
+ # issuer: "Issuer",
3458
+ # claim_regex: "ClaimRegex",
3459
+ # }
3460
+ #
3461
+ # @!attribute [rw] key_location
3462
+ # The location of the key.
3463
+ # @return [String]
3464
+ #
3465
+ # @!attribute [rw] url
3466
+ # The signing key URL.
3467
+ # @return [String]
3468
+ #
3469
+ # @!attribute [rw] secret_manager_arn
3470
+ # The Amazon Resource Name (arn) of the secret.
3471
+ # @return [String]
3472
+ #
3473
+ # @!attribute [rw] user_name_attribute_field
3474
+ # The user name attribute field.
3475
+ # @return [String]
3476
+ #
3477
+ # @!attribute [rw] group_attribute_field
3478
+ # The group attribute field.
3479
+ # @return [String]
3480
+ #
3481
+ # @!attribute [rw] issuer
3482
+ # The issuer of the token.
3483
+ # @return [String]
3484
+ #
3485
+ # @!attribute [rw] claim_regex
3486
+ # The regular expression that identifies the claim.
3487
+ # @return [String]
3488
+ #
3489
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/JwtTokenTypeConfiguration AWS API Documentation
3490
+ #
3491
+ class JwtTokenTypeConfiguration < Struct.new(
3492
+ :key_location,
3493
+ :url,
3494
+ :secret_manager_arn,
3495
+ :user_name_attribute_field,
3496
+ :group_attribute_field,
3497
+ :issuer,
3498
+ :claim_regex)
3499
+ SENSITIVE = []
3500
+ include Aws::Structure
3501
+ end
3502
+
2728
3503
  # @note When making an API call, you may pass ListDataSourceSyncJobsRequest
2729
3504
  # data as a hash:
2730
3505
  #
@@ -3017,6 +3792,7 @@ module Aws::Kendra
3017
3792
  # index_field_name: "IndexFieldName", # required
3018
3793
  # },
3019
3794
  # ],
3795
+ # disable_local_groups: false,
3020
3796
  # }
3021
3797
  #
3022
3798
  # @!attribute [rw] tenant_domain
@@ -3059,6 +3835,11 @@ module Aws::Kendra
3059
3835
  # must first create the index fields before you map OneDrive fields.
3060
3836
  # @return [Array<Types::DataSourceToIndexFieldMapping>]
3061
3837
  #
3838
+ # @!attribute [rw] disable_local_groups
3839
+ # A Boolean value that specifies whether local groups are disabled
3840
+ # (`True`) or enabled (`False`).
3841
+ # @return [Boolean]
3842
+ #
3062
3843
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/OneDriveConfiguration AWS API Documentation
3063
3844
  #
3064
3845
  class OneDriveConfiguration < Struct.new(
@@ -3067,7 +3848,8 @@ module Aws::Kendra
3067
3848
  :one_drive_users,
3068
3849
  :inclusion_patterns,
3069
3850
  :exclusion_patterns,
3070
- :field_mappings)
3851
+ :field_mappings,
3852
+ :disable_local_groups)
3071
3853
  SENSITIVE = []
3072
3854
  include Aws::Structure
3073
3855
  end
@@ -3237,6 +4019,9 @@ module Aws::Kendra
3237
4019
  # document_attribute_key: "DocumentAttributeKey", # required
3238
4020
  # sort_order: "DESC", # required, accepts DESC, ASC
3239
4021
  # },
4022
+ # user_context: {
4023
+ # token: "Token",
4024
+ # },
3240
4025
  # }
3241
4026
  #
3242
4027
  # @!attribute [rw] index_id
@@ -3300,6 +4085,10 @@ module Aws::Kendra
3300
4085
  # by the relevance that Amazon Kendra determines for the result.
3301
4086
  # @return [Types::SortingConfiguration]
3302
4087
  #
4088
+ # @!attribute [rw] user_context
4089
+ # The user context token.
4090
+ # @return [Types::UserContext]
4091
+ #
3303
4092
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/QueryRequest AWS API Documentation
3304
4093
  #
3305
4094
  class QueryRequest < Struct.new(
@@ -3311,7 +4100,8 @@ module Aws::Kendra
3311
4100
  :query_result_type_filter,
3312
4101
  :page_number,
3313
4102
  :page_size,
3314
- :sorting_configuration)
4103
+ :sorting_configuration,
4104
+ :user_context)
3315
4105
  SENSITIVE = []
3316
4106
  include Aws::Structure
3317
4107
  end
@@ -3585,6 +4375,7 @@ module Aws::Kendra
3585
4375
  # {
3586
4376
  # bucket_name: "S3BucketName", # required
3587
4377
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
4378
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3588
4379
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3589
4380
  # documents_metadata_configuration: {
3590
4381
  # s3_prefix: "S3ObjectKey",
@@ -3603,10 +4394,23 @@ module Aws::Kendra
3603
4394
  # the index.
3604
4395
  # @return [Array<String>]
3605
4396
  #
4397
+ # @!attribute [rw] inclusion_patterns
4398
+ # A list of glob patterns for documents that should be indexed. If a
4399
+ # document that matches an inclusion pattern also matches an exclusion
4400
+ # pattern, the document is not indexed.
4401
+ #
4402
+ # For more information about glob patterns, see [glob
4403
+ # (programming)][1] in *Wikipedia*.
4404
+ #
4405
+ #
4406
+ #
4407
+ # [1]: https://en.wikipedia.org/wiki/Glob_(programming)
4408
+ # @return [Array<String>]
4409
+ #
3606
4410
  # @!attribute [rw] exclusion_patterns
3607
4411
  # 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.
4412
+ # a document that matches an inclusion prefix or inclusion pattern
4413
+ # also matches an exclusion pattern, the document is not indexed.
3610
4414
  #
3611
4415
  # For more information about glob patterns, see [glob
3612
4416
  # (programming)][1] in *Wikipedia*.
@@ -3633,6 +4437,7 @@ module Aws::Kendra
3633
4437
  class S3DataSourceConfiguration < Struct.new(
3634
4438
  :bucket_name,
3635
4439
  :inclusion_prefixes,
4440
+ :inclusion_patterns,
3636
4441
  :exclusion_patterns,
3637
4442
  :documents_metadata_configuration,
3638
4443
  :access_control_list_configuration)
@@ -4464,6 +5269,7 @@ module Aws::Kendra
4464
5269
  # },
4465
5270
  # ],
4466
5271
  # document_title_field_name: "DataSourceFieldName",
5272
+ # disable_local_groups: false,
4467
5273
  # }
4468
5274
  #
4469
5275
  # @!attribute [rw] share_point_version
@@ -4544,6 +5350,11 @@ module Aws::Kendra
4544
5350
  # the document.
4545
5351
  # @return [String]
4546
5352
  #
5353
+ # @!attribute [rw] disable_local_groups
5354
+ # A Boolean value that specifies whether local groups are disabled
5355
+ # (`True`) or enabled (`False`).
5356
+ # @return [Boolean]
5357
+ #
4547
5358
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SharePointConfiguration AWS API Documentation
4548
5359
  #
4549
5360
  class SharePointConfiguration < Struct.new(
@@ -4556,7 +5367,8 @@ module Aws::Kendra
4556
5367
  :exclusion_patterns,
4557
5368
  :vpc_configuration,
4558
5369
  :field_mappings,
4559
- :document_title_field_name)
5370
+ :document_title_field_name,
5371
+ :disable_local_groups)
4560
5372
  SENSITIVE = []
4561
5373
  include Aws::Structure
4562
5374
  end
@@ -4954,6 +5766,7 @@ module Aws::Kendra
4954
5766
  # s3_configuration: {
4955
5767
  # bucket_name: "S3BucketName", # required
4956
5768
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
5769
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4957
5770
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4958
5771
  # documents_metadata_configuration: {
4959
5772
  # s3_prefix: "S3ObjectKey",
@@ -4982,6 +5795,7 @@ module Aws::Kendra
4982
5795
  # },
4983
5796
  # ],
4984
5797
  # document_title_field_name: "DataSourceFieldName",
5798
+ # disable_local_groups: false,
4985
5799
  # },
4986
5800
  # database_configuration: {
4987
5801
  # database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
@@ -5106,6 +5920,7 @@ module Aws::Kendra
5106
5920
  # index_field_name: "IndexFieldName", # required
5107
5921
  # },
5108
5922
  # ],
5923
+ # disable_local_groups: false,
5109
5924
  # },
5110
5925
  # service_now_configuration: {
5111
5926
  # host_url: "ServiceNowHostUrl", # required
@@ -5140,6 +5955,58 @@ module Aws::Kendra
5140
5955
  # ],
5141
5956
  # },
5142
5957
  # },
5958
+ # confluence_configuration: {
5959
+ # server_url: "Url", # required
5960
+ # secret_arn: "SecretArn", # required
5961
+ # version: "CLOUD", # required, accepts CLOUD, SERVER
5962
+ # space_configuration: {
5963
+ # crawl_personal_spaces: false,
5964
+ # crawl_archived_spaces: false,
5965
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
5966
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
5967
+ # space_field_mappings: [
5968
+ # {
5969
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
5970
+ # date_field_format: "DataSourceDateFieldFormat",
5971
+ # index_field_name: "IndexFieldName",
5972
+ # },
5973
+ # ],
5974
+ # },
5975
+ # page_configuration: {
5976
+ # page_field_mappings: [
5977
+ # {
5978
+ # 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
5979
+ # date_field_format: "DataSourceDateFieldFormat",
5980
+ # index_field_name: "IndexFieldName",
5981
+ # },
5982
+ # ],
5983
+ # },
5984
+ # blog_configuration: {
5985
+ # blog_field_mappings: [
5986
+ # {
5987
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
5988
+ # date_field_format: "DataSourceDateFieldFormat",
5989
+ # index_field_name: "IndexFieldName",
5990
+ # },
5991
+ # ],
5992
+ # },
5993
+ # attachment_configuration: {
5994
+ # crawl_attachments: false,
5995
+ # attachment_field_mappings: [
5996
+ # {
5997
+ # 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
5998
+ # date_field_format: "DataSourceDateFieldFormat",
5999
+ # index_field_name: "IndexFieldName",
6000
+ # },
6001
+ # ],
6002
+ # },
6003
+ # vpc_configuration: {
6004
+ # subnet_ids: ["SubnetId"], # required
6005
+ # security_group_ids: ["VpcSecurityGroupId"], # required
6006
+ # },
6007
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
6008
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
6009
+ # },
5143
6010
  # },
5144
6011
  # description: "Description",
5145
6012
  # schedule: "ScanSchedule",
@@ -5224,6 +6091,24 @@ module Aws::Kendra
5224
6091
  # storage_capacity_units: 1, # required
5225
6092
  # query_capacity_units: 1, # required
5226
6093
  # },
6094
+ # user_token_configurations: [
6095
+ # {
6096
+ # jwt_token_type_configuration: {
6097
+ # key_location: "URL", # required, accepts URL, SECRET_MANAGER
6098
+ # url: "Url",
6099
+ # secret_manager_arn: "RoleArn",
6100
+ # user_name_attribute_field: "UserNameAttributeField",
6101
+ # group_attribute_field: "GroupAttributeField",
6102
+ # issuer: "Issuer",
6103
+ # claim_regex: "ClaimRegex",
6104
+ # },
6105
+ # json_token_type_configuration: {
6106
+ # user_name_attribute_field: "String", # required
6107
+ # group_attribute_field: "String", # required
6108
+ # },
6109
+ # },
6110
+ # ],
6111
+ # user_context_policy: "ATTRIBUTE_FILTER", # accepts ATTRIBUTE_FILTER, USER_TOKEN
5227
6112
  # }
5228
6113
  #
5229
6114
  # @!attribute [rw] id
@@ -5257,6 +6142,14 @@ module Aws::Kendra
5257
6142
  # index.
5258
6143
  # @return [Types::CapacityUnitsConfiguration]
5259
6144
  #
6145
+ # @!attribute [rw] user_token_configurations
6146
+ # The user token configuration.
6147
+ # @return [Array<Types::UserTokenConfiguration>]
6148
+ #
6149
+ # @!attribute [rw] user_context_policy
6150
+ # The user user token context policy.
6151
+ # @return [String]
6152
+ #
5260
6153
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UpdateIndexRequest AWS API Documentation
5261
6154
  #
5262
6155
  class UpdateIndexRequest < Struct.new(
@@ -5265,7 +6158,68 @@ module Aws::Kendra
5265
6158
  :role_arn,
5266
6159
  :description,
5267
6160
  :document_metadata_configuration_updates,
5268
- :capacity_units)
6161
+ :capacity_units,
6162
+ :user_token_configurations,
6163
+ :user_context_policy)
6164
+ SENSITIVE = []
6165
+ include Aws::Structure
6166
+ end
6167
+
6168
+ # Provides information about the user context for a Amazon Kendra index.
6169
+ #
6170
+ # @note When making an API call, you may pass UserContext
6171
+ # data as a hash:
6172
+ #
6173
+ # {
6174
+ # token: "Token",
6175
+ # }
6176
+ #
6177
+ # @!attribute [rw] token
6178
+ # The user context token. It must be a JWT or a JSON token.
6179
+ # @return [String]
6180
+ #
6181
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UserContext AWS API Documentation
6182
+ #
6183
+ class UserContext < Struct.new(
6184
+ :token)
6185
+ SENSITIVE = []
6186
+ include Aws::Structure
6187
+ end
6188
+
6189
+ # Provides configuration information for a token configuration.
6190
+ #
6191
+ # @note When making an API call, you may pass UserTokenConfiguration
6192
+ # data as a hash:
6193
+ #
6194
+ # {
6195
+ # jwt_token_type_configuration: {
6196
+ # key_location: "URL", # required, accepts URL, SECRET_MANAGER
6197
+ # url: "Url",
6198
+ # secret_manager_arn: "RoleArn",
6199
+ # user_name_attribute_field: "UserNameAttributeField",
6200
+ # group_attribute_field: "GroupAttributeField",
6201
+ # issuer: "Issuer",
6202
+ # claim_regex: "ClaimRegex",
6203
+ # },
6204
+ # json_token_type_configuration: {
6205
+ # user_name_attribute_field: "String", # required
6206
+ # group_attribute_field: "String", # required
6207
+ # },
6208
+ # }
6209
+ #
6210
+ # @!attribute [rw] jwt_token_type_configuration
6211
+ # Information about the JWT token type configuration.
6212
+ # @return [Types::JwtTokenTypeConfiguration]
6213
+ #
6214
+ # @!attribute [rw] json_token_type_configuration
6215
+ # Information about the JSON token type configuration.
6216
+ # @return [Types::JsonTokenTypeConfiguration]
6217
+ #
6218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UserTokenConfiguration AWS API Documentation
6219
+ #
6220
+ class UserTokenConfiguration < Struct.new(
6221
+ :jwt_token_type_configuration,
6222
+ :json_token_type_configuration)
5269
6223
  SENSITIVE = []
5270
6224
  include Aws::Structure
5271
6225
  end