aws-sdk-kendra 1.4.0 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -62,13 +62,18 @@ module Aws::Kendra
62
62
  include Aws::Structure
63
63
  end
64
64
 
65
+ # An attribute returned from an index query.
66
+ #
65
67
  # @!attribute [rw] key
68
+ # The key that identifies the attribute.
66
69
  # @return [String]
67
70
  #
68
71
  # @!attribute [rw] value_type
72
+ # The data type of the `Value` property.
69
73
  # @return [String]
70
74
  #
71
75
  # @!attribute [rw] value
76
+ # An object that contains the attribute value.
72
77
  # @return [Types::AdditionalResultAttributeValue]
73
78
  #
74
79
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/AdditionalResultAttribute AWS API Documentation
@@ -97,13 +102,18 @@ module Aws::Kendra
97
102
  # Provides filtering the query results based on document attributes.
98
103
  #
99
104
  # When you use the `AndAllFilters` or `OrAllFilters`, filters you can
100
- # use a total of 3 layers. For example, you can use:
105
+ # use 2 layers under the first attribute filter. For example, you can
106
+ # use:
107
+ #
108
+ # `<AndAllFilters>`
101
109
  #
102
- # 1. `<AndAllFilters>`
110
+ # 1. ` <OrAllFilters>`
103
111
  #
104
- # 2. ` <OrAllFilters>`
112
+ # 2. ` <EqualTo>`
105
113
  #
106
- # 3. ` <EqualTo>`
114
+ # If you use more than 2 layers, you receive a `ValidationException`
115
+ # exception with the message "`AttributeFilter` cannot have a depth of
116
+ # more than 2."
107
117
  #
108
118
  # @note When making an API call, you may pass AttributeFilter
109
119
  # data as a hash:
@@ -422,12 +432,14 @@ module Aws::Kendra
422
432
  #
423
433
  # @!attribute [rw] contains_all
424
434
  # Returns true when a document contains all of the specified document
425
- # attributes.
435
+ # attributes. This filter is only appicable to `StringListValue`
436
+ # metadata.
426
437
  # @return [Types::DocumentAttribute]
427
438
  #
428
439
  # @!attribute [rw] contains_any
429
440
  # Returns true when a document contains any of the specified document
430
- # attributes.
441
+ # attributes.This filter is only appicable to `StringListValue`
442
+ # metadata.
431
443
  # @return [Types::DocumentAttribute]
432
444
  #
433
445
  # @!attribute [rw] greater_than
@@ -473,6 +485,10 @@ module Aws::Kendra
473
485
  # {
474
486
  # index_id: "IndexId", # required
475
487
  # document_id_list: ["DocumentId"], # required
488
+ # data_source_sync_job_metric_target: {
489
+ # data_source_id: "DataSourceId", # required
490
+ # data_source_sync_job_id: "DataSourceSyncJobId", # required
491
+ # },
476
492
  # }
477
493
  #
478
494
  # @!attribute [rw] index_id
@@ -483,11 +499,16 @@ module Aws::Kendra
483
499
  # One or more identifiers for documents to delete from the index.
484
500
  # @return [Array<String>]
485
501
  #
502
+ # @!attribute [rw] data_source_sync_job_metric_target
503
+ # Maps a particular data source sync job to a particular data source.
504
+ # @return [Types::DataSourceSyncJobMetricTarget]
505
+ #
486
506
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/BatchDeleteDocumentRequest AWS API Documentation
487
507
  #
488
508
  class BatchDeleteDocumentRequest < Struct.new(
489
509
  :index_id,
490
- :document_id_list)
510
+ :document_id_list,
511
+ :data_source_sync_job_metric_target)
491
512
  include Aws::Structure
492
513
  end
493
514
 
@@ -587,8 +608,20 @@ module Aws::Kendra
587
608
  # @!attribute [rw] documents
588
609
  # One or more documents to add to the index.
589
610
  #
590
- # Each document is limited to 5 Mb, the total size of the list is
591
- # limited to 50 Mb.
611
+ # Documents have the following file size limits.
612
+ #
613
+ # * 5 MB total size for inline documents
614
+ #
615
+ # * 50 MB total size for files from an S3 bucket
616
+ #
617
+ # * 5 MB extracted text for any file
618
+ #
619
+ # For more information about file size and transaction per second
620
+ # quotas, see [Quotas][1].
621
+ #
622
+ #
623
+ #
624
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/quotas.html
592
625
  # @return [Array<Types::Document>]
593
626
  #
594
627
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/BatchPutDocumentRequest AWS API Documentation
@@ -607,7 +640,12 @@ module Aws::Kendra
607
640
  # index.
608
641
  #
609
642
  # If there was an error adding a document to an index the error is
610
- # reported in your AWS CloudWatch log.
643
+ # reported in your AWS CloudWatch log. For more information, see
644
+ # [Monitoring Amazon Kendra with Amazon CloudWatch Logs][1]
645
+ #
646
+ #
647
+ #
648
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/cloudwatch-logs.html
611
649
  # @return [Array<Types::BatchPutDocumentResponseFailedDocument>]
612
650
  #
613
651
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/BatchPutDocumentResponse AWS API Documentation
@@ -640,6 +678,36 @@ module Aws::Kendra
640
678
  include Aws::Structure
641
679
  end
642
680
 
681
+ # Specifies capacity units configured for your index. You can add and
682
+ # remove capacity units to tune an index to your requirements.
683
+ #
684
+ # @note When making an API call, you may pass CapacityUnitsConfiguration
685
+ # data as a hash:
686
+ #
687
+ # {
688
+ # storage_capacity_units: 1, # required
689
+ # query_capacity_units: 1, # required
690
+ # }
691
+ #
692
+ # @!attribute [rw] storage_capacity_units
693
+ # The amount of extra storage capacity for an index. Each capacity
694
+ # unit provides 150 Gb of storage space or 500,000 documents,
695
+ # whichever is reached first.
696
+ # @return [Integer]
697
+ #
698
+ # @!attribute [rw] query_capacity_units
699
+ # The amount of extra query capacity for an index. Each capacity unit
700
+ # provides 0.5 queries per second and 40,000 queries per day.
701
+ # @return [Integer]
702
+ #
703
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CapacityUnitsConfiguration AWS API Documentation
704
+ #
705
+ class CapacityUnitsConfiguration < Struct.new(
706
+ :storage_capacity_units,
707
+ :query_capacity_units)
708
+ include Aws::Structure
709
+ end
710
+
643
711
  # Gathers information about when a particular result was clicked by a
644
712
  # user. Your application uses the SubmitFeedback operation to provide
645
713
  # click information.
@@ -657,7 +725,7 @@ module Aws::Kendra
657
725
  # @return [String]
658
726
  #
659
727
  # @!attribute [rw] click_time
660
- # The Unix timestamp of the data and time that the result was clicked.
728
+ # The Unix timestamp of the date and time that the result was clicked.
661
729
  # @return [Time]
662
730
  #
663
731
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ClickFeedback AWS API Documentation
@@ -792,7 +860,7 @@ module Aws::Kendra
792
860
  # {
793
861
  # name: "DataSourceName", # required
794
862
  # index_id: "IndexId", # required
795
- # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE
863
+ # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW
796
864
  # configuration: { # required
797
865
  # s3_configuration: {
798
866
  # bucket_name: "S3BucketName", # required
@@ -856,10 +924,140 @@ module Aws::Kendra
856
924
  # allowed_groups_column_name: "ColumnName", # required
857
925
  # },
858
926
  # },
927
+ # salesforce_configuration: {
928
+ # server_url: "Url", # required
929
+ # secret_arn: "SecretArn", # required
930
+ # standard_object_configurations: [
931
+ # {
932
+ # name: "ACCOUNT", # required, accepts ACCOUNT, CAMPAIGN, CASE, CONTACT, CONTRACT, DOCUMENT, GROUP, IDEA, LEAD, OPPORTUNITY, PARTNER, PRICEBOOK, PRODUCT, PROFILE, SOLUTION, TASK, USER
933
+ # document_data_field_name: "DataSourceFieldName", # required
934
+ # document_title_field_name: "DataSourceFieldName",
935
+ # field_mappings: [
936
+ # {
937
+ # data_source_field_name: "DataSourceFieldName", # required
938
+ # date_field_format: "DataSourceDateFieldFormat",
939
+ # index_field_name: "IndexFieldName", # required
940
+ # },
941
+ # ],
942
+ # },
943
+ # ],
944
+ # knowledge_article_configuration: {
945
+ # included_states: ["DRAFT"], # required, accepts DRAFT, PUBLISHED, ARCHIVED
946
+ # standard_knowledge_article_type_configuration: {
947
+ # document_data_field_name: "DataSourceFieldName", # required
948
+ # document_title_field_name: "DataSourceFieldName",
949
+ # field_mappings: [
950
+ # {
951
+ # data_source_field_name: "DataSourceFieldName", # required
952
+ # date_field_format: "DataSourceDateFieldFormat",
953
+ # index_field_name: "IndexFieldName", # required
954
+ # },
955
+ # ],
956
+ # },
957
+ # custom_knowledge_article_type_configurations: [
958
+ # {
959
+ # name: "SalesforceCustomKnowledgeArticleTypeName", # required
960
+ # document_data_field_name: "DataSourceFieldName", # required
961
+ # document_title_field_name: "DataSourceFieldName",
962
+ # field_mappings: [
963
+ # {
964
+ # data_source_field_name: "DataSourceFieldName", # required
965
+ # date_field_format: "DataSourceDateFieldFormat",
966
+ # index_field_name: "IndexFieldName", # required
967
+ # },
968
+ # ],
969
+ # },
970
+ # ],
971
+ # },
972
+ # chatter_feed_configuration: {
973
+ # document_data_field_name: "DataSourceFieldName", # required
974
+ # document_title_field_name: "DataSourceFieldName",
975
+ # field_mappings: [
976
+ # {
977
+ # data_source_field_name: "DataSourceFieldName", # required
978
+ # date_field_format: "DataSourceDateFieldFormat",
979
+ # index_field_name: "IndexFieldName", # required
980
+ # },
981
+ # ],
982
+ # include_filter_types: ["ACTIVE_USER"], # accepts ACTIVE_USER, STANDARD_USER
983
+ # },
984
+ # crawl_attachments: false,
985
+ # standard_object_attachment_configuration: {
986
+ # document_title_field_name: "DataSourceFieldName",
987
+ # field_mappings: [
988
+ # {
989
+ # data_source_field_name: "DataSourceFieldName", # required
990
+ # date_field_format: "DataSourceDateFieldFormat",
991
+ # index_field_name: "IndexFieldName", # required
992
+ # },
993
+ # ],
994
+ # },
995
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
996
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
997
+ # },
998
+ # one_drive_configuration: {
999
+ # tenant_domain: "TenantDomain", # required
1000
+ # secret_arn: "SecretArn", # required
1001
+ # one_drive_users: { # required
1002
+ # one_drive_user_list: ["OneDriveUser"],
1003
+ # one_drive_user_s3_path: {
1004
+ # bucket: "S3BucketName", # required
1005
+ # key: "S3ObjectKey", # required
1006
+ # },
1007
+ # },
1008
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1009
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1010
+ # field_mappings: [
1011
+ # {
1012
+ # data_source_field_name: "DataSourceFieldName", # required
1013
+ # date_field_format: "DataSourceDateFieldFormat",
1014
+ # index_field_name: "IndexFieldName", # required
1015
+ # },
1016
+ # ],
1017
+ # },
1018
+ # service_now_configuration: {
1019
+ # host_url: "ServiceNowHostUrl", # required
1020
+ # secret_arn: "SecretArn", # required
1021
+ # service_now_build_version: "LONDON", # required, accepts LONDON, OTHERS
1022
+ # knowledge_article_configuration: {
1023
+ # crawl_attachments: false,
1024
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1025
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1026
+ # document_data_field_name: "DataSourceFieldName", # required
1027
+ # document_title_field_name: "DataSourceFieldName",
1028
+ # field_mappings: [
1029
+ # {
1030
+ # data_source_field_name: "DataSourceFieldName", # required
1031
+ # date_field_format: "DataSourceDateFieldFormat",
1032
+ # index_field_name: "IndexFieldName", # required
1033
+ # },
1034
+ # ],
1035
+ # },
1036
+ # service_catalog_configuration: {
1037
+ # crawl_attachments: false,
1038
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1039
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1040
+ # document_data_field_name: "DataSourceFieldName", # required
1041
+ # document_title_field_name: "DataSourceFieldName",
1042
+ # field_mappings: [
1043
+ # {
1044
+ # data_source_field_name: "DataSourceFieldName", # required
1045
+ # date_field_format: "DataSourceDateFieldFormat",
1046
+ # index_field_name: "IndexFieldName", # required
1047
+ # },
1048
+ # ],
1049
+ # },
1050
+ # },
859
1051
  # },
860
1052
  # description: "Description",
861
1053
  # schedule: "ScanSchedule",
862
1054
  # role_arn: "RoleArn", # required
1055
+ # tags: [
1056
+ # {
1057
+ # key: "TagKey", # required
1058
+ # value: "TagValue", # required
1059
+ # },
1060
+ # ],
863
1061
  # }
864
1062
  #
865
1063
  # @!attribute [rw] name
@@ -902,6 +1100,12 @@ module Aws::Kendra
902
1100
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
903
1101
  # @return [String]
904
1102
  #
1103
+ # @!attribute [rw] tags
1104
+ # A list of key-value pairs that identify the data source. You can use
1105
+ # the tags to identify and organize your resources and to control
1106
+ # access to resources.
1107
+ # @return [Array<Types::Tag>]
1108
+ #
905
1109
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateDataSourceRequest AWS API Documentation
906
1110
  #
907
1111
  class CreateDataSourceRequest < Struct.new(
@@ -911,7 +1115,8 @@ module Aws::Kendra
911
1115
  :configuration,
912
1116
  :description,
913
1117
  :schedule,
914
- :role_arn)
1118
+ :role_arn,
1119
+ :tags)
915
1120
  include Aws::Structure
916
1121
  end
917
1122
 
@@ -938,6 +1143,12 @@ module Aws::Kendra
938
1143
  # key: "S3ObjectKey", # required
939
1144
  # },
940
1145
  # role_arn: "RoleArn", # required
1146
+ # tags: [
1147
+ # {
1148
+ # key: "TagKey", # required
1149
+ # value: "TagValue", # required
1150
+ # },
1151
+ # ],
941
1152
  # }
942
1153
  #
943
1154
  # @!attribute [rw] index_id
@@ -966,6 +1177,12 @@ module Aws::Kendra
966
1177
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
967
1178
  # @return [String]
968
1179
  #
1180
+ # @!attribute [rw] tags
1181
+ # A list of key-value pairs that identify the FAQ. You can use the
1182
+ # tags to identify and organize your resources and to control access
1183
+ # to resources.
1184
+ # @return [Array<Types::Tag>]
1185
+ #
969
1186
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateFaqRequest AWS API Documentation
970
1187
  #
971
1188
  class CreateFaqRequest < Struct.new(
@@ -973,7 +1190,8 @@ module Aws::Kendra
973
1190
  :name,
974
1191
  :description,
975
1192
  :s3_path,
976
- :role_arn)
1193
+ :role_arn,
1194
+ :tags)
977
1195
  include Aws::Structure
978
1196
  end
979
1197
 
@@ -993,18 +1211,33 @@ module Aws::Kendra
993
1211
  #
994
1212
  # {
995
1213
  # name: "IndexName", # required
1214
+ # edition: "DEVELOPER_EDITION", # accepts DEVELOPER_EDITION, ENTERPRISE_EDITION
996
1215
  # role_arn: "RoleArn", # required
997
1216
  # server_side_encryption_configuration: {
998
1217
  # kms_key_id: "KmsKeyId",
999
1218
  # },
1000
1219
  # description: "Description",
1001
1220
  # client_token: "ClientTokenName",
1221
+ # tags: [
1222
+ # {
1223
+ # key: "TagKey", # required
1224
+ # value: "TagValue", # required
1225
+ # },
1226
+ # ],
1002
1227
  # }
1003
1228
  #
1004
1229
  # @!attribute [rw] name
1005
1230
  # The name for the new index.
1006
1231
  # @return [String]
1007
1232
  #
1233
+ # @!attribute [rw] edition
1234
+ # The Amazon Kendra edition to use for the index. Choose
1235
+ # `DEVELOPER_EDITION` for indexes intended for development, testing,
1236
+ # or proof of concept. Use `ENTERPRISE_EDITION` for your production
1237
+ # databases. Once you set the edition for an index, it can't be
1238
+ # changed.
1239
+ # @return [String]
1240
+ #
1008
1241
  # @!attribute [rw] role_arn
1009
1242
  # An IAM role that gives Amazon Kendra permissions to access your
1010
1243
  # Amazon CloudWatch logs and metrics. This is also the role used when
@@ -1031,14 +1264,22 @@ module Aws::Kendra
1031
1264
  # not need to pass this option.
1032
1265
  # @return [String]
1033
1266
  #
1267
+ # @!attribute [rw] tags
1268
+ # A list of key-value pairs that identify the index. You can use the
1269
+ # tags to identify and organize your resources and to control access
1270
+ # to resources.
1271
+ # @return [Array<Types::Tag>]
1272
+ #
1034
1273
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateIndexRequest AWS API Documentation
1035
1274
  #
1036
1275
  class CreateIndexRequest < Struct.new(
1037
1276
  :name,
1277
+ :edition,
1038
1278
  :role_arn,
1039
1279
  :server_side_encryption_configuration,
1040
1280
  :description,
1041
- :client_token)
1281
+ :client_token,
1282
+ :tags)
1042
1283
  include Aws::Structure
1043
1284
  end
1044
1285
 
@@ -1122,6 +1363,130 @@ module Aws::Kendra
1122
1363
  # allowed_groups_column_name: "ColumnName", # required
1123
1364
  # },
1124
1365
  # },
1366
+ # salesforce_configuration: {
1367
+ # server_url: "Url", # required
1368
+ # secret_arn: "SecretArn", # required
1369
+ # standard_object_configurations: [
1370
+ # {
1371
+ # name: "ACCOUNT", # required, accepts ACCOUNT, CAMPAIGN, CASE, CONTACT, CONTRACT, DOCUMENT, GROUP, IDEA, LEAD, OPPORTUNITY, PARTNER, PRICEBOOK, PRODUCT, PROFILE, SOLUTION, TASK, USER
1372
+ # document_data_field_name: "DataSourceFieldName", # required
1373
+ # document_title_field_name: "DataSourceFieldName",
1374
+ # field_mappings: [
1375
+ # {
1376
+ # data_source_field_name: "DataSourceFieldName", # required
1377
+ # date_field_format: "DataSourceDateFieldFormat",
1378
+ # index_field_name: "IndexFieldName", # required
1379
+ # },
1380
+ # ],
1381
+ # },
1382
+ # ],
1383
+ # knowledge_article_configuration: {
1384
+ # included_states: ["DRAFT"], # required, accepts DRAFT, PUBLISHED, ARCHIVED
1385
+ # standard_knowledge_article_type_configuration: {
1386
+ # document_data_field_name: "DataSourceFieldName", # required
1387
+ # document_title_field_name: "DataSourceFieldName",
1388
+ # field_mappings: [
1389
+ # {
1390
+ # data_source_field_name: "DataSourceFieldName", # required
1391
+ # date_field_format: "DataSourceDateFieldFormat",
1392
+ # index_field_name: "IndexFieldName", # required
1393
+ # },
1394
+ # ],
1395
+ # },
1396
+ # custom_knowledge_article_type_configurations: [
1397
+ # {
1398
+ # name: "SalesforceCustomKnowledgeArticleTypeName", # required
1399
+ # document_data_field_name: "DataSourceFieldName", # required
1400
+ # document_title_field_name: "DataSourceFieldName",
1401
+ # field_mappings: [
1402
+ # {
1403
+ # data_source_field_name: "DataSourceFieldName", # required
1404
+ # date_field_format: "DataSourceDateFieldFormat",
1405
+ # index_field_name: "IndexFieldName", # required
1406
+ # },
1407
+ # ],
1408
+ # },
1409
+ # ],
1410
+ # },
1411
+ # chatter_feed_configuration: {
1412
+ # document_data_field_name: "DataSourceFieldName", # required
1413
+ # document_title_field_name: "DataSourceFieldName",
1414
+ # field_mappings: [
1415
+ # {
1416
+ # data_source_field_name: "DataSourceFieldName", # required
1417
+ # date_field_format: "DataSourceDateFieldFormat",
1418
+ # index_field_name: "IndexFieldName", # required
1419
+ # },
1420
+ # ],
1421
+ # include_filter_types: ["ACTIVE_USER"], # accepts ACTIVE_USER, STANDARD_USER
1422
+ # },
1423
+ # crawl_attachments: false,
1424
+ # standard_object_attachment_configuration: {
1425
+ # document_title_field_name: "DataSourceFieldName",
1426
+ # field_mappings: [
1427
+ # {
1428
+ # data_source_field_name: "DataSourceFieldName", # required
1429
+ # date_field_format: "DataSourceDateFieldFormat",
1430
+ # index_field_name: "IndexFieldName", # required
1431
+ # },
1432
+ # ],
1433
+ # },
1434
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1435
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1436
+ # },
1437
+ # one_drive_configuration: {
1438
+ # tenant_domain: "TenantDomain", # required
1439
+ # secret_arn: "SecretArn", # required
1440
+ # one_drive_users: { # required
1441
+ # one_drive_user_list: ["OneDriveUser"],
1442
+ # one_drive_user_s3_path: {
1443
+ # bucket: "S3BucketName", # required
1444
+ # key: "S3ObjectKey", # required
1445
+ # },
1446
+ # },
1447
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1448
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1449
+ # field_mappings: [
1450
+ # {
1451
+ # data_source_field_name: "DataSourceFieldName", # required
1452
+ # date_field_format: "DataSourceDateFieldFormat",
1453
+ # index_field_name: "IndexFieldName", # required
1454
+ # },
1455
+ # ],
1456
+ # },
1457
+ # service_now_configuration: {
1458
+ # host_url: "ServiceNowHostUrl", # required
1459
+ # secret_arn: "SecretArn", # required
1460
+ # service_now_build_version: "LONDON", # required, accepts LONDON, OTHERS
1461
+ # knowledge_article_configuration: {
1462
+ # crawl_attachments: false,
1463
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1464
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1465
+ # document_data_field_name: "DataSourceFieldName", # required
1466
+ # document_title_field_name: "DataSourceFieldName",
1467
+ # field_mappings: [
1468
+ # {
1469
+ # data_source_field_name: "DataSourceFieldName", # required
1470
+ # date_field_format: "DataSourceDateFieldFormat",
1471
+ # index_field_name: "IndexFieldName", # required
1472
+ # },
1473
+ # ],
1474
+ # },
1475
+ # service_catalog_configuration: {
1476
+ # crawl_attachments: false,
1477
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1478
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1479
+ # document_data_field_name: "DataSourceFieldName", # required
1480
+ # document_title_field_name: "DataSourceFieldName",
1481
+ # field_mappings: [
1482
+ # {
1483
+ # data_source_field_name: "DataSourceFieldName", # required
1484
+ # date_field_format: "DataSourceDateFieldFormat",
1485
+ # index_field_name: "IndexFieldName", # required
1486
+ # },
1487
+ # ],
1488
+ # },
1489
+ # },
1125
1490
  # }
1126
1491
  #
1127
1492
  # @!attribute [rw] s3_configuration
@@ -1138,12 +1503,30 @@ module Aws::Kendra
1138
1503
  # Provides information necessary to create a connector for a database.
1139
1504
  # @return [Types::DatabaseConfiguration]
1140
1505
  #
1506
+ # @!attribute [rw] salesforce_configuration
1507
+ # Provides configuration information for data sources that connect to
1508
+ # a Salesforce site.
1509
+ # @return [Types::SalesforceConfiguration]
1510
+ #
1511
+ # @!attribute [rw] one_drive_configuration
1512
+ # Provided configuration for data sources that connect to Microsoft
1513
+ # OneDrive.
1514
+ # @return [Types::OneDriveConfiguration]
1515
+ #
1516
+ # @!attribute [rw] service_now_configuration
1517
+ # Provides configuration for data sources that connect to ServiceNow
1518
+ # instances.
1519
+ # @return [Types::ServiceNowConfiguration]
1520
+ #
1141
1521
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DataSourceConfiguration AWS API Documentation
1142
1522
  #
1143
1523
  class DataSourceConfiguration < Struct.new(
1144
1524
  :s3_configuration,
1145
1525
  :share_point_configuration,
1146
- :database_configuration)
1526
+ :database_configuration,
1527
+ :salesforce_configuration,
1528
+ :one_drive_configuration,
1529
+ :service_now_configuration)
1147
1530
  include Aws::Structure
1148
1531
  end
1149
1532
 
@@ -1225,6 +1608,12 @@ module Aws::Kendra
1225
1608
  # identifies the error.
1226
1609
  # @return [String]
1227
1610
  #
1611
+ # @!attribute [rw] metrics
1612
+ # Maps a batch delete document request to a specific data source sync
1613
+ # job. This is optional and should only be supplied when documents are
1614
+ # deleted by a connector.
1615
+ # @return [Types::DataSourceSyncJobMetrics]
1616
+ #
1228
1617
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DataSourceSyncJob AWS API Documentation
1229
1618
  #
1230
1619
  class DataSourceSyncJob < Struct.new(
@@ -1234,7 +1623,74 @@ module Aws::Kendra
1234
1623
  :status,
1235
1624
  :error_message,
1236
1625
  :error_code,
1237
- :data_source_error_code)
1626
+ :data_source_error_code,
1627
+ :metrics)
1628
+ include Aws::Structure
1629
+ end
1630
+
1631
+ # Maps a particular data source sync job to a particular data source.
1632
+ #
1633
+ # @note When making an API call, you may pass DataSourceSyncJobMetricTarget
1634
+ # data as a hash:
1635
+ #
1636
+ # {
1637
+ # data_source_id: "DataSourceId", # required
1638
+ # data_source_sync_job_id: "DataSourceSyncJobId", # required
1639
+ # }
1640
+ #
1641
+ # @!attribute [rw] data_source_id
1642
+ # The ID of the data source that is running the sync job.
1643
+ # @return [String]
1644
+ #
1645
+ # @!attribute [rw] data_source_sync_job_id
1646
+ # The ID of the sync job that is running on the data source.
1647
+ # @return [String]
1648
+ #
1649
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DataSourceSyncJobMetricTarget AWS API Documentation
1650
+ #
1651
+ class DataSourceSyncJobMetricTarget < Struct.new(
1652
+ :data_source_id,
1653
+ :data_source_sync_job_id)
1654
+ include Aws::Structure
1655
+ end
1656
+
1657
+ # Maps a batch delete document request to a specific data source sync
1658
+ # job. This is optional and should only be supplied when documents are
1659
+ # deleted by a connector.
1660
+ #
1661
+ # @!attribute [rw] documents_added
1662
+ # The number of documents added from the data source up to now in the
1663
+ # data source sync.
1664
+ # @return [String]
1665
+ #
1666
+ # @!attribute [rw] documents_modified
1667
+ # The number of documents modified in the data source up to now in the
1668
+ # data source sync run.
1669
+ # @return [String]
1670
+ #
1671
+ # @!attribute [rw] documents_deleted
1672
+ # The number of documents deleted from the data source up to now in
1673
+ # the data source sync run.
1674
+ # @return [String]
1675
+ #
1676
+ # @!attribute [rw] documents_failed
1677
+ # The number of documents that failed to sync from the data source up
1678
+ # to now in the data source sync run.
1679
+ # @return [String]
1680
+ #
1681
+ # @!attribute [rw] documents_scanned
1682
+ # The current number of documents crawled by the current sync job in
1683
+ # the data source.
1684
+ # @return [String]
1685
+ #
1686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DataSourceSyncJobMetrics AWS API Documentation
1687
+ #
1688
+ class DataSourceSyncJobMetrics < Struct.new(
1689
+ :documents_added,
1690
+ :documents_modified,
1691
+ :documents_deleted,
1692
+ :documents_failed,
1693
+ :documents_scanned)
1238
1694
  include Aws::Structure
1239
1695
  end
1240
1696
 
@@ -1371,6 +1827,30 @@ module Aws::Kendra
1371
1827
  include Aws::Structure
1372
1828
  end
1373
1829
 
1830
+ # @note When making an API call, you may pass DeleteDataSourceRequest
1831
+ # data as a hash:
1832
+ #
1833
+ # {
1834
+ # id: "DataSourceId", # required
1835
+ # index_id: "IndexId", # required
1836
+ # }
1837
+ #
1838
+ # @!attribute [rw] id
1839
+ # The unique identifier of the data source to delete.
1840
+ # @return [String]
1841
+ #
1842
+ # @!attribute [rw] index_id
1843
+ # The unique identifier of the index associated with the data source.
1844
+ # @return [String]
1845
+ #
1846
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DeleteDataSourceRequest AWS API Documentation
1847
+ #
1848
+ class DeleteDataSourceRequest < Struct.new(
1849
+ :id,
1850
+ :index_id)
1851
+ include Aws::Structure
1852
+ end
1853
+
1374
1854
  # @note When making an API call, you may pass DeleteFaqRequest
1375
1855
  # data as a hash:
1376
1856
  #
@@ -1620,6 +2100,11 @@ module Aws::Kendra
1620
2100
  # the name of the index.
1621
2101
  # @return [String]
1622
2102
  #
2103
+ # @!attribute [rw] edition
2104
+ # The Amazon Kendra edition used for the index. You decide the edition
2105
+ # when you create the index.
2106
+ # @return [String]
2107
+ #
1623
2108
  # @!attribute [rw] role_arn
1624
2109
  # The Amazon Resource Name (ARN) of the IAM role that gives Amazon
1625
2110
  # Kendra permission to write to your Amazon Cloudwatch logs.
@@ -1663,11 +2148,20 @@ module Aws::Kendra
1663
2148
  # contains a message that explains why.
1664
2149
  # @return [String]
1665
2150
  #
2151
+ # @!attribute [rw] capacity_units
2152
+ # For enterprise edtion indexes, you can choose to use additional
2153
+ # capacity to meet the needs of your application. This contains the
2154
+ # capacity units used for the index. A 0 for the query capacity or the
2155
+ # storage capacity indicates that the index is using the default
2156
+ # capacity for the index.
2157
+ # @return [Types::CapacityUnitsConfiguration]
2158
+ #
1666
2159
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeIndexResponse AWS API Documentation
1667
2160
  #
1668
2161
  class DescribeIndexResponse < Struct.new(
1669
2162
  :name,
1670
2163
  :id,
2164
+ :edition,
1671
2165
  :role_arn,
1672
2166
  :server_side_encryption_configuration,
1673
2167
  :status,
@@ -1676,7 +2170,8 @@ module Aws::Kendra
1676
2170
  :updated_at,
1677
2171
  :document_metadata_configurations,
1678
2172
  :index_statistics,
1679
- :error_message)
2173
+ :error_message,
2174
+ :capacity_units)
1680
2175
  include Aws::Structure
1681
2176
  end
1682
2177
 
@@ -1930,7 +2425,7 @@ module Aws::Kendra
1930
2425
  include Aws::Structure
1931
2426
  end
1932
2427
 
1933
- # Information a document attribute
2428
+ # Information about a document attribute
1934
2429
  #
1935
2430
  # @note When making an API call, you may pass Facet
1936
2431
  # data as a hash:
@@ -2061,6 +2556,11 @@ module Aws::Kendra
2061
2556
  # `UpdateIndex`, and `DeleteIndex`.
2062
2557
  # @return [String]
2063
2558
  #
2559
+ # @!attribute [rw] edition
2560
+ # Indicates whether the index is a enterprise edition index or a
2561
+ # developer edition index.
2562
+ # @return [String]
2563
+ #
2064
2564
  # @!attribute [rw] created_at
2065
2565
  # The Unix timestamp when the index was created.
2066
2566
  # @return [Time]
@@ -2080,6 +2580,7 @@ module Aws::Kendra
2080
2580
  class IndexConfigurationSummary < Struct.new(
2081
2581
  :name,
2082
2582
  :id,
2583
+ :edition,
2083
2584
  :created_at,
2084
2585
  :updated_at,
2085
2586
  :status)
@@ -2127,7 +2628,7 @@ module Aws::Kendra
2127
2628
  # start_time: Time.now,
2128
2629
  # end_time: Time.now,
2129
2630
  # },
2130
- # status_filter: "FAILED", # accepts FAILED, SUCCEEDED, SYNCING, INCOMPLETE, STOPPING, ABORTED
2631
+ # status_filter: "FAILED", # accepts FAILED, SUCCEEDED, SYNCING, INCOMPLETE, STOPPING, ABORTED, SYNCING_INDEXING
2131
2632
  # }
2132
2633
  #
2133
2634
  # @!attribute [rw] id
@@ -2342,27 +2843,170 @@ module Aws::Kendra
2342
2843
  include Aws::Structure
2343
2844
  end
2344
2845
 
2345
- # Provides user and group information for document access filtering.
2346
- #
2347
- # @note When making an API call, you may pass Principal
2846
+ # @note When making an API call, you may pass ListTagsForResourceRequest
2348
2847
  # data as a hash:
2349
2848
  #
2350
2849
  # {
2351
- # name: "PrincipalName", # required
2352
- # type: "USER", # required, accepts USER, GROUP
2353
- # access: "ALLOW", # required, accepts ALLOW, DENY
2850
+ # resource_arn: "AmazonResourceName", # required
2354
2851
  # }
2355
2852
  #
2356
- # @!attribute [rw] name
2357
- # The name of the user or group.
2853
+ # @!attribute [rw] resource_arn
2854
+ # The Amazon Resource Name (ARN) of the index, FAQ, or data source to
2855
+ # get a list of tags for.
2358
2856
  # @return [String]
2359
2857
  #
2360
- # @!attribute [rw] type
2361
- # The type of principal.
2362
- # @return [String]
2858
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListTagsForResourceRequest AWS API Documentation
2363
2859
  #
2364
- # @!attribute [rw] access
2365
- # Whether to allow or deny access to the principal.
2860
+ class ListTagsForResourceRequest < Struct.new(
2861
+ :resource_arn)
2862
+ include Aws::Structure
2863
+ end
2864
+
2865
+ # @!attribute [rw] tags
2866
+ # A list of tags associated with the index, FAQ, or data source.
2867
+ # @return [Array<Types::Tag>]
2868
+ #
2869
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListTagsForResourceResponse AWS API Documentation
2870
+ #
2871
+ class ListTagsForResourceResponse < Struct.new(
2872
+ :tags)
2873
+ include Aws::Structure
2874
+ end
2875
+
2876
+ # Provides configuration information for data sources that connect to
2877
+ # OneDrive.
2878
+ #
2879
+ # @note When making an API call, you may pass OneDriveConfiguration
2880
+ # data as a hash:
2881
+ #
2882
+ # {
2883
+ # tenant_domain: "TenantDomain", # required
2884
+ # secret_arn: "SecretArn", # required
2885
+ # one_drive_users: { # required
2886
+ # one_drive_user_list: ["OneDriveUser"],
2887
+ # one_drive_user_s3_path: {
2888
+ # bucket: "S3BucketName", # required
2889
+ # key: "S3ObjectKey", # required
2890
+ # },
2891
+ # },
2892
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2893
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2894
+ # field_mappings: [
2895
+ # {
2896
+ # data_source_field_name: "DataSourceFieldName", # required
2897
+ # date_field_format: "DataSourceDateFieldFormat",
2898
+ # index_field_name: "IndexFieldName", # required
2899
+ # },
2900
+ # ],
2901
+ # }
2902
+ #
2903
+ # @!attribute [rw] tenant_domain
2904
+ # Tha Azure Active Directory domain of the organization.
2905
+ # @return [String]
2906
+ #
2907
+ # @!attribute [rw] secret_arn
2908
+ # The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that
2909
+ # contains the user name and password to connect to OneDrive. The user
2910
+ # namd should be the application ID for the OneDrive application, and
2911
+ # the password is the application key for the OneDrive application.
2912
+ # @return [String]
2913
+ #
2914
+ # @!attribute [rw] one_drive_users
2915
+ # A list of user accounts whose documents should be indexed.
2916
+ # @return [Types::OneDriveUsers]
2917
+ #
2918
+ # @!attribute [rw] inclusion_patterns
2919
+ # A list of regular expression patterns. Documents that match the
2920
+ # pattern are included in the index. Documents that don't match the
2921
+ # pattern are excluded from the index. If a document matches both an
2922
+ # inclusion pattern and an exclusion pattern, the document is not
2923
+ # included in the index.
2924
+ #
2925
+ # The exclusion pattern is applied to the file name.
2926
+ # @return [Array<String>]
2927
+ #
2928
+ # @!attribute [rw] exclusion_patterns
2929
+ # List of regular expressions applied to documents. Items that match
2930
+ # the exclusion pattern are not indexed. If you provide both an
2931
+ # inclusion pattern and an exclusion pattern, any item that matches
2932
+ # the exclusion pattern isn't indexed.
2933
+ #
2934
+ # The exclusion pattern is applied to the file name.
2935
+ # @return [Array<String>]
2936
+ #
2937
+ # @!attribute [rw] field_mappings
2938
+ # A list of `DataSourceToIndexFieldMapping` objects that map Microsoft
2939
+ # OneDrive fields to custom fields in the Amazon Kendra index. You
2940
+ # must first create the index fields before you map OneDrive fields.
2941
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
2942
+ #
2943
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/OneDriveConfiguration AWS API Documentation
2944
+ #
2945
+ class OneDriveConfiguration < Struct.new(
2946
+ :tenant_domain,
2947
+ :secret_arn,
2948
+ :one_drive_users,
2949
+ :inclusion_patterns,
2950
+ :exclusion_patterns,
2951
+ :field_mappings)
2952
+ include Aws::Structure
2953
+ end
2954
+
2955
+ # User accounts whose documents should be indexed.
2956
+ #
2957
+ # @note When making an API call, you may pass OneDriveUsers
2958
+ # data as a hash:
2959
+ #
2960
+ # {
2961
+ # one_drive_user_list: ["OneDriveUser"],
2962
+ # one_drive_user_s3_path: {
2963
+ # bucket: "S3BucketName", # required
2964
+ # key: "S3ObjectKey", # required
2965
+ # },
2966
+ # }
2967
+ #
2968
+ # @!attribute [rw] one_drive_user_list
2969
+ # A list of users whose documents should be indexed. Specify the user
2970
+ # names in email format, for example, `username@tenantdomain`. If you
2971
+ # need to index the documents of more than 100 users, use the
2972
+ # `OneDriveUserS3Path` field to specify the location of a file
2973
+ # containing a list of users.
2974
+ # @return [Array<String>]
2975
+ #
2976
+ # @!attribute [rw] one_drive_user_s3_path
2977
+ # The S3 bucket location of a file containing a list of users whose
2978
+ # documents should be indexed.
2979
+ # @return [Types::S3Path]
2980
+ #
2981
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/OneDriveUsers AWS API Documentation
2982
+ #
2983
+ class OneDriveUsers < Struct.new(
2984
+ :one_drive_user_list,
2985
+ :one_drive_user_s3_path)
2986
+ include Aws::Structure
2987
+ end
2988
+
2989
+ # Provides user and group information for document access filtering.
2990
+ #
2991
+ # @note When making an API call, you may pass Principal
2992
+ # data as a hash:
2993
+ #
2994
+ # {
2995
+ # name: "PrincipalName", # required
2996
+ # type: "USER", # required, accepts USER, GROUP
2997
+ # access: "ALLOW", # required, accepts ALLOW, DENY
2998
+ # }
2999
+ #
3000
+ # @!attribute [rw] name
3001
+ # The name of the user or group.
3002
+ # @return [String]
3003
+ #
3004
+ # @!attribute [rw] type
3005
+ # The type of principal.
3006
+ # @return [String]
3007
+ #
3008
+ # @!attribute [rw] access
3009
+ # Whether to allow or deny access to the principal.
2366
3010
  # @return [String]
2367
3011
  #
2368
3012
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/Principal AWS API Documentation
@@ -2514,7 +3158,9 @@ module Aws::Kendra
2514
3158
  #
2515
3159
  # @!attribute [rw] page_size
2516
3160
  # Sets the number of results that are returned in each page of
2517
- # results. The default page size is 100.
3161
+ # results. The default page size is 10. The maximum number of results
3162
+ # returned is 100. If you ask for more than 100 results, only 100 are
3163
+ # returned.
2518
3164
  # @return [Integer]
2519
3165
  #
2520
3166
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/QueryRequest AWS API Documentation
@@ -2577,6 +3223,7 @@ module Aws::Kendra
2577
3223
  # @return [String]
2578
3224
  #
2579
3225
  # @!attribute [rw] additional_attributes
3226
+ # One or more additional attribues associated with the query result.
2580
3227
  # @return [Array<Types::AdditionalResultAttribute>]
2581
3228
  #
2582
3229
  # @!attribute [rw] document_id
@@ -2805,7 +3452,7 @@ module Aws::Kendra
2805
3452
  #
2806
3453
  #
2807
3454
  #
2808
- # [1]: http://wikipedia.org/wiki/Glob_%28programming%29
3455
+ # [1]: https://en.wikipedia.org/wiki/Glob_(programming)
2809
3456
  # @return [Array<String>]
2810
3457
  #
2811
3458
  # @!attribute [rw] documents_metadata_configuration
@@ -2831,29 +3478,484 @@ module Aws::Kendra
2831
3478
  include Aws::Structure
2832
3479
  end
2833
3480
 
2834
- # Information required to find a specific file in an Amazon S3 bucket.
3481
+ # Information required to find a specific file in an Amazon S3 bucket.
3482
+ #
3483
+ # @note When making an API call, you may pass S3Path
3484
+ # data as a hash:
3485
+ #
3486
+ # {
3487
+ # bucket: "S3BucketName", # required
3488
+ # key: "S3ObjectKey", # required
3489
+ # }
3490
+ #
3491
+ # @!attribute [rw] bucket
3492
+ # The name of the S3 bucket that contains the file.
3493
+ # @return [String]
3494
+ #
3495
+ # @!attribute [rw] key
3496
+ # The name of the file.
3497
+ # @return [String]
3498
+ #
3499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/S3Path AWS API Documentation
3500
+ #
3501
+ class S3Path < Struct.new(
3502
+ :bucket,
3503
+ :key)
3504
+ include Aws::Structure
3505
+ end
3506
+
3507
+ # Defines configuration for syncing a Salesforce chatter feed. The
3508
+ # contents of the object comes from the Salesforce FeedItem table.
3509
+ #
3510
+ # @note When making an API call, you may pass SalesforceChatterFeedConfiguration
3511
+ # data as a hash:
3512
+ #
3513
+ # {
3514
+ # document_data_field_name: "DataSourceFieldName", # required
3515
+ # document_title_field_name: "DataSourceFieldName",
3516
+ # field_mappings: [
3517
+ # {
3518
+ # data_source_field_name: "DataSourceFieldName", # required
3519
+ # date_field_format: "DataSourceDateFieldFormat",
3520
+ # index_field_name: "IndexFieldName", # required
3521
+ # },
3522
+ # ],
3523
+ # include_filter_types: ["ACTIVE_USER"], # accepts ACTIVE_USER, STANDARD_USER
3524
+ # }
3525
+ #
3526
+ # @!attribute [rw] document_data_field_name
3527
+ # The name of the column in the Salesforce FeedItem table that
3528
+ # contains the content to index. Typically this is the `Body` column.
3529
+ # @return [String]
3530
+ #
3531
+ # @!attribute [rw] document_title_field_name
3532
+ # The name of the column in the Salesforce FeedItem table that
3533
+ # contains the title of the document. This is typically the `Title`
3534
+ # collumn.
3535
+ # @return [String]
3536
+ #
3537
+ # @!attribute [rw] field_mappings
3538
+ # Maps fields from a Salesforce chatter feed into Amazon Kendra index
3539
+ # fields.
3540
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
3541
+ #
3542
+ # @!attribute [rw] include_filter_types
3543
+ # Filters the documents in the feed based on status of the user. When
3544
+ # you specify `ACTIVE_USERS` only documents from users who have an
3545
+ # active account are indexed. When you specify `STANDARD_USER` only
3546
+ # documents for Salesforce standard users are documented. You can
3547
+ # specify both.
3548
+ # @return [Array<String>]
3549
+ #
3550
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SalesforceChatterFeedConfiguration AWS API Documentation
3551
+ #
3552
+ class SalesforceChatterFeedConfiguration < Struct.new(
3553
+ :document_data_field_name,
3554
+ :document_title_field_name,
3555
+ :field_mappings,
3556
+ :include_filter_types)
3557
+ include Aws::Structure
3558
+ end
3559
+
3560
+ # Provides configuration information for connecting to a Salesforce data
3561
+ # source.
3562
+ #
3563
+ # @note When making an API call, you may pass SalesforceConfiguration
3564
+ # data as a hash:
3565
+ #
3566
+ # {
3567
+ # server_url: "Url", # required
3568
+ # secret_arn: "SecretArn", # required
3569
+ # standard_object_configurations: [
3570
+ # {
3571
+ # name: "ACCOUNT", # required, accepts ACCOUNT, CAMPAIGN, CASE, CONTACT, CONTRACT, DOCUMENT, GROUP, IDEA, LEAD, OPPORTUNITY, PARTNER, PRICEBOOK, PRODUCT, PROFILE, SOLUTION, TASK, USER
3572
+ # document_data_field_name: "DataSourceFieldName", # required
3573
+ # document_title_field_name: "DataSourceFieldName",
3574
+ # field_mappings: [
3575
+ # {
3576
+ # data_source_field_name: "DataSourceFieldName", # required
3577
+ # date_field_format: "DataSourceDateFieldFormat",
3578
+ # index_field_name: "IndexFieldName", # required
3579
+ # },
3580
+ # ],
3581
+ # },
3582
+ # ],
3583
+ # knowledge_article_configuration: {
3584
+ # included_states: ["DRAFT"], # required, accepts DRAFT, PUBLISHED, ARCHIVED
3585
+ # standard_knowledge_article_type_configuration: {
3586
+ # document_data_field_name: "DataSourceFieldName", # required
3587
+ # document_title_field_name: "DataSourceFieldName",
3588
+ # field_mappings: [
3589
+ # {
3590
+ # data_source_field_name: "DataSourceFieldName", # required
3591
+ # date_field_format: "DataSourceDateFieldFormat",
3592
+ # index_field_name: "IndexFieldName", # required
3593
+ # },
3594
+ # ],
3595
+ # },
3596
+ # custom_knowledge_article_type_configurations: [
3597
+ # {
3598
+ # name: "SalesforceCustomKnowledgeArticleTypeName", # required
3599
+ # document_data_field_name: "DataSourceFieldName", # required
3600
+ # document_title_field_name: "DataSourceFieldName",
3601
+ # field_mappings: [
3602
+ # {
3603
+ # data_source_field_name: "DataSourceFieldName", # required
3604
+ # date_field_format: "DataSourceDateFieldFormat",
3605
+ # index_field_name: "IndexFieldName", # required
3606
+ # },
3607
+ # ],
3608
+ # },
3609
+ # ],
3610
+ # },
3611
+ # chatter_feed_configuration: {
3612
+ # document_data_field_name: "DataSourceFieldName", # required
3613
+ # document_title_field_name: "DataSourceFieldName",
3614
+ # field_mappings: [
3615
+ # {
3616
+ # data_source_field_name: "DataSourceFieldName", # required
3617
+ # date_field_format: "DataSourceDateFieldFormat",
3618
+ # index_field_name: "IndexFieldName", # required
3619
+ # },
3620
+ # ],
3621
+ # include_filter_types: ["ACTIVE_USER"], # accepts ACTIVE_USER, STANDARD_USER
3622
+ # },
3623
+ # crawl_attachments: false,
3624
+ # standard_object_attachment_configuration: {
3625
+ # document_title_field_name: "DataSourceFieldName",
3626
+ # field_mappings: [
3627
+ # {
3628
+ # data_source_field_name: "DataSourceFieldName", # required
3629
+ # date_field_format: "DataSourceDateFieldFormat",
3630
+ # index_field_name: "IndexFieldName", # required
3631
+ # },
3632
+ # ],
3633
+ # },
3634
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3635
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3636
+ # }
3637
+ #
3638
+ # @!attribute [rw] server_url
3639
+ # The instance URL for the Salesforce site that you want to index.
3640
+ # @return [String]
3641
+ #
3642
+ # @!attribute [rw] secret_arn
3643
+ # The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that
3644
+ # contains the key/value pairs required to connect to your Salesforce
3645
+ # instance. The secret must contain a JSON structure with the
3646
+ # following keys:
3647
+ #
3648
+ # * authenticationUrl - The OAUTH endpoint that Amazon Kendra connects
3649
+ # to get an OAUTH token.
3650
+ #
3651
+ # * consumerKey - The application public key generated when you
3652
+ # created your Salesforce application.
3653
+ #
3654
+ # * consumerSecret - The application private key generated when you
3655
+ # created your Salesforce application.
3656
+ #
3657
+ # * password - The password associated with the user logging in to the
3658
+ # Salesforce instance.
3659
+ #
3660
+ # * securityToken - The token associated with the user account logging
3661
+ # in to the Salesforce instance.
3662
+ #
3663
+ # * username - The user name of the user logging in to the Salesforce
3664
+ # instance.
3665
+ # @return [String]
3666
+ #
3667
+ # @!attribute [rw] standard_object_configurations
3668
+ # Specifies the Salesforce standard objects that Amazon Kendra
3669
+ # indexes.
3670
+ # @return [Array<Types::SalesforceStandardObjectConfiguration>]
3671
+ #
3672
+ # @!attribute [rw] knowledge_article_configuration
3673
+ # Specifies configuration information for the knowlege article types
3674
+ # that Amazon Kendra indexes. Amazon Kendra indexes standard knowledge
3675
+ # articles and the standard fields of knowledge articles, or the
3676
+ # custom fields of custom knowledge articles, but not both.
3677
+ # @return [Types::SalesforceKnowledgeArticleConfiguration]
3678
+ #
3679
+ # @!attribute [rw] chatter_feed_configuration
3680
+ # Specifies configuration information for Salesforce chatter feeds.
3681
+ # @return [Types::SalesforceChatterFeedConfiguration]
3682
+ #
3683
+ # @!attribute [rw] crawl_attachments
3684
+ # Indicates whether Amazon Kendra should index attachments to
3685
+ # Salesforce objects.
3686
+ # @return [Boolean]
3687
+ #
3688
+ # @!attribute [rw] standard_object_attachment_configuration
3689
+ # Provides configuration information for processing attachments to
3690
+ # Salesforce standard objects.
3691
+ # @return [Types::SalesforceStandardObjectAttachmentConfiguration]
3692
+ #
3693
+ # @!attribute [rw] include_attachment_file_patterns
3694
+ # A list of regular expression patterns. Documents that match the
3695
+ # patterns are included in the index. Documents that don't match the
3696
+ # patterns are excluded from the index. If a document matches both an
3697
+ # inclusion pattern and an exclusion pattern, the document is not
3698
+ # included in the index.
3699
+ #
3700
+ # The regex is applied to the name of the attached file.
3701
+ # @return [Array<String>]
3702
+ #
3703
+ # @!attribute [rw] exclude_attachment_file_patterns
3704
+ # A list of regular expression patterns. Documents that match the
3705
+ # patterns are excluded from the index. Documents that don't match
3706
+ # the patterns are included in the index. If a document matches both
3707
+ # an exclusion pattern and an inclusion pattern, the document is not
3708
+ # included in the index.
3709
+ #
3710
+ # The regex is applied to the name of the attached file.
3711
+ # @return [Array<String>]
3712
+ #
3713
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SalesforceConfiguration AWS API Documentation
3714
+ #
3715
+ class SalesforceConfiguration < Struct.new(
3716
+ :server_url,
3717
+ :secret_arn,
3718
+ :standard_object_configurations,
3719
+ :knowledge_article_configuration,
3720
+ :chatter_feed_configuration,
3721
+ :crawl_attachments,
3722
+ :standard_object_attachment_configuration,
3723
+ :include_attachment_file_patterns,
3724
+ :exclude_attachment_file_patterns)
3725
+ include Aws::Structure
3726
+ end
3727
+
3728
+ # Provides configuration information for indexing Salesforce custom
3729
+ # articles.
3730
+ #
3731
+ # @note When making an API call, you may pass SalesforceCustomKnowledgeArticleTypeConfiguration
3732
+ # data as a hash:
3733
+ #
3734
+ # {
3735
+ # name: "SalesforceCustomKnowledgeArticleTypeName", # required
3736
+ # document_data_field_name: "DataSourceFieldName", # required
3737
+ # document_title_field_name: "DataSourceFieldName",
3738
+ # field_mappings: [
3739
+ # {
3740
+ # data_source_field_name: "DataSourceFieldName", # required
3741
+ # date_field_format: "DataSourceDateFieldFormat",
3742
+ # index_field_name: "IndexFieldName", # required
3743
+ # },
3744
+ # ],
3745
+ # }
3746
+ #
3747
+ # @!attribute [rw] name
3748
+ # The name of the configuration.
3749
+ # @return [String]
3750
+ #
3751
+ # @!attribute [rw] document_data_field_name
3752
+ # The name of the field in the custom knowledge article that contains
3753
+ # the document data to index.
3754
+ # @return [String]
3755
+ #
3756
+ # @!attribute [rw] document_title_field_name
3757
+ # The name of the field in the custom knowledge article that contains
3758
+ # the document title.
3759
+ # @return [String]
3760
+ #
3761
+ # @!attribute [rw] field_mappings
3762
+ # One or more objects that map fields in the custom knowledge article
3763
+ # to fields in the Amazon Kendra index.
3764
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
3765
+ #
3766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SalesforceCustomKnowledgeArticleTypeConfiguration AWS API Documentation
3767
+ #
3768
+ class SalesforceCustomKnowledgeArticleTypeConfiguration < Struct.new(
3769
+ :name,
3770
+ :document_data_field_name,
3771
+ :document_title_field_name,
3772
+ :field_mappings)
3773
+ include Aws::Structure
3774
+ end
3775
+
3776
+ # Specifies configuration information for the knowlege article types
3777
+ # that Amazon Kendra indexes. Amazon Kendra indexes standard knowledge
3778
+ # articles and the standard fields of knowledge articles, or the custom
3779
+ # fields of custom knowledge articles, but not both
3780
+ #
3781
+ # @note When making an API call, you may pass SalesforceKnowledgeArticleConfiguration
3782
+ # data as a hash:
3783
+ #
3784
+ # {
3785
+ # included_states: ["DRAFT"], # required, accepts DRAFT, PUBLISHED, ARCHIVED
3786
+ # standard_knowledge_article_type_configuration: {
3787
+ # document_data_field_name: "DataSourceFieldName", # required
3788
+ # document_title_field_name: "DataSourceFieldName",
3789
+ # field_mappings: [
3790
+ # {
3791
+ # data_source_field_name: "DataSourceFieldName", # required
3792
+ # date_field_format: "DataSourceDateFieldFormat",
3793
+ # index_field_name: "IndexFieldName", # required
3794
+ # },
3795
+ # ],
3796
+ # },
3797
+ # custom_knowledge_article_type_configurations: [
3798
+ # {
3799
+ # name: "SalesforceCustomKnowledgeArticleTypeName", # required
3800
+ # document_data_field_name: "DataSourceFieldName", # required
3801
+ # document_title_field_name: "DataSourceFieldName",
3802
+ # field_mappings: [
3803
+ # {
3804
+ # data_source_field_name: "DataSourceFieldName", # required
3805
+ # date_field_format: "DataSourceDateFieldFormat",
3806
+ # index_field_name: "IndexFieldName", # required
3807
+ # },
3808
+ # ],
3809
+ # },
3810
+ # ],
3811
+ # }
3812
+ #
3813
+ # @!attribute [rw] included_states
3814
+ # Specifies the document states that should be included when Amazon
3815
+ # Kendra indexes knowledge articles. You must specify at least one
3816
+ # state.
3817
+ # @return [Array<String>]
3818
+ #
3819
+ # @!attribute [rw] standard_knowledge_article_type_configuration
3820
+ # Provides configuration information for standard Salesforce knowledge
3821
+ # articles.
3822
+ # @return [Types::SalesforceStandardKnowledgeArticleTypeConfiguration]
3823
+ #
3824
+ # @!attribute [rw] custom_knowledge_article_type_configurations
3825
+ # Provides configuration information for custom Salesforce knowledge
3826
+ # articles.
3827
+ # @return [Array<Types::SalesforceCustomKnowledgeArticleTypeConfiguration>]
3828
+ #
3829
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SalesforceKnowledgeArticleConfiguration AWS API Documentation
3830
+ #
3831
+ class SalesforceKnowledgeArticleConfiguration < Struct.new(
3832
+ :included_states,
3833
+ :standard_knowledge_article_type_configuration,
3834
+ :custom_knowledge_article_type_configurations)
3835
+ include Aws::Structure
3836
+ end
3837
+
3838
+ # Provides configuration information for standard Salesforce knowledge
3839
+ # articles.
3840
+ #
3841
+ # @note When making an API call, you may pass SalesforceStandardKnowledgeArticleTypeConfiguration
3842
+ # data as a hash:
3843
+ #
3844
+ # {
3845
+ # document_data_field_name: "DataSourceFieldName", # required
3846
+ # document_title_field_name: "DataSourceFieldName",
3847
+ # field_mappings: [
3848
+ # {
3849
+ # data_source_field_name: "DataSourceFieldName", # required
3850
+ # date_field_format: "DataSourceDateFieldFormat",
3851
+ # index_field_name: "IndexFieldName", # required
3852
+ # },
3853
+ # ],
3854
+ # }
3855
+ #
3856
+ # @!attribute [rw] document_data_field_name
3857
+ # The name of the field that contains the document data to index.
3858
+ # @return [String]
3859
+ #
3860
+ # @!attribute [rw] document_title_field_name
3861
+ # The name of the field that contains the document title.
3862
+ # @return [String]
3863
+ #
3864
+ # @!attribute [rw] field_mappings
3865
+ # One or more objects that map fields in the knowledge article to
3866
+ # Amazon Kendra index fields. The index field must exist before you
3867
+ # can map a Salesforce field to it.
3868
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
3869
+ #
3870
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SalesforceStandardKnowledgeArticleTypeConfiguration AWS API Documentation
3871
+ #
3872
+ class SalesforceStandardKnowledgeArticleTypeConfiguration < Struct.new(
3873
+ :document_data_field_name,
3874
+ :document_title_field_name,
3875
+ :field_mappings)
3876
+ include Aws::Structure
3877
+ end
3878
+
3879
+ # Provides configuration information for processing attachments to
3880
+ # Salesforce standard objects.
3881
+ #
3882
+ # @note When making an API call, you may pass SalesforceStandardObjectAttachmentConfiguration
3883
+ # data as a hash:
3884
+ #
3885
+ # {
3886
+ # document_title_field_name: "DataSourceFieldName",
3887
+ # field_mappings: [
3888
+ # {
3889
+ # data_source_field_name: "DataSourceFieldName", # required
3890
+ # date_field_format: "DataSourceDateFieldFormat",
3891
+ # index_field_name: "IndexFieldName", # required
3892
+ # },
3893
+ # ],
3894
+ # }
3895
+ #
3896
+ # @!attribute [rw] document_title_field_name
3897
+ # The name of the field used for the document title.
3898
+ # @return [String]
3899
+ #
3900
+ # @!attribute [rw] field_mappings
3901
+ # One or more objects that map fields in attachments to Amazon Kendra
3902
+ # index fields.
3903
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
3904
+ #
3905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SalesforceStandardObjectAttachmentConfiguration AWS API Documentation
3906
+ #
3907
+ class SalesforceStandardObjectAttachmentConfiguration < Struct.new(
3908
+ :document_title_field_name,
3909
+ :field_mappings)
3910
+ include Aws::Structure
3911
+ end
3912
+
3913
+ # Specifies confguration information for indexing a single standard
3914
+ # object.
2835
3915
  #
2836
- # @note When making an API call, you may pass S3Path
3916
+ # @note When making an API call, you may pass SalesforceStandardObjectConfiguration
2837
3917
  # data as a hash:
2838
3918
  #
2839
3919
  # {
2840
- # bucket: "S3BucketName", # required
2841
- # key: "S3ObjectKey", # required
3920
+ # name: "ACCOUNT", # required, accepts ACCOUNT, CAMPAIGN, CASE, CONTACT, CONTRACT, DOCUMENT, GROUP, IDEA, LEAD, OPPORTUNITY, PARTNER, PRICEBOOK, PRODUCT, PROFILE, SOLUTION, TASK, USER
3921
+ # document_data_field_name: "DataSourceFieldName", # required
3922
+ # document_title_field_name: "DataSourceFieldName",
3923
+ # field_mappings: [
3924
+ # {
3925
+ # data_source_field_name: "DataSourceFieldName", # required
3926
+ # date_field_format: "DataSourceDateFieldFormat",
3927
+ # index_field_name: "IndexFieldName", # required
3928
+ # },
3929
+ # ],
2842
3930
  # }
2843
3931
  #
2844
- # @!attribute [rw] bucket
2845
- # The name of the S3 bucket that contains the file.
3932
+ # @!attribute [rw] name
3933
+ # The name of the standard object.
2846
3934
  # @return [String]
2847
3935
  #
2848
- # @!attribute [rw] key
2849
- # The name of the file.
3936
+ # @!attribute [rw] document_data_field_name
3937
+ # The name of the field in the standard object table that contains the
3938
+ # document contents.
2850
3939
  # @return [String]
2851
3940
  #
2852
- # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/S3Path AWS API Documentation
3941
+ # @!attribute [rw] document_title_field_name
3942
+ # The name of the field in the standard object table that contains the
3943
+ # document titleB.
3944
+ # @return [String]
2853
3945
  #
2854
- class S3Path < Struct.new(
2855
- :bucket,
2856
- :key)
3946
+ # @!attribute [rw] field_mappings
3947
+ # One or more objects that map fields in the standard object to Amazon
3948
+ # Kendra index fields. The index field must exist before you can map a
3949
+ # Salesforce field to it.
3950
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
3951
+ #
3952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/SalesforceStandardObjectConfiguration AWS API Documentation
3953
+ #
3954
+ class SalesforceStandardObjectConfiguration < Struct.new(
3955
+ :name,
3956
+ :document_data_field_name,
3957
+ :document_title_field_name,
3958
+ :field_mappings)
2857
3959
  include Aws::Structure
2858
3960
  end
2859
3961
 
@@ -2920,6 +4022,212 @@ module Aws::Kendra
2920
4022
  include Aws::Structure
2921
4023
  end
2922
4024
 
4025
+ # Provides configuration information required to connect to a ServiceNow
4026
+ # data source.
4027
+ #
4028
+ # @note When making an API call, you may pass ServiceNowConfiguration
4029
+ # data as a hash:
4030
+ #
4031
+ # {
4032
+ # host_url: "ServiceNowHostUrl", # required
4033
+ # secret_arn: "SecretArn", # required
4034
+ # service_now_build_version: "LONDON", # required, accepts LONDON, OTHERS
4035
+ # knowledge_article_configuration: {
4036
+ # crawl_attachments: false,
4037
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4038
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4039
+ # document_data_field_name: "DataSourceFieldName", # required
4040
+ # document_title_field_name: "DataSourceFieldName",
4041
+ # field_mappings: [
4042
+ # {
4043
+ # data_source_field_name: "DataSourceFieldName", # required
4044
+ # date_field_format: "DataSourceDateFieldFormat",
4045
+ # index_field_name: "IndexFieldName", # required
4046
+ # },
4047
+ # ],
4048
+ # },
4049
+ # service_catalog_configuration: {
4050
+ # crawl_attachments: false,
4051
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4052
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4053
+ # document_data_field_name: "DataSourceFieldName", # required
4054
+ # document_title_field_name: "DataSourceFieldName",
4055
+ # field_mappings: [
4056
+ # {
4057
+ # data_source_field_name: "DataSourceFieldName", # required
4058
+ # date_field_format: "DataSourceDateFieldFormat",
4059
+ # index_field_name: "IndexFieldName", # required
4060
+ # },
4061
+ # ],
4062
+ # },
4063
+ # }
4064
+ #
4065
+ # @!attribute [rw] host_url
4066
+ # The ServiceNow instance that the data source connects to. The host
4067
+ # endpoint should look like the following:
4068
+ # `\{instance\}.service-now.com.`
4069
+ # @return [String]
4070
+ #
4071
+ # @!attribute [rw] secret_arn
4072
+ # The Amazon Resource Name (ARN) of the AWS Secret Manager secret that
4073
+ # contains the user name and password required to connect to the
4074
+ # ServiceNow instance.
4075
+ # @return [String]
4076
+ #
4077
+ # @!attribute [rw] service_now_build_version
4078
+ # The identifier of the release that the ServiceNow host is running.
4079
+ # If the host is not running the `LONDON` release, use `OTHERS`.
4080
+ # @return [String]
4081
+ #
4082
+ # @!attribute [rw] knowledge_article_configuration
4083
+ # Provides configuration information for crawling knowledge articles
4084
+ # in the ServiceNow site.
4085
+ # @return [Types::ServiceNowKnowledgeArticleConfiguration]
4086
+ #
4087
+ # @!attribute [rw] service_catalog_configuration
4088
+ # Provides configuration information for crawling service catalogs in
4089
+ # the ServiceNow site.
4090
+ # @return [Types::ServiceNowServiceCatalogConfiguration]
4091
+ #
4092
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ServiceNowConfiguration AWS API Documentation
4093
+ #
4094
+ class ServiceNowConfiguration < Struct.new(
4095
+ :host_url,
4096
+ :secret_arn,
4097
+ :service_now_build_version,
4098
+ :knowledge_article_configuration,
4099
+ :service_catalog_configuration)
4100
+ include Aws::Structure
4101
+ end
4102
+
4103
+ # Provides configuration information for crawling knowledge articles in
4104
+ # the ServiceNow site.
4105
+ #
4106
+ # @note When making an API call, you may pass ServiceNowKnowledgeArticleConfiguration
4107
+ # data as a hash:
4108
+ #
4109
+ # {
4110
+ # crawl_attachments: false,
4111
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4112
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4113
+ # document_data_field_name: "DataSourceFieldName", # required
4114
+ # document_title_field_name: "DataSourceFieldName",
4115
+ # field_mappings: [
4116
+ # {
4117
+ # data_source_field_name: "DataSourceFieldName", # required
4118
+ # date_field_format: "DataSourceDateFieldFormat",
4119
+ # index_field_name: "IndexFieldName", # required
4120
+ # },
4121
+ # ],
4122
+ # }
4123
+ #
4124
+ # @!attribute [rw] crawl_attachments
4125
+ # Indicates whether Amazon Kendra should index attachments to
4126
+ # knowledge articles.
4127
+ # @return [Boolean]
4128
+ #
4129
+ # @!attribute [rw] include_attachment_file_patterns
4130
+ # List of regular expressions applied to knowledge articles. Items
4131
+ # that don't match the inclusion pattern are not indexed. The regex
4132
+ # is applied to the field specified in the `PatternTargetField`.
4133
+ # @return [Array<String>]
4134
+ #
4135
+ # @!attribute [rw] exclude_attachment_file_patterns
4136
+ # List of regular expressions applied to knowledge articles. Items
4137
+ # that don't match the inclusion pattern are not indexed. The regex
4138
+ # is applied to the field specified in the `PatternTargetField`
4139
+ # @return [Array<String>]
4140
+ #
4141
+ # @!attribute [rw] document_data_field_name
4142
+ # The name of the ServiceNow field that is mapped to the index
4143
+ # document contents field in the Amazon Kendra index.
4144
+ # @return [String]
4145
+ #
4146
+ # @!attribute [rw] document_title_field_name
4147
+ # The name of the ServiceNow field that is mapped to the index
4148
+ # document title field.
4149
+ # @return [String]
4150
+ #
4151
+ # @!attribute [rw] field_mappings
4152
+ # Mapping between ServiceNow fields and Amazon Kendra index fields.
4153
+ # You must create the index field before you map the field.
4154
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
4155
+ #
4156
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ServiceNowKnowledgeArticleConfiguration AWS API Documentation
4157
+ #
4158
+ class ServiceNowKnowledgeArticleConfiguration < Struct.new(
4159
+ :crawl_attachments,
4160
+ :include_attachment_file_patterns,
4161
+ :exclude_attachment_file_patterns,
4162
+ :document_data_field_name,
4163
+ :document_title_field_name,
4164
+ :field_mappings)
4165
+ include Aws::Structure
4166
+ end
4167
+
4168
+ # Provides configuration information for crawling service catalog items
4169
+ # in the ServiceNow site
4170
+ #
4171
+ # @note When making an API call, you may pass ServiceNowServiceCatalogConfiguration
4172
+ # data as a hash:
4173
+ #
4174
+ # {
4175
+ # crawl_attachments: false,
4176
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4177
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4178
+ # document_data_field_name: "DataSourceFieldName", # required
4179
+ # document_title_field_name: "DataSourceFieldName",
4180
+ # field_mappings: [
4181
+ # {
4182
+ # data_source_field_name: "DataSourceFieldName", # required
4183
+ # date_field_format: "DataSourceDateFieldFormat",
4184
+ # index_field_name: "IndexFieldName", # required
4185
+ # },
4186
+ # ],
4187
+ # }
4188
+ #
4189
+ # @!attribute [rw] crawl_attachments
4190
+ # Indicates whether Amazon Kendra should crawl attachments to the
4191
+ # service catalog items.
4192
+ # @return [Boolean]
4193
+ #
4194
+ # @!attribute [rw] include_attachment_file_patterns
4195
+ # Determines the types of file attachments that are included in the
4196
+ # index.
4197
+ # @return [Array<String>]
4198
+ #
4199
+ # @!attribute [rw] exclude_attachment_file_patterns
4200
+ # Determines the types of file attachments that are excluded from the
4201
+ # index.
4202
+ # @return [Array<String>]
4203
+ #
4204
+ # @!attribute [rw] document_data_field_name
4205
+ # The name of the ServiceNow field that is mapped to the index
4206
+ # document contents field in the Amazon Kendra index.
4207
+ # @return [String]
4208
+ #
4209
+ # @!attribute [rw] document_title_field_name
4210
+ # The name of the ServiceNow field that is mapped to the index
4211
+ # document title field.
4212
+ # @return [String]
4213
+ #
4214
+ # @!attribute [rw] field_mappings
4215
+ # Mapping between ServiceNow fields and Amazon Kendra index fields.
4216
+ # You must create the index field before you map the field.
4217
+ # @return [Array<Types::DataSourceToIndexFieldMapping>]
4218
+ #
4219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ServiceNowServiceCatalogConfiguration AWS API Documentation
4220
+ #
4221
+ class ServiceNowServiceCatalogConfiguration < Struct.new(
4222
+ :crawl_attachments,
4223
+ :include_attachment_file_patterns,
4224
+ :exclude_attachment_file_patterns,
4225
+ :document_data_field_name,
4226
+ :document_title_field_name,
4227
+ :field_mappings)
4228
+ include Aws::Structure
4229
+ end
4230
+
2923
4231
  # @!attribute [rw] message
2924
4232
  # @return [String]
2925
4233
  #
@@ -3006,7 +4314,7 @@ module Aws::Kendra
3006
4314
  # @return [Array<String>]
3007
4315
  #
3008
4316
  # @!attribute [rw] exclusion_patterns
3009
- # A list of regular expression patterns. Documents that match the
4317
+ # A list of regulary expression patterns. Documents that match the
3010
4318
  # patterns are excluded from the index. Documents that don't match
3011
4319
  # the patterns are included in the index. If a document matches both
3012
4320
  # an exclusion pattern and an inclusion pattern, the document is not
@@ -3161,16 +4469,87 @@ module Aws::Kendra
3161
4469
  include Aws::Structure
3162
4470
  end
3163
4471
 
4472
+ # A list of key/value pairs that identify an index, FAQ, or data source.
4473
+ # Tag keys and values can consist of Unicode letters, digits, white
4474
+ # space, and any of the following symbols: \_ . : / = + - @.
4475
+ #
4476
+ # @note When making an API call, you may pass Tag
4477
+ # data as a hash:
4478
+ #
4479
+ # {
4480
+ # key: "TagKey", # required
4481
+ # value: "TagValue", # required
4482
+ # }
4483
+ #
4484
+ # @!attribute [rw] key
4485
+ # The key for the tag. Keys are not case sensitive and must be unique
4486
+ # for the index, FAQ, or data source.
4487
+ # @return [String]
4488
+ #
4489
+ # @!attribute [rw] value
4490
+ # The value associated with the tag. The value may be an empty string
4491
+ # but it can't be null.
4492
+ # @return [String]
4493
+ #
4494
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/Tag AWS API Documentation
4495
+ #
4496
+ class Tag < Struct.new(
4497
+ :key,
4498
+ :value)
4499
+ include Aws::Structure
4500
+ end
4501
+
4502
+ # @note When making an API call, you may pass TagResourceRequest
4503
+ # data as a hash:
4504
+ #
4505
+ # {
4506
+ # resource_arn: "AmazonResourceName", # required
4507
+ # tags: [ # required
4508
+ # {
4509
+ # key: "TagKey", # required
4510
+ # value: "TagValue", # required
4511
+ # },
4512
+ # ],
4513
+ # }
4514
+ #
4515
+ # @!attribute [rw] resource_arn
4516
+ # The Amazon Resource Name (ARN) of the index, FAQ, or data source to
4517
+ # tag.
4518
+ # @return [String]
4519
+ #
4520
+ # @!attribute [rw] tags
4521
+ # A list of tag keys to add to the index, FAQ, or data source. If a
4522
+ # tag already exists, the existing value is replaced with the new
4523
+ # value.
4524
+ # @return [Array<Types::Tag>]
4525
+ #
4526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/TagResourceRequest AWS API Documentation
4527
+ #
4528
+ class TagResourceRequest < Struct.new(
4529
+ :resource_arn,
4530
+ :tags)
4531
+ include Aws::Structure
4532
+ end
4533
+
4534
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/TagResourceResponse AWS API Documentation
4535
+ #
4536
+ class TagResourceResponse < Aws::EmptyStructure; end
4537
+
3164
4538
  # Provides information about text documents indexed in an index.
3165
4539
  #
3166
4540
  # @!attribute [rw] indexed_text_documents_count
3167
4541
  # The number of text documents indexed.
3168
4542
  # @return [Integer]
3169
4543
  #
4544
+ # @!attribute [rw] indexed_text_bytes
4545
+ # The total size, in bytes, of the indexed documents.
4546
+ # @return [Integer]
4547
+ #
3170
4548
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/TextDocumentStatistics AWS API Documentation
3171
4549
  #
3172
4550
  class TextDocumentStatistics < Struct.new(
3173
- :indexed_text_documents_count)
4551
+ :indexed_text_documents_count,
4552
+ :indexed_text_bytes)
3174
4553
  include Aws::Structure
3175
4554
  end
3176
4555
 
@@ -3228,6 +4607,36 @@ module Aws::Kendra
3228
4607
  include Aws::Structure
3229
4608
  end
3230
4609
 
4610
+ # @note When making an API call, you may pass UntagResourceRequest
4611
+ # data as a hash:
4612
+ #
4613
+ # {
4614
+ # resource_arn: "AmazonResourceName", # required
4615
+ # tag_keys: ["TagKey"], # required
4616
+ # }
4617
+ #
4618
+ # @!attribute [rw] resource_arn
4619
+ # The Amazon Resource Name (ARN) of the index, FAQ, or data source to
4620
+ # remove the tag from.
4621
+ # @return [String]
4622
+ #
4623
+ # @!attribute [rw] tag_keys
4624
+ # A list of tag keys to remove from the index, FAQ, or data source. If
4625
+ # a tag key does not exist on the resource, it is ignored.
4626
+ # @return [Array<String>]
4627
+ #
4628
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UntagResourceRequest AWS API Documentation
4629
+ #
4630
+ class UntagResourceRequest < Struct.new(
4631
+ :resource_arn,
4632
+ :tag_keys)
4633
+ include Aws::Structure
4634
+ end
4635
+
4636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UntagResourceResponse AWS API Documentation
4637
+ #
4638
+ class UntagResourceResponse < Aws::EmptyStructure; end
4639
+
3231
4640
  # @note When making an API call, you may pass UpdateDataSourceRequest
3232
4641
  # data as a hash:
3233
4642
  #
@@ -3298,6 +4707,130 @@ module Aws::Kendra
3298
4707
  # allowed_groups_column_name: "ColumnName", # required
3299
4708
  # },
3300
4709
  # },
4710
+ # salesforce_configuration: {
4711
+ # server_url: "Url", # required
4712
+ # secret_arn: "SecretArn", # required
4713
+ # standard_object_configurations: [
4714
+ # {
4715
+ # name: "ACCOUNT", # required, accepts ACCOUNT, CAMPAIGN, CASE, CONTACT, CONTRACT, DOCUMENT, GROUP, IDEA, LEAD, OPPORTUNITY, PARTNER, PRICEBOOK, PRODUCT, PROFILE, SOLUTION, TASK, USER
4716
+ # document_data_field_name: "DataSourceFieldName", # required
4717
+ # document_title_field_name: "DataSourceFieldName",
4718
+ # field_mappings: [
4719
+ # {
4720
+ # data_source_field_name: "DataSourceFieldName", # required
4721
+ # date_field_format: "DataSourceDateFieldFormat",
4722
+ # index_field_name: "IndexFieldName", # required
4723
+ # },
4724
+ # ],
4725
+ # },
4726
+ # ],
4727
+ # knowledge_article_configuration: {
4728
+ # included_states: ["DRAFT"], # required, accepts DRAFT, PUBLISHED, ARCHIVED
4729
+ # standard_knowledge_article_type_configuration: {
4730
+ # document_data_field_name: "DataSourceFieldName", # required
4731
+ # document_title_field_name: "DataSourceFieldName",
4732
+ # field_mappings: [
4733
+ # {
4734
+ # data_source_field_name: "DataSourceFieldName", # required
4735
+ # date_field_format: "DataSourceDateFieldFormat",
4736
+ # index_field_name: "IndexFieldName", # required
4737
+ # },
4738
+ # ],
4739
+ # },
4740
+ # custom_knowledge_article_type_configurations: [
4741
+ # {
4742
+ # name: "SalesforceCustomKnowledgeArticleTypeName", # required
4743
+ # document_data_field_name: "DataSourceFieldName", # required
4744
+ # document_title_field_name: "DataSourceFieldName",
4745
+ # field_mappings: [
4746
+ # {
4747
+ # data_source_field_name: "DataSourceFieldName", # required
4748
+ # date_field_format: "DataSourceDateFieldFormat",
4749
+ # index_field_name: "IndexFieldName", # required
4750
+ # },
4751
+ # ],
4752
+ # },
4753
+ # ],
4754
+ # },
4755
+ # chatter_feed_configuration: {
4756
+ # document_data_field_name: "DataSourceFieldName", # required
4757
+ # document_title_field_name: "DataSourceFieldName",
4758
+ # field_mappings: [
4759
+ # {
4760
+ # data_source_field_name: "DataSourceFieldName", # required
4761
+ # date_field_format: "DataSourceDateFieldFormat",
4762
+ # index_field_name: "IndexFieldName", # required
4763
+ # },
4764
+ # ],
4765
+ # include_filter_types: ["ACTIVE_USER"], # accepts ACTIVE_USER, STANDARD_USER
4766
+ # },
4767
+ # crawl_attachments: false,
4768
+ # standard_object_attachment_configuration: {
4769
+ # document_title_field_name: "DataSourceFieldName",
4770
+ # field_mappings: [
4771
+ # {
4772
+ # data_source_field_name: "DataSourceFieldName", # required
4773
+ # date_field_format: "DataSourceDateFieldFormat",
4774
+ # index_field_name: "IndexFieldName", # required
4775
+ # },
4776
+ # ],
4777
+ # },
4778
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4779
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4780
+ # },
4781
+ # one_drive_configuration: {
4782
+ # tenant_domain: "TenantDomain", # required
4783
+ # secret_arn: "SecretArn", # required
4784
+ # one_drive_users: { # required
4785
+ # one_drive_user_list: ["OneDriveUser"],
4786
+ # one_drive_user_s3_path: {
4787
+ # bucket: "S3BucketName", # required
4788
+ # key: "S3ObjectKey", # required
4789
+ # },
4790
+ # },
4791
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4792
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4793
+ # field_mappings: [
4794
+ # {
4795
+ # data_source_field_name: "DataSourceFieldName", # required
4796
+ # date_field_format: "DataSourceDateFieldFormat",
4797
+ # index_field_name: "IndexFieldName", # required
4798
+ # },
4799
+ # ],
4800
+ # },
4801
+ # service_now_configuration: {
4802
+ # host_url: "ServiceNowHostUrl", # required
4803
+ # secret_arn: "SecretArn", # required
4804
+ # service_now_build_version: "LONDON", # required, accepts LONDON, OTHERS
4805
+ # knowledge_article_configuration: {
4806
+ # crawl_attachments: false,
4807
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4808
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4809
+ # document_data_field_name: "DataSourceFieldName", # required
4810
+ # document_title_field_name: "DataSourceFieldName",
4811
+ # field_mappings: [
4812
+ # {
4813
+ # data_source_field_name: "DataSourceFieldName", # required
4814
+ # date_field_format: "DataSourceDateFieldFormat",
4815
+ # index_field_name: "IndexFieldName", # required
4816
+ # },
4817
+ # ],
4818
+ # },
4819
+ # service_catalog_configuration: {
4820
+ # crawl_attachments: false,
4821
+ # include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4822
+ # exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4823
+ # document_data_field_name: "DataSourceFieldName", # required
4824
+ # document_title_field_name: "DataSourceFieldName",
4825
+ # field_mappings: [
4826
+ # {
4827
+ # data_source_field_name: "DataSourceFieldName", # required
4828
+ # date_field_format: "DataSourceDateFieldFormat",
4829
+ # index_field_name: "IndexFieldName", # required
4830
+ # },
4831
+ # ],
4832
+ # },
4833
+ # },
3301
4834
  # },
3302
4835
  # description: "Description",
3303
4836
  # schedule: "ScanSchedule",
@@ -3376,6 +4909,10 @@ module Aws::Kendra
3376
4909
  # },
3377
4910
  # },
3378
4911
  # ],
4912
+ # capacity_units: {
4913
+ # storage_capacity_units: 1, # required
4914
+ # query_capacity_units: 1, # required
4915
+ # },
3379
4916
  # }
3380
4917
  #
3381
4918
  # @!attribute [rw] id
@@ -3399,6 +4936,16 @@ module Aws::Kendra
3399
4936
  # The document metadata to update.
3400
4937
  # @return [Array<Types::DocumentMetadataConfiguration>]
3401
4938
  #
4939
+ # @!attribute [rw] capacity_units
4940
+ # Sets the number of addtional storage and query capacity units that
4941
+ # should be used by the index. You can change the capacity of the
4942
+ # index up to 5 times per day.
4943
+ #
4944
+ # If you are using extra storage units, you can't reduce the storage
4945
+ # capacity below that required to meet the storage needs for your
4946
+ # index.
4947
+ # @return [Types::CapacityUnitsConfiguration]
4948
+ #
3402
4949
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/UpdateIndexRequest AWS API Documentation
3403
4950
  #
3404
4951
  class UpdateIndexRequest < Struct.new(
@@ -3406,7 +4953,8 @@ module Aws::Kendra
3406
4953
  :name,
3407
4954
  :role_arn,
3408
4955
  :description,
3409
- :document_metadata_configuration_updates)
4956
+ :document_metadata_configuration_updates,
4957
+ :capacity_units)
3410
4958
  include Aws::Structure
3411
4959
  end
3412
4960