aws-sdk-kendra 1.12.0 → 1.17.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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",