aws-sdk-kendra 1.12.0 → 1.17.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.
@@ -818,6 +818,491 @@ module Aws::Kendra
818
818
  include Aws::Structure
819
819
  end
820
820
 
821
+ # Specifies the attachment settings for the Confluence data source.
822
+ # Attachment settings are optional, if you don't specify settings
823
+ # attachments, Amazon Kendra won't index them.
824
+ #
825
+ # @note When making an API call, you may pass ConfluenceAttachmentConfiguration
826
+ # data as a hash:
827
+ #
828
+ # {
829
+ # crawl_attachments: false,
830
+ # attachment_field_mappings: [
831
+ # {
832
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
833
+ # date_field_format: "DataSourceDateFieldFormat",
834
+ # index_field_name: "IndexFieldName",
835
+ # },
836
+ # ],
837
+ # }
838
+ #
839
+ # @!attribute [rw] crawl_attachments
840
+ # Indicates whether Amazon Kendra indexes attachments to the pages and
841
+ # blogs in the Confluence data source.
842
+ # @return [Boolean]
843
+ #
844
+ # @!attribute [rw] attachment_field_mappings
845
+ # Defines how attachment metadata fields should be mapped to index
846
+ # fields. Before you can map a field, you must first create an index
847
+ # field with a matching type using the console or the `UpdateIndex`
848
+ # operation.
849
+ #
850
+ # If you specify the `AttachentFieldMappings` parameter, you must
851
+ # specify at least one field mapping.
852
+ # @return [Array<Types::ConfluenceAttachmentToIndexFieldMapping>]
853
+ #
854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceAttachmentConfiguration AWS API Documentation
855
+ #
856
+ class ConfluenceAttachmentConfiguration < Struct.new(
857
+ :crawl_attachments,
858
+ :attachment_field_mappings)
859
+ SENSITIVE = []
860
+ include Aws::Structure
861
+ end
862
+
863
+ # Defines the mapping between a field in the Confluence data source to a
864
+ # Amazon Kendra index field.
865
+ #
866
+ # You must first create the index field using the operation.
867
+ #
868
+ # @note When making an API call, you may pass ConfluenceAttachmentToIndexFieldMapping
869
+ # data as a hash:
870
+ #
871
+ # {
872
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
873
+ # date_field_format: "DataSourceDateFieldFormat",
874
+ # index_field_name: "IndexFieldName",
875
+ # }
876
+ #
877
+ # @!attribute [rw] data_source_field_name
878
+ # The name of the field in the data source.
879
+ #
880
+ # You must first create the index field using the operation.
881
+ # @return [String]
882
+ #
883
+ # @!attribute [rw] date_field_format
884
+ # The format for date fields in the data source. If the field
885
+ # specified in `DataSourceFieldName` is a date field you must specify
886
+ # the date format. If the field is not a date field, an exception is
887
+ # thrown.
888
+ # @return [String]
889
+ #
890
+ # @!attribute [rw] index_field_name
891
+ # The name of the index field to map to the Confluence data source
892
+ # field. The index field type must match the Confluence field type.
893
+ # @return [String]
894
+ #
895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceAttachmentToIndexFieldMapping AWS API Documentation
896
+ #
897
+ class ConfluenceAttachmentToIndexFieldMapping < Struct.new(
898
+ :data_source_field_name,
899
+ :date_field_format,
900
+ :index_field_name)
901
+ SENSITIVE = []
902
+ include Aws::Structure
903
+ end
904
+
905
+ # Specifies the blog settings for the Confluence data source. Blogs are
906
+ # always indexed unless filtered from the index by the
907
+ # `ExclusionPatterns` or `InclusionPatterns` fields in the data type.
908
+ #
909
+ # @note When making an API call, you may pass ConfluenceBlogConfiguration
910
+ # data as a hash:
911
+ #
912
+ # {
913
+ # blog_field_mappings: [
914
+ # {
915
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
916
+ # date_field_format: "DataSourceDateFieldFormat",
917
+ # index_field_name: "IndexFieldName",
918
+ # },
919
+ # ],
920
+ # }
921
+ #
922
+ # @!attribute [rw] blog_field_mappings
923
+ # Defines how blog metadata fields should be mapped to index fields.
924
+ # Before you can map a field, you must first create an index field
925
+ # with a matching type using the console or the `UpdateIndex`
926
+ # operation.
927
+ #
928
+ # If you specify the `BlogFieldMappings` parameter, you must specify
929
+ # at least one field mapping.
930
+ # @return [Array<Types::ConfluenceBlogToIndexFieldMapping>]
931
+ #
932
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceBlogConfiguration AWS API Documentation
933
+ #
934
+ class ConfluenceBlogConfiguration < Struct.new(
935
+ :blog_field_mappings)
936
+ SENSITIVE = []
937
+ include Aws::Structure
938
+ end
939
+
940
+ # Defines the mapping between a blog field in the Confluence data source
941
+ # to a Amazon Kendra index field.
942
+ #
943
+ # You must first create the index field using the operation.
944
+ #
945
+ # @note When making an API call, you may pass ConfluenceBlogToIndexFieldMapping
946
+ # data as a hash:
947
+ #
948
+ # {
949
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
950
+ # date_field_format: "DataSourceDateFieldFormat",
951
+ # index_field_name: "IndexFieldName",
952
+ # }
953
+ #
954
+ # @!attribute [rw] data_source_field_name
955
+ # The name of the field in the data source.
956
+ # @return [String]
957
+ #
958
+ # @!attribute [rw] date_field_format
959
+ # The format for date fields in the data source. If the field
960
+ # specified in `DataSourceFieldName` is a date field you must specify
961
+ # the date format. If the field is not a date field, an exception is
962
+ # thrown.
963
+ # @return [String]
964
+ #
965
+ # @!attribute [rw] index_field_name
966
+ # The name of the index field to map to the Confluence data source
967
+ # field. The index field type must match the Confluence field type.
968
+ # @return [String]
969
+ #
970
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceBlogToIndexFieldMapping AWS API Documentation
971
+ #
972
+ class ConfluenceBlogToIndexFieldMapping < Struct.new(
973
+ :data_source_field_name,
974
+ :date_field_format,
975
+ :index_field_name)
976
+ SENSITIVE = []
977
+ include Aws::Structure
978
+ end
979
+
980
+ # Provides configuration information for data sources that connect to
981
+ # Confluence.
982
+ #
983
+ # @note When making an API call, you may pass ConfluenceConfiguration
984
+ # data as a hash:
985
+ #
986
+ # {
987
+ # server_url: "Url", # required
988
+ # secret_arn: "SecretArn", # required
989
+ # version: "SERVER", # required, accepts SERVER
990
+ # space_configuration: {
991
+ # crawl_personal_spaces: false,
992
+ # crawl_archived_spaces: false,
993
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
994
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
995
+ # space_field_mappings: [
996
+ # {
997
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
998
+ # date_field_format: "DataSourceDateFieldFormat",
999
+ # index_field_name: "IndexFieldName",
1000
+ # },
1001
+ # ],
1002
+ # },
1003
+ # page_configuration: {
1004
+ # page_field_mappings: [
1005
+ # {
1006
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1007
+ # date_field_format: "DataSourceDateFieldFormat",
1008
+ # index_field_name: "IndexFieldName",
1009
+ # },
1010
+ # ],
1011
+ # },
1012
+ # blog_configuration: {
1013
+ # blog_field_mappings: [
1014
+ # {
1015
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
1016
+ # date_field_format: "DataSourceDateFieldFormat",
1017
+ # index_field_name: "IndexFieldName",
1018
+ # },
1019
+ # ],
1020
+ # },
1021
+ # attachment_configuration: {
1022
+ # crawl_attachments: false,
1023
+ # attachment_field_mappings: [
1024
+ # {
1025
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1026
+ # date_field_format: "DataSourceDateFieldFormat",
1027
+ # index_field_name: "IndexFieldName",
1028
+ # },
1029
+ # ],
1030
+ # },
1031
+ # vpc_configuration: {
1032
+ # subnet_ids: ["SubnetId"], # required
1033
+ # security_group_ids: ["VpcSecurityGroupId"], # required
1034
+ # },
1035
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1036
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1037
+ # }
1038
+ #
1039
+ # @!attribute [rw] server_url
1040
+ # The URL of your Confluence instance. Use the full URL of the server.
1041
+ # For example, `https://server.example.com:port/`. You can also use an
1042
+ # IP address, for example, `https://192.168.1.113/`.
1043
+ # @return [String]
1044
+ #
1045
+ # @!attribute [rw] secret_arn
1046
+ # The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that
1047
+ # contains the key/value pairs required to connect to your Confluence
1048
+ # server. The secret must contain a JSON structure with the following
1049
+ # keys:
1050
+ #
1051
+ # * username - The user name of a user with administrative privileges
1052
+ # for the Confluence server.
1053
+ #
1054
+ # * password - The password associated with the user logging in to the
1055
+ # Confluence server.
1056
+ # @return [String]
1057
+ #
1058
+ # @!attribute [rw] version
1059
+ # Specifies the version of the Confluence installation that you are
1060
+ # connecting to.
1061
+ # @return [String]
1062
+ #
1063
+ # @!attribute [rw] space_configuration
1064
+ # Specifies configuration information for indexing Confluence spaces.
1065
+ # @return [Types::ConfluenceSpaceConfiguration]
1066
+ #
1067
+ # @!attribute [rw] page_configuration
1068
+ # Specifies configuration information for indexing Confluence pages.
1069
+ # @return [Types::ConfluencePageConfiguration]
1070
+ #
1071
+ # @!attribute [rw] blog_configuration
1072
+ # Specifies configuration information for indexing Confluence blogs.
1073
+ # @return [Types::ConfluenceBlogConfiguration]
1074
+ #
1075
+ # @!attribute [rw] attachment_configuration
1076
+ # Specifies configuration information for indexing attachments to
1077
+ # Confluence blogs and pages.
1078
+ # @return [Types::ConfluenceAttachmentConfiguration]
1079
+ #
1080
+ # @!attribute [rw] vpc_configuration
1081
+ # Specifies the information for connecting to an Amazon VPC.
1082
+ # @return [Types::DataSourceVpcConfiguration]
1083
+ #
1084
+ # @!attribute [rw] inclusion_patterns
1085
+ # A list of regular expression patterns that apply to a URL on the
1086
+ # Confluence server. An inclusion pattern can apply to a blog post, a
1087
+ # page, a space, or an attachment. Items that match the patterns are
1088
+ # included in the index. Items that don't match the pattern are
1089
+ # excluded from the index. If an item matches both an inclusion
1090
+ # pattern and an exclusion pattern, the item isn't included in the
1091
+ # index.
1092
+ # @return [Array<String>]
1093
+ #
1094
+ # @!attribute [rw] exclusion_patterns
1095
+ # A list of regular expression patterns that apply to a URL on the
1096
+ # Confluence server. An exclusion pattern can apply to a blog post, a
1097
+ # page, a space, or an attachment. Items that match the pattern are
1098
+ # excluded from the index. Items that don't match the pattern are
1099
+ # included in the index. If a item matches both an exclusion pattern
1100
+ # and an inclusion pattern, the item isn't included in the index.
1101
+ # @return [Array<String>]
1102
+ #
1103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceConfiguration AWS API Documentation
1104
+ #
1105
+ class ConfluenceConfiguration < Struct.new(
1106
+ :server_url,
1107
+ :secret_arn,
1108
+ :version,
1109
+ :space_configuration,
1110
+ :page_configuration,
1111
+ :blog_configuration,
1112
+ :attachment_configuration,
1113
+ :vpc_configuration,
1114
+ :inclusion_patterns,
1115
+ :exclusion_patterns)
1116
+ SENSITIVE = []
1117
+ include Aws::Structure
1118
+ end
1119
+
1120
+ # Specifies the page settings for the Confluence data source.
1121
+ #
1122
+ # @note When making an API call, you may pass ConfluencePageConfiguration
1123
+ # data as a hash:
1124
+ #
1125
+ # {
1126
+ # page_field_mappings: [
1127
+ # {
1128
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1129
+ # date_field_format: "DataSourceDateFieldFormat",
1130
+ # index_field_name: "IndexFieldName",
1131
+ # },
1132
+ # ],
1133
+ # }
1134
+ #
1135
+ # @!attribute [rw] page_field_mappings
1136
+ # Defines how page metadata fields should be mapped to index fields.
1137
+ # Before you can map a field, you must first create an index field
1138
+ # with a matching type using the console or the `UpdateIndex`
1139
+ # operation.
1140
+ #
1141
+ # If you specify the `PageFieldMappings` parameter, you must specify
1142
+ # at least one field mapping.
1143
+ # @return [Array<Types::ConfluencePageToIndexFieldMapping>]
1144
+ #
1145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluencePageConfiguration AWS API Documentation
1146
+ #
1147
+ class ConfluencePageConfiguration < Struct.new(
1148
+ :page_field_mappings)
1149
+ SENSITIVE = []
1150
+ include Aws::Structure
1151
+ end
1152
+
1153
+ # Defines the mapping between a field in the Confluence data source to a
1154
+ # Amazon Kendra index field.
1155
+ #
1156
+ # You must first create the index field using the operation.
1157
+ #
1158
+ # @note When making an API call, you may pass ConfluencePageToIndexFieldMapping
1159
+ # data as a hash:
1160
+ #
1161
+ # {
1162
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1163
+ # date_field_format: "DataSourceDateFieldFormat",
1164
+ # index_field_name: "IndexFieldName",
1165
+ # }
1166
+ #
1167
+ # @!attribute [rw] data_source_field_name
1168
+ # The name of the field in the data source.
1169
+ # @return [String]
1170
+ #
1171
+ # @!attribute [rw] date_field_format
1172
+ # The format for date fields in the data source. If the field
1173
+ # specified in `DataSourceFieldName` is a date field you must specify
1174
+ # the date format. If the field is not a date field, an exception is
1175
+ # thrown.
1176
+ # @return [String]
1177
+ #
1178
+ # @!attribute [rw] index_field_name
1179
+ # The name of the index field to map to the Confluence data source
1180
+ # field. The index field type must match the Confluence field type.
1181
+ # @return [String]
1182
+ #
1183
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluencePageToIndexFieldMapping AWS API Documentation
1184
+ #
1185
+ class ConfluencePageToIndexFieldMapping < Struct.new(
1186
+ :data_source_field_name,
1187
+ :date_field_format,
1188
+ :index_field_name)
1189
+ SENSITIVE = []
1190
+ include Aws::Structure
1191
+ end
1192
+
1193
+ # Specifies the configuration for indexing Confluence spaces.
1194
+ #
1195
+ # @note When making an API call, you may pass ConfluenceSpaceConfiguration
1196
+ # data as a hash:
1197
+ #
1198
+ # {
1199
+ # crawl_personal_spaces: false,
1200
+ # crawl_archived_spaces: false,
1201
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
1202
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
1203
+ # space_field_mappings: [
1204
+ # {
1205
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1206
+ # date_field_format: "DataSourceDateFieldFormat",
1207
+ # index_field_name: "IndexFieldName",
1208
+ # },
1209
+ # ],
1210
+ # }
1211
+ #
1212
+ # @!attribute [rw] crawl_personal_spaces
1213
+ # Specifies whether Amazon Kendra should index personal spaces. Users
1214
+ # can add restrictions to items in personal spaces. If personal spaces
1215
+ # are indexed, queries without user context information may return
1216
+ # restricted items from a personal space in their results. For more
1217
+ # information, see [Filtering on user context][1].
1218
+ #
1219
+ #
1220
+ #
1221
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html
1222
+ # @return [Boolean]
1223
+ #
1224
+ # @!attribute [rw] crawl_archived_spaces
1225
+ # Specifies whether Amazon Kendra should index archived spaces.
1226
+ # @return [Boolean]
1227
+ #
1228
+ # @!attribute [rw] include_spaces
1229
+ # A list of space keys for Confluence spaces. If you include a key,
1230
+ # the blogs, documents, and attachments in the space are indexed.
1231
+ # Spaces that aren't in the list aren't indexed. A space in the list
1232
+ # must exist. Otherwise, Amazon Kendra logs an error when the data
1233
+ # source is synchronized. If a space is in both the `IncludeSpaces`
1234
+ # and the `ExcludeSpaces` list, the space is excluded.
1235
+ # @return [Array<String>]
1236
+ #
1237
+ # @!attribute [rw] exclude_spaces
1238
+ # A list of space keys of Confluence spaces. If you include a key, the
1239
+ # blogs, documents, and attachments in the space are not indexed. If a
1240
+ # space is in both the `ExcludeSpaces` and the `IncludeSpaces` list,
1241
+ # the space is excluded.
1242
+ # @return [Array<String>]
1243
+ #
1244
+ # @!attribute [rw] space_field_mappings
1245
+ # Defines how space metadata fields should be mapped to index fields.
1246
+ # Before you can map a field, you must first create an index field
1247
+ # with a matching type using the console or the `UpdateIndex`
1248
+ # operation.
1249
+ #
1250
+ # If you specify the `SpaceFieldMappings` parameter, you must specify
1251
+ # at least one field mapping.
1252
+ # @return [Array<Types::ConfluenceSpaceToIndexFieldMapping>]
1253
+ #
1254
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceSpaceConfiguration AWS API Documentation
1255
+ #
1256
+ class ConfluenceSpaceConfiguration < Struct.new(
1257
+ :crawl_personal_spaces,
1258
+ :crawl_archived_spaces,
1259
+ :include_spaces,
1260
+ :exclude_spaces,
1261
+ :space_field_mappings)
1262
+ SENSITIVE = []
1263
+ include Aws::Structure
1264
+ end
1265
+
1266
+ # Defines the mapping between a field in the Confluence data source to a
1267
+ # Amazon Kendra index field.
1268
+ #
1269
+ # You must first create the index field using the operation.
1270
+ #
1271
+ # @note When making an API call, you may pass ConfluenceSpaceToIndexFieldMapping
1272
+ # data as a hash:
1273
+ #
1274
+ # {
1275
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1276
+ # date_field_format: "DataSourceDateFieldFormat",
1277
+ # index_field_name: "IndexFieldName",
1278
+ # }
1279
+ #
1280
+ # @!attribute [rw] data_source_field_name
1281
+ # The name of the field in the data source.
1282
+ # @return [String]
1283
+ #
1284
+ # @!attribute [rw] date_field_format
1285
+ # The format for date fields in the data source. If the field
1286
+ # specified in `DataSourceFieldName` is a date field you must specify
1287
+ # the date format. If the field is not a date field, an exception is
1288
+ # thrown.
1289
+ # @return [String]
1290
+ #
1291
+ # @!attribute [rw] index_field_name
1292
+ # The name of the index field to map to the Confluence data source
1293
+ # field. The index field type must match the Confluence field type.
1294
+ # @return [String]
1295
+ #
1296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ConfluenceSpaceToIndexFieldMapping AWS API Documentation
1297
+ #
1298
+ class ConfluenceSpaceToIndexFieldMapping < Struct.new(
1299
+ :data_source_field_name,
1300
+ :date_field_format,
1301
+ :index_field_name)
1302
+ SENSITIVE = []
1303
+ include Aws::Structure
1304
+ end
1305
+
821
1306
  # Provides the information necessary to connect to a database.
822
1307
  #
823
1308
  # @note When making an API call, you may pass ConnectionConfiguration
@@ -879,11 +1364,12 @@ module Aws::Kendra
879
1364
  # {
880
1365
  # name: "DataSourceName", # required
881
1366
  # index_id: "IndexId", # required
882
- # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW
883
- # configuration: { # required
1367
+ # type: "S3", # required, accepts S3, SHAREPOINT, DATABASE, SALESFORCE, ONEDRIVE, SERVICENOW, CUSTOM, CONFLUENCE
1368
+ # configuration: {
884
1369
  # s3_configuration: {
885
1370
  # bucket_name: "S3BucketName", # required
886
1371
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
1372
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
887
1373
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
888
1374
  # documents_metadata_configuration: {
889
1375
  # s3_prefix: "S3ObjectKey",
@@ -1070,16 +1556,69 @@ module Aws::Kendra
1070
1556
  # ],
1071
1557
  # },
1072
1558
  # },
1559
+ # confluence_configuration: {
1560
+ # server_url: "Url", # required
1561
+ # secret_arn: "SecretArn", # required
1562
+ # version: "SERVER", # required, accepts SERVER
1563
+ # space_configuration: {
1564
+ # crawl_personal_spaces: false,
1565
+ # crawl_archived_spaces: false,
1566
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
1567
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
1568
+ # space_field_mappings: [
1569
+ # {
1570
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
1571
+ # date_field_format: "DataSourceDateFieldFormat",
1572
+ # index_field_name: "IndexFieldName",
1573
+ # },
1574
+ # ],
1575
+ # },
1576
+ # page_configuration: {
1577
+ # page_field_mappings: [
1578
+ # {
1579
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1580
+ # date_field_format: "DataSourceDateFieldFormat",
1581
+ # index_field_name: "IndexFieldName",
1582
+ # },
1583
+ # ],
1584
+ # },
1585
+ # blog_configuration: {
1586
+ # blog_field_mappings: [
1587
+ # {
1588
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
1589
+ # date_field_format: "DataSourceDateFieldFormat",
1590
+ # index_field_name: "IndexFieldName",
1591
+ # },
1592
+ # ],
1593
+ # },
1594
+ # attachment_configuration: {
1595
+ # crawl_attachments: false,
1596
+ # attachment_field_mappings: [
1597
+ # {
1598
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
1599
+ # date_field_format: "DataSourceDateFieldFormat",
1600
+ # index_field_name: "IndexFieldName",
1601
+ # },
1602
+ # ],
1603
+ # },
1604
+ # vpc_configuration: {
1605
+ # subnet_ids: ["SubnetId"], # required
1606
+ # security_group_ids: ["VpcSecurityGroupId"], # required
1607
+ # },
1608
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1609
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1610
+ # },
1073
1611
  # },
1074
1612
  # description: "Description",
1075
1613
  # schedule: "ScanSchedule",
1076
- # role_arn: "RoleArn", # required
1614
+ # role_arn: "RoleArn",
1077
1615
  # tags: [
1078
1616
  # {
1079
1617
  # key: "TagKey", # required
1080
1618
  # value: "TagValue", # required
1081
1619
  # },
1082
1620
  # ],
1621
+ # client_token: "ClientTokenName",
1083
1622
  # }
1084
1623
  #
1085
1624
  # @!attribute [rw] name
@@ -1099,6 +1638,13 @@ module Aws::Kendra
1099
1638
  # @!attribute [rw] configuration
1100
1639
  # The connector configuration information that is required to access
1101
1640
  # the repository.
1641
+ #
1642
+ # You can't specify the `Configuration` parameter when the `Type`
1643
+ # parameter is set to `CUSTOM`. If you do, you receive a
1644
+ # `ValidationException` exception.
1645
+ #
1646
+ # The `Configuration` parameter is required for all other data
1647
+ # sources.
1102
1648
  # @return [Types::DataSourceConfiguration]
1103
1649
  #
1104
1650
  # @!attribute [rw] description
@@ -1110,6 +1656,10 @@ module Aws::Kendra
1110
1656
  # your repository and update the index. If you don't set a schedule
1111
1657
  # Amazon Kendra will not periodically update the index. You can call
1112
1658
  # the `StartDataSourceSyncJob` operation to update the index.
1659
+ #
1660
+ # You can't specify the `Schedule` parameter when the `Type`
1661
+ # parameter is set to `CUSTOM`. If you do, you receive a
1662
+ # `ValidationException` exception.
1113
1663
  # @return [String]
1114
1664
  #
1115
1665
  # @!attribute [rw] role_arn
@@ -1117,6 +1667,12 @@ module Aws::Kendra
1117
1667
  # the data source. For more information, see [IAM Roles for Amazon
1118
1668
  # Kendra][1].
1119
1669
  #
1670
+ # You can't specify the `RoleArn` parameter when the `Type` parameter
1671
+ # is set to `CUSTOM`. If you do, you receive a `ValidationException`
1672
+ # exception.
1673
+ #
1674
+ # The `RoleArn` parameter is required for all other data sources.
1675
+ #
1120
1676
  #
1121
1677
  #
1122
1678
  # [1]: https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html
@@ -1128,6 +1684,15 @@ module Aws::Kendra
1128
1684
  # access to resources.
1129
1685
  # @return [Array<Types::Tag>]
1130
1686
  #
1687
+ # @!attribute [rw] client_token
1688
+ # A token that you provide to identify the request to create a data
1689
+ # source. Multiple calls to the `CreateDataSource` operation with the
1690
+ # same client token will create only one data source.
1691
+ #
1692
+ # **A suitable default value is auto-generated.** You should normally
1693
+ # not need to pass this option.
1694
+ # @return [String]
1695
+ #
1131
1696
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateDataSourceRequest AWS API Documentation
1132
1697
  #
1133
1698
  class CreateDataSourceRequest < Struct.new(
@@ -1138,7 +1703,8 @@ module Aws::Kendra
1138
1703
  :description,
1139
1704
  :schedule,
1140
1705
  :role_arn,
1141
- :tags)
1706
+ :tags,
1707
+ :client_token)
1142
1708
  SENSITIVE = []
1143
1709
  include Aws::Structure
1144
1710
  end
@@ -1173,6 +1739,8 @@ module Aws::Kendra
1173
1739
  # value: "TagValue", # required
1174
1740
  # },
1175
1741
  # ],
1742
+ # file_format: "CSV", # accepts CSV, CSV_WITH_HEADER, JSON
1743
+ # client_token: "ClientTokenName",
1176
1744
  # }
1177
1745
  #
1178
1746
  # @!attribute [rw] index_id
@@ -1207,6 +1775,30 @@ module Aws::Kendra
1207
1775
  # to resources.
1208
1776
  # @return [Array<Types::Tag>]
1209
1777
  #
1778
+ # @!attribute [rw] file_format
1779
+ # The format of the input file. You can choose between a basic CSV
1780
+ # format, a CSV format that includes customs attributes in a header,
1781
+ # and a JSON format that includes custom attributes.
1782
+ #
1783
+ # The format must match the format of the file stored in the S3 bucket
1784
+ # identified in the `S3Path` parameter.
1785
+ #
1786
+ # For more information, see [Adding questions and answers][1].
1787
+ #
1788
+ #
1789
+ #
1790
+ # [1]: https://docs.aws.amazon.com/kendra/latest/dg/in-creating-faq.html
1791
+ # @return [String]
1792
+ #
1793
+ # @!attribute [rw] client_token
1794
+ # A token that you provide to identify the request to create a FAQ.
1795
+ # Multiple calls to the `CreateFaqRequest` operation with the same
1796
+ # client token will create only one FAQ.
1797
+ #
1798
+ # **A suitable default value is auto-generated.** You should normally
1799
+ # not need to pass this option.
1800
+ # @return [String]
1801
+ #
1210
1802
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/CreateFaqRequest AWS API Documentation
1211
1803
  #
1212
1804
  class CreateFaqRequest < Struct.new(
@@ -1215,7 +1807,9 @@ module Aws::Kendra
1215
1807
  :description,
1216
1808
  :s3_path,
1217
1809
  :role_arn,
1218
- :tags)
1810
+ :tags,
1811
+ :file_format,
1812
+ :client_token)
1219
1813
  SENSITIVE = []
1220
1814
  include Aws::Structure
1221
1815
  end
@@ -1268,10 +1862,11 @@ module Aws::Kendra
1268
1862
  # @return [String]
1269
1863
  #
1270
1864
  # @!attribute [rw] role_arn
1271
- # An IAM role that gives Amazon Kendra permissions to access your
1272
- # Amazon CloudWatch logs and metrics. This is also the role used when
1273
- # you use the `BatchPutDocument` operation to index documents from an
1274
- # Amazon S3 bucket.
1865
+ # An AWS Identity and Access Management (IAM) role that gives Amazon
1866
+ # Kendra permissions to access your Amazon CloudWatch logs and
1867
+ # metrics. This is also the role used when you use the
1868
+ # `BatchPutDocument` operation to index documents from an Amazon S3
1869
+ # bucket.
1275
1870
  # @return [String]
1276
1871
  #
1277
1872
  # @!attribute [rw] server_side_encryption_configuration
@@ -1287,7 +1882,7 @@ module Aws::Kendra
1287
1882
  # @!attribute [rw] client_token
1288
1883
  # A token that you provide to identify the request to create an index.
1289
1884
  # Multiple calls to the `CreateIndex` operation with the same client
1290
- # token will create only one index.”
1885
+ # token will create only one index.
1291
1886
  #
1292
1887
  # **A suitable default value is auto-generated.** You should normally
1293
1888
  # not need to pass this option.
@@ -1335,6 +1930,7 @@ module Aws::Kendra
1335
1930
  # s3_configuration: {
1336
1931
  # bucket_name: "S3BucketName", # required
1337
1932
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
1933
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1338
1934
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
1339
1935
  # documents_metadata_configuration: {
1340
1936
  # s3_prefix: "S3ObjectKey",
@@ -1521,20 +2117,73 @@ module Aws::Kendra
1521
2117
  # ],
1522
2118
  # },
1523
2119
  # },
2120
+ # confluence_configuration: {
2121
+ # server_url: "Url", # required
2122
+ # secret_arn: "SecretArn", # required
2123
+ # version: "SERVER", # required, accepts SERVER
2124
+ # space_configuration: {
2125
+ # crawl_personal_spaces: false,
2126
+ # crawl_archived_spaces: false,
2127
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
2128
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
2129
+ # space_field_mappings: [
2130
+ # {
2131
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
2132
+ # date_field_format: "DataSourceDateFieldFormat",
2133
+ # index_field_name: "IndexFieldName",
2134
+ # },
2135
+ # ],
2136
+ # },
2137
+ # page_configuration: {
2138
+ # page_field_mappings: [
2139
+ # {
2140
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
2141
+ # date_field_format: "DataSourceDateFieldFormat",
2142
+ # index_field_name: "IndexFieldName",
2143
+ # },
2144
+ # ],
2145
+ # },
2146
+ # blog_configuration: {
2147
+ # blog_field_mappings: [
2148
+ # {
2149
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
2150
+ # date_field_format: "DataSourceDateFieldFormat",
2151
+ # index_field_name: "IndexFieldName",
2152
+ # },
2153
+ # ],
2154
+ # },
2155
+ # attachment_configuration: {
2156
+ # crawl_attachments: false,
2157
+ # attachment_field_mappings: [
2158
+ # {
2159
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
2160
+ # date_field_format: "DataSourceDateFieldFormat",
2161
+ # index_field_name: "IndexFieldName",
2162
+ # },
2163
+ # ],
2164
+ # },
2165
+ # vpc_configuration: {
2166
+ # subnet_ids: ["SubnetId"], # required
2167
+ # security_group_ids: ["VpcSecurityGroupId"], # required
2168
+ # },
2169
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2170
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
2171
+ # },
1524
2172
  # }
1525
2173
  #
1526
2174
  # @!attribute [rw] s3_configuration
1527
- # Provides information to create a connector for a document repository
1528
- # in an Amazon S3 bucket.
2175
+ # Provides information to create a data source connector for a
2176
+ # document repository in an Amazon S3 bucket.
1529
2177
  # @return [Types::S3DataSourceConfiguration]
1530
2178
  #
1531
2179
  # @!attribute [rw] share_point_configuration
1532
- # Provides information necessary to create a connector for a Microsoft
1533
- # SharePoint site.
2180
+ # Provides information necessary to create a data source connector for
2181
+ # a Microsoft SharePoint site.
1534
2182
  # @return [Types::SharePointConfiguration]
1535
2183
  #
1536
2184
  # @!attribute [rw] database_configuration
1537
- # Provides information necessary to create a connector for a database.
2185
+ # Provides information necessary to create a data source connector for
2186
+ # a database.
1538
2187
  # @return [Types::DatabaseConfiguration]
1539
2188
  #
1540
2189
  # @!attribute [rw] salesforce_configuration
@@ -1552,6 +2201,11 @@ module Aws::Kendra
1552
2201
  # instances.
1553
2202
  # @return [Types::ServiceNowConfiguration]
1554
2203
  #
2204
+ # @!attribute [rw] confluence_configuration
2205
+ # Provides configuration information for connecting to a Confluence
2206
+ # data source.
2207
+ # @return [Types::ConfluenceConfiguration]
2208
+ #
1555
2209
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DataSourceConfiguration AWS API Documentation
1556
2210
  #
1557
2211
  class DataSourceConfiguration < Struct.new(
@@ -1560,7 +2214,8 @@ module Aws::Kendra
1560
2214
  :database_configuration,
1561
2215
  :salesforce_configuration,
1562
2216
  :one_drive_configuration,
1563
- :service_now_configuration)
2217
+ :service_now_configuration,
2218
+ :confluence_configuration)
1564
2219
  SENSITIVE = []
1565
2220
  include Aws::Structure
1566
2221
  end
@@ -1647,7 +2302,7 @@ module Aws::Kendra
1647
2302
  # @!attribute [rw] metrics
1648
2303
  # Maps a batch delete document request to a specific data source sync
1649
2304
  # job. This is optional and should only be supplied when documents are
1650
- # deleted by a connector.
2305
+ # deleted by a data source connector.
1651
2306
  # @return [Types::DataSourceSyncJobMetrics]
1652
2307
  #
1653
2308
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DataSourceSyncJob AWS API Documentation
@@ -1694,7 +2349,7 @@ module Aws::Kendra
1694
2349
 
1695
2350
  # Maps a batch delete document request to a specific data source sync
1696
2351
  # job. This is optional and should only be supplied when documents are
1697
- # deleted by a connector.
2352
+ # deleted by a data source connector.
1698
2353
  #
1699
2354
  # @!attribute [rw] documents_added
1700
2355
  # The number of documents added from the data source up to now in the
@@ -2115,6 +2770,10 @@ module Aws::Kendra
2115
2770
  # the reason why the FAQ failed.
2116
2771
  # @return [String]
2117
2772
  #
2773
+ # @!attribute [rw] file_format
2774
+ # The file format used by the input files for the FAQ.
2775
+ # @return [String]
2776
+ #
2118
2777
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/DescribeFaqResponse AWS API Documentation
2119
2778
  #
2120
2779
  class DescribeFaqResponse < Struct.new(
@@ -2127,7 +2786,8 @@ module Aws::Kendra
2127
2786
  :s3_path,
2128
2787
  :status,
2129
2788
  :role_arn,
2130
- :error_message)
2789
+ :error_message,
2790
+ :file_format)
2131
2791
  SENSITIVE = []
2132
2792
  include Aws::Structure
2133
2793
  end
@@ -2582,6 +3242,10 @@ module Aws::Kendra
2582
3242
  # The UNIX datetime that the FAQ was last updated.
2583
3243
  # @return [Time]
2584
3244
  #
3245
+ # @!attribute [rw] file_format
3246
+ # The file type used to create the FAQ.
3247
+ # @return [String]
3248
+ #
2585
3249
  # @see http://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/FaqSummary AWS API Documentation
2586
3250
  #
2587
3251
  class FaqSummary < Struct.new(
@@ -2589,7 +3253,8 @@ module Aws::Kendra
2589
3253
  :name,
2590
3254
  :status,
2591
3255
  :created_at,
2592
- :updated_at)
3256
+ :updated_at,
3257
+ :file_format)
2593
3258
  SENSITIVE = []
2594
3259
  include Aws::Structure
2595
3260
  end
@@ -3557,6 +4222,7 @@ module Aws::Kendra
3557
4222
  # {
3558
4223
  # bucket_name: "S3BucketName", # required
3559
4224
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
4225
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3560
4226
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
3561
4227
  # documents_metadata_configuration: {
3562
4228
  # s3_prefix: "S3ObjectKey",
@@ -3575,10 +4241,23 @@ module Aws::Kendra
3575
4241
  # the index.
3576
4242
  # @return [Array<String>]
3577
4243
  #
4244
+ # @!attribute [rw] inclusion_patterns
4245
+ # A list of glob patterns for documents that should be indexed. If a
4246
+ # document that matches an inclusion pattern also matches an exclusion
4247
+ # pattern, the document is not indexed.
4248
+ #
4249
+ # For more information about glob patterns, see [glob
4250
+ # (programming)][1] in *Wikipedia*.
4251
+ #
4252
+ #
4253
+ #
4254
+ # [1]: https://en.wikipedia.org/wiki/Glob_(programming)
4255
+ # @return [Array<String>]
4256
+ #
3578
4257
  # @!attribute [rw] exclusion_patterns
3579
4258
  # A list of glob patterns for documents that should not be indexed. If
3580
- # a document that matches an inclusion prefix also matches an
3581
- # exclusion pattern, the document is not indexed.
4259
+ # a document that matches an inclusion prefix or inclusion pattern
4260
+ # also matches an exclusion pattern, the document is not indexed.
3582
4261
  #
3583
4262
  # For more information about glob patterns, see [glob
3584
4263
  # (programming)][1] in *Wikipedia*.
@@ -3605,6 +4284,7 @@ module Aws::Kendra
3605
4284
  class S3DataSourceConfiguration < Struct.new(
3606
4285
  :bucket_name,
3607
4286
  :inclusion_prefixes,
4287
+ :inclusion_patterns,
3608
4288
  :exclusion_patterns,
3609
4289
  :documents_metadata_configuration,
3610
4290
  :access_control_list_configuration)
@@ -4926,6 +5606,7 @@ module Aws::Kendra
4926
5606
  # s3_configuration: {
4927
5607
  # bucket_name: "S3BucketName", # required
4928
5608
  # inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
5609
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4929
5610
  # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
4930
5611
  # documents_metadata_configuration: {
4931
5612
  # s3_prefix: "S3ObjectKey",
@@ -5112,6 +5793,58 @@ module Aws::Kendra
5112
5793
  # ],
5113
5794
  # },
5114
5795
  # },
5796
+ # confluence_configuration: {
5797
+ # server_url: "Url", # required
5798
+ # secret_arn: "SecretArn", # required
5799
+ # version: "SERVER", # required, accepts SERVER
5800
+ # space_configuration: {
5801
+ # crawl_personal_spaces: false,
5802
+ # crawl_archived_spaces: false,
5803
+ # include_spaces: ["ConfluenceSpaceIdentifier"],
5804
+ # exclude_spaces: ["ConfluenceSpaceIdentifier"],
5805
+ # space_field_mappings: [
5806
+ # {
5807
+ # data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
5808
+ # date_field_format: "DataSourceDateFieldFormat",
5809
+ # index_field_name: "IndexFieldName",
5810
+ # },
5811
+ # ],
5812
+ # },
5813
+ # page_configuration: {
5814
+ # page_field_mappings: [
5815
+ # {
5816
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
5817
+ # date_field_format: "DataSourceDateFieldFormat",
5818
+ # index_field_name: "IndexFieldName",
5819
+ # },
5820
+ # ],
5821
+ # },
5822
+ # blog_configuration: {
5823
+ # blog_field_mappings: [
5824
+ # {
5825
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
5826
+ # date_field_format: "DataSourceDateFieldFormat",
5827
+ # index_field_name: "IndexFieldName",
5828
+ # },
5829
+ # ],
5830
+ # },
5831
+ # attachment_configuration: {
5832
+ # crawl_attachments: false,
5833
+ # attachment_field_mappings: [
5834
+ # {
5835
+ # data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
5836
+ # date_field_format: "DataSourceDateFieldFormat",
5837
+ # index_field_name: "IndexFieldName",
5838
+ # },
5839
+ # ],
5840
+ # },
5841
+ # vpc_configuration: {
5842
+ # subnet_ids: ["SubnetId"], # required
5843
+ # security_group_ids: ["VpcSecurityGroupId"], # required
5844
+ # },
5845
+ # inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
5846
+ # exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
5847
+ # },
5115
5848
  # },
5116
5849
  # description: "Description",
5117
5850
  # schedule: "ScanSchedule",