aws-sdk-kendra 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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