aws-sdk-customerprofiles 1.13.0 → 1.17.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -153,6 +153,52 @@ module Aws::CustomerProfiles
153
153
  include Aws::Structure
154
154
  end
155
155
 
156
+ # Configuration settings for how to perform the auto-merging of
157
+ # profiles.
158
+ #
159
+ # @note When making an API call, you may pass AutoMerging
160
+ # data as a hash:
161
+ #
162
+ # {
163
+ # enabled: false, # required
164
+ # consolidation: {
165
+ # matching_attributes_list: [ # required
166
+ # ["string1To255"],
167
+ # ],
168
+ # },
169
+ # conflict_resolution: {
170
+ # conflict_resolving_model: "RECENCY", # required, accepts RECENCY, SOURCE
171
+ # source_name: "string1To255",
172
+ # },
173
+ # }
174
+ #
175
+ # @!attribute [rw] enabled
176
+ # The flag that enables the auto-merging of duplicate profiles.
177
+ # @return [Boolean]
178
+ #
179
+ # @!attribute [rw] consolidation
180
+ # A list of matching attributes that represent matching criteria. If
181
+ # two profiles meet at least one of the requirements in the matching
182
+ # attributes list, they will be merged.
183
+ # @return [Types::Consolidation]
184
+ #
185
+ # @!attribute [rw] conflict_resolution
186
+ # How the auto-merging process should resolve conflicts between
187
+ # different profiles. For example, if Profile A and Profile B have the
188
+ # same `FirstName` and `LastName` (and that is the matching criteria),
189
+ # which `EmailAddress` should be used?
190
+ # @return [Types::ConflictResolution]
191
+ #
192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/AutoMerging AWS API Documentation
193
+ #
194
+ class AutoMerging < Struct.new(
195
+ :enabled,
196
+ :consolidation,
197
+ :conflict_resolution)
198
+ SENSITIVE = []
199
+ include Aws::Structure
200
+ end
201
+
156
202
  # The input you provided is invalid.
157
203
  #
158
204
  # @!attribute [rw] message
@@ -166,6 +212,43 @@ module Aws::CustomerProfiles
166
212
  include Aws::Structure
167
213
  end
168
214
 
215
+ # How the auto-merging process should resolve conflicts between
216
+ # different profiles.
217
+ #
218
+ # @note When making an API call, you may pass ConflictResolution
219
+ # data as a hash:
220
+ #
221
+ # {
222
+ # conflict_resolving_model: "RECENCY", # required, accepts RECENCY, SOURCE
223
+ # source_name: "string1To255",
224
+ # }
225
+ #
226
+ # @!attribute [rw] conflict_resolving_model
227
+ # How the auto-merging process should resolve conflicts between
228
+ # different profiles.
229
+ #
230
+ # * `RECENCY`\: Uses the data that was most recently updated.
231
+ #
232
+ # * `SOURCE`\: Uses the data from a specific source. For example, if a
233
+ # company has been aquired or two departments have merged, data from
234
+ # the specified source is used. If two duplicate profiles are from
235
+ # the same source, then `RECENCY` is used again.
236
+ # @return [String]
237
+ #
238
+ # @!attribute [rw] source_name
239
+ # The `ObjectType` name that is used to resolve profile merging
240
+ # conflicts when choosing `SOURCE` as the `ConflictResolvingModel`.
241
+ # @return [String]
242
+ #
243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ConflictResolution AWS API Documentation
244
+ #
245
+ class ConflictResolution < Struct.new(
246
+ :conflict_resolving_model,
247
+ :source_name)
248
+ SENSITIVE = []
249
+ include Aws::Structure
250
+ end
251
+
169
252
  # The operation to be performed on the provided source fields.
170
253
  #
171
254
  # @note When making an API call, you may pass ConnectorOperator
@@ -214,6 +297,29 @@ module Aws::CustomerProfiles
214
297
  include Aws::Structure
215
298
  end
216
299
 
300
+ # The matching criteria to be used during the auto-merging process.
301
+ #
302
+ # @note When making an API call, you may pass Consolidation
303
+ # data as a hash:
304
+ #
305
+ # {
306
+ # matching_attributes_list: [ # required
307
+ # ["string1To255"],
308
+ # ],
309
+ # }
310
+ #
311
+ # @!attribute [rw] matching_attributes_list
312
+ # A list of matching criteria.
313
+ # @return [Array<Array<String>>]
314
+ #
315
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/Consolidation AWS API Documentation
316
+ #
317
+ class Consolidation < Struct.new(
318
+ :matching_attributes_list)
319
+ SENSITIVE = []
320
+ include Aws::Structure
321
+ end
322
+
217
323
  # @note When making an API call, you may pass CreateDomainRequest
218
324
  # data as a hash:
219
325
  #
@@ -224,6 +330,28 @@ module Aws::CustomerProfiles
224
330
  # dead_letter_queue_url: "sqsQueueUrl",
225
331
  # matching: {
226
332
  # enabled: false, # required
333
+ # job_schedule: {
334
+ # day_of_the_week: "SUNDAY", # required, accepts SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
335
+ # time: "JobScheduleTime", # required
336
+ # },
337
+ # auto_merging: {
338
+ # enabled: false, # required
339
+ # consolidation: {
340
+ # matching_attributes_list: [ # required
341
+ # ["string1To255"],
342
+ # ],
343
+ # },
344
+ # conflict_resolution: {
345
+ # conflict_resolving_model: "RECENCY", # required, accepts RECENCY, SOURCE
346
+ # source_name: "string1To255",
347
+ # },
348
+ # },
349
+ # exporting_config: {
350
+ # s3_exporting: {
351
+ # s3_bucket_name: "s3BucketName", # required
352
+ # s3_key_name: "s3KeyNameCustomerOutputConfig",
353
+ # },
354
+ # },
227
355
  # },
228
356
  # tags: {
229
357
  # "TagKey" => "TagValue",
@@ -254,11 +382,16 @@ module Aws::CustomerProfiles
254
382
  # @return [String]
255
383
  #
256
384
  # @!attribute [rw] matching
257
- # The process of matching duplicate profiles. If Matching = true,
258
- # Amazon Connect Customer Profiles starts a weekly batch process every
385
+ # The process of matching duplicate profiles. If `Matching` = `true`,
386
+ # Amazon Connect Customer Profiles starts a weekly batch process
387
+ # called Identity Resolution Job. If you do not specify a date and
388
+ # time for Identity Resolution Job to run, by default it runs every
259
389
  # Saturday at 12AM UTC to detect duplicate profiles in your domains.
260
- # After that batch process completes, use the [GetMatches][1] API to
261
- # return and review the results.
390
+ #
391
+ # After the Identity Resolution Job completes, use the [GetMatches][1]
392
+ # API to return and review the results. Or, if you have configured
393
+ # `ExportingConfig` in the `MatchingRequest`, you can download the
394
+ # results from S3.
262
395
  #
263
396
  #
264
397
  #
@@ -304,11 +437,16 @@ module Aws::CustomerProfiles
304
437
  # @return [String]
305
438
  #
306
439
  # @!attribute [rw] matching
307
- # The process of matching duplicate profiles. If Matching = true,
308
- # Amazon Connect Customer Profiles starts a weekly batch process every
440
+ # The process of matching duplicate profiles. If `Matching` = `true`,
441
+ # Amazon Connect Customer Profiles starts a weekly batch process
442
+ # called Identity Resolution Job. If you do not specify a date and
443
+ # time for Identity Resolution Job to run, by default it runs every
309
444
  # Saturday at 12AM UTC to detect duplicate profiles in your domains.
310
- # After that batch process completes, use the [GetMatches][1] API to
311
- # return and review the results.
445
+ #
446
+ # After the Identity Resolution Job completes, use the [GetMatches][1]
447
+ # API to return and review the results. Or, if you have configured
448
+ # `ExportingConfig` in the `MatchingRequest`, you can download the
449
+ # results from S3.
312
450
  #
313
451
  #
314
452
  #
@@ -822,6 +960,57 @@ module Aws::CustomerProfiles
822
960
  include Aws::Structure
823
961
  end
824
962
 
963
+ # Configuration information about the S3 bucket where Identity
964
+ # Resolution Jobs writes result files.
965
+ #
966
+ # <note markdown="1"> You need to give Customer Profiles service principal write permission
967
+ # to your S3 bucket. Otherwise, you'll get an exception in the API
968
+ # response. For an example policy, see [Amazon Connect Customer Profiles
969
+ # cross-service confused deputy prevention][1].
970
+ #
971
+ # </note>
972
+ #
973
+ #
974
+ #
975
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/cross-service-confused-deputy-prevention.html#customer-profiles-cross-service
976
+ #
977
+ # @note When making an API call, you may pass ExportingConfig
978
+ # data as a hash:
979
+ #
980
+ # {
981
+ # s3_exporting: {
982
+ # s3_bucket_name: "s3BucketName", # required
983
+ # s3_key_name: "s3KeyNameCustomerOutputConfig",
984
+ # },
985
+ # }
986
+ #
987
+ # @!attribute [rw] s3_exporting
988
+ # The S3 location where Identity Resolution Jobs write result files.
989
+ # @return [Types::S3ExportingConfig]
990
+ #
991
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ExportingConfig AWS API Documentation
992
+ #
993
+ class ExportingConfig < Struct.new(
994
+ :s3_exporting)
995
+ SENSITIVE = []
996
+ include Aws::Structure
997
+ end
998
+
999
+ # The S3 location where Identity Resolution Jobs write result files.
1000
+ #
1001
+ # @!attribute [rw] s3_exporting
1002
+ # Information about the S3 location where Identity Resolution Jobs
1003
+ # write result files.
1004
+ # @return [Types::S3ExportingLocation]
1005
+ #
1006
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ExportingLocation AWS API Documentation
1007
+ #
1008
+ class ExportingLocation < Struct.new(
1009
+ :s3_exporting)
1010
+ SENSITIVE = []
1011
+ include Aws::Structure
1012
+ end
1013
+
825
1014
  # A duplicate customer profile that is to be merged into a main profile.
826
1015
  #
827
1016
  # @note When making an API call, you may pass FieldSourceProfileIds
@@ -1080,6 +1269,74 @@ module Aws::CustomerProfiles
1080
1269
  include Aws::Structure
1081
1270
  end
1082
1271
 
1272
+ # @note When making an API call, you may pass GetAutoMergingPreviewRequest
1273
+ # data as a hash:
1274
+ #
1275
+ # {
1276
+ # domain_name: "name", # required
1277
+ # consolidation: { # required
1278
+ # matching_attributes_list: [ # required
1279
+ # ["string1To255"],
1280
+ # ],
1281
+ # },
1282
+ # conflict_resolution: { # required
1283
+ # conflict_resolving_model: "RECENCY", # required, accepts RECENCY, SOURCE
1284
+ # source_name: "string1To255",
1285
+ # },
1286
+ # }
1287
+ #
1288
+ # @!attribute [rw] domain_name
1289
+ # The unique name of the domain.
1290
+ # @return [String]
1291
+ #
1292
+ # @!attribute [rw] consolidation
1293
+ # A list of matching attributes that represent matching criteria.
1294
+ # @return [Types::Consolidation]
1295
+ #
1296
+ # @!attribute [rw] conflict_resolution
1297
+ # How the auto-merging process should resolve conflicts between
1298
+ # different profiles.
1299
+ # @return [Types::ConflictResolution]
1300
+ #
1301
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetAutoMergingPreviewRequest AWS API Documentation
1302
+ #
1303
+ class GetAutoMergingPreviewRequest < Struct.new(
1304
+ :domain_name,
1305
+ :consolidation,
1306
+ :conflict_resolution)
1307
+ SENSITIVE = []
1308
+ include Aws::Structure
1309
+ end
1310
+
1311
+ # @!attribute [rw] domain_name
1312
+ # The unique name of the domain.
1313
+ # @return [String]
1314
+ #
1315
+ # @!attribute [rw] number_of_matches_in_sample
1316
+ # The number of match groups in the domain that have been reviewed in
1317
+ # this preview dry run.
1318
+ # @return [Integer]
1319
+ #
1320
+ # @!attribute [rw] number_of_profiles_in_sample
1321
+ # The number of profiles found in this preview dry run.
1322
+ # @return [Integer]
1323
+ #
1324
+ # @!attribute [rw] number_of_profiles_will_be_merged
1325
+ # The number of profiles that would be merged if this wasn't a
1326
+ # preview dry run.
1327
+ # @return [Integer]
1328
+ #
1329
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetAutoMergingPreviewResponse AWS API Documentation
1330
+ #
1331
+ class GetAutoMergingPreviewResponse < Struct.new(
1332
+ :domain_name,
1333
+ :number_of_matches_in_sample,
1334
+ :number_of_profiles_in_sample,
1335
+ :number_of_profiles_will_be_merged)
1336
+ SENSITIVE = []
1337
+ include Aws::Structure
1338
+ end
1339
+
1083
1340
  # @note When making an API call, you may pass GetDomainRequest
1084
1341
  # data as a hash:
1085
1342
  #
@@ -1124,11 +1381,16 @@ module Aws::CustomerProfiles
1124
1381
  # @return [Types::DomainStats]
1125
1382
  #
1126
1383
  # @!attribute [rw] matching
1127
- # The process of matching duplicate profiles. If Matching = true,
1128
- # Amazon Connect Customer Profiles starts a weekly batch process every
1384
+ # The process of matching duplicate profiles. If `Matching` = `true`,
1385
+ # Amazon Connect Customer Profiles starts a weekly batch process
1386
+ # called Identity Resolution Job. If you do not specify a date and
1387
+ # time for Identity Resolution Job to run, by default it runs every
1129
1388
  # Saturday at 12AM UTC to detect duplicate profiles in your domains.
1130
- # After that batch process completes, use the [GetMatches][1] API to
1131
- # return and review the results.
1389
+ #
1390
+ # After the Identity Resolution Job completes, use the [GetMatches][1]
1391
+ # API to return and review the results. Or, if you have configured
1392
+ # `ExportingConfig` in the `MatchingRequest`, you can download the
1393
+ # results from S3.
1132
1394
  #
1133
1395
  #
1134
1396
  #
@@ -1164,6 +1426,121 @@ module Aws::CustomerProfiles
1164
1426
  include Aws::Structure
1165
1427
  end
1166
1428
 
1429
+ # @note When making an API call, you may pass GetIdentityResolutionJobRequest
1430
+ # data as a hash:
1431
+ #
1432
+ # {
1433
+ # domain_name: "name", # required
1434
+ # job_id: "uuid", # required
1435
+ # }
1436
+ #
1437
+ # @!attribute [rw] domain_name
1438
+ # The unique name of the domain.
1439
+ # @return [String]
1440
+ #
1441
+ # @!attribute [rw] job_id
1442
+ # The unique identifier of the Identity Resolution Job.
1443
+ # @return [String]
1444
+ #
1445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetIdentityResolutionJobRequest AWS API Documentation
1446
+ #
1447
+ class GetIdentityResolutionJobRequest < Struct.new(
1448
+ :domain_name,
1449
+ :job_id)
1450
+ SENSITIVE = []
1451
+ include Aws::Structure
1452
+ end
1453
+
1454
+ # @!attribute [rw] domain_name
1455
+ # The unique name of the domain.
1456
+ # @return [String]
1457
+ #
1458
+ # @!attribute [rw] job_id
1459
+ # The unique identifier of the Identity Resolution Job.
1460
+ # @return [String]
1461
+ #
1462
+ # @!attribute [rw] status
1463
+ # The status of the Identity Resolution Job.
1464
+ #
1465
+ # * `PENDING`\: The Identity Resolution Job is scheduled but has not
1466
+ # started yet. If you turn off the Identity Resolution feature in
1467
+ # your domain, jobs in the `PENDING` state are deleted.
1468
+ #
1469
+ # * `PREPROCESSING`\: The Identity Resolution Job is loading your
1470
+ # data.
1471
+ #
1472
+ # * `FIND_MATCHING`\: The Identity Resolution Job is using the machine
1473
+ # learning model to identify profiles that belong to the same
1474
+ # matching group.
1475
+ #
1476
+ # * `MERGING`\: The Identity Resolution Job is merging duplicate
1477
+ # profiles.
1478
+ #
1479
+ # * `COMPLETED`\: The Identity Resolution Job completed successfully.
1480
+ #
1481
+ # * `PARTIAL_SUCCESS`\: There's a system error and not all of the
1482
+ # data is merged. The Identity Resolution Job writes a message
1483
+ # indicating the source of the problem.
1484
+ #
1485
+ # * `FAILED`\: The Identity Resolution Job did not merge any data. It
1486
+ # writes a message indicating the source of the problem.
1487
+ # @return [String]
1488
+ #
1489
+ # @!attribute [rw] message
1490
+ # The error messages that are generated when the Identity Resolution
1491
+ # Job runs.
1492
+ # @return [String]
1493
+ #
1494
+ # @!attribute [rw] job_start_time
1495
+ # The timestamp of when the Identity Resolution Job was started or
1496
+ # will be started.
1497
+ # @return [Time]
1498
+ #
1499
+ # @!attribute [rw] job_end_time
1500
+ # The timestamp of when the Identity Resolution Job was completed.
1501
+ # @return [Time]
1502
+ #
1503
+ # @!attribute [rw] last_updated_at
1504
+ # The timestamp of when the Identity Resolution Job was most recently
1505
+ # edited.
1506
+ # @return [Time]
1507
+ #
1508
+ # @!attribute [rw] job_expiration_time
1509
+ # The timestamp of when the Identity Resolution Job will expire.
1510
+ # @return [Time]
1511
+ #
1512
+ # @!attribute [rw] auto_merging
1513
+ # Configuration settings for how to perform the auto-merging of
1514
+ # profiles.
1515
+ # @return [Types::AutoMerging]
1516
+ #
1517
+ # @!attribute [rw] exporting_location
1518
+ # The S3 location where the Identity Resolution Job writes result
1519
+ # files.
1520
+ # @return [Types::ExportingLocation]
1521
+ #
1522
+ # @!attribute [rw] job_stats
1523
+ # Statistics about the Identity Resolution Job.
1524
+ # @return [Types::JobStats]
1525
+ #
1526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetIdentityResolutionJobResponse AWS API Documentation
1527
+ #
1528
+ class GetIdentityResolutionJobResponse < Struct.new(
1529
+ :domain_name,
1530
+ :job_id,
1531
+ :status,
1532
+ :message,
1533
+ :job_start_time,
1534
+ :job_end_time,
1535
+ :last_updated_at,
1536
+ :job_expiration_time,
1537
+ :auto_merging,
1538
+ :exporting_location,
1539
+ :job_stats)
1540
+ SENSITIVE = []
1541
+ include Aws::Structure
1542
+ end
1543
+
1167
1544
  # @note When making an API call, you may pass GetIntegrationRequest
1168
1545
  # data as a hash:
1169
1546
  #
@@ -1214,6 +1591,16 @@ module Aws::CustomerProfiles
1214
1591
  # resource.
1215
1592
  # @return [Hash<String,String>]
1216
1593
  #
1594
+ # @!attribute [rw] object_type_names
1595
+ # A map in which each key is an event type from an external
1596
+ # application such as Segment or Shopify, and each value is an
1597
+ # `ObjectTypeName` (template) used to ingest the event. It supports
1598
+ # the following event types: `SegmentIdentify`,
1599
+ # `ShopifyCreateCustomers`, `ShopifyUpdateCustomers`,
1600
+ # `ShopifyCreateDraftOrders`, `ShopifyUpdateDraftOrders`,
1601
+ # `ShopifyCreateOrders`, and `ShopifyUpdatedOrders`.
1602
+ # @return [Hash<String,String>]
1603
+ #
1217
1604
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetIntegrationResponse AWS API Documentation
1218
1605
  #
1219
1606
  class GetIntegrationResponse < Struct.new(
@@ -1222,7 +1609,8 @@ module Aws::CustomerProfiles
1222
1609
  :object_type_name,
1223
1610
  :created_at,
1224
1611
  :last_updated_at,
1225
- :tags)
1612
+ :tags,
1613
+ :object_type_names)
1226
1614
  SENSITIVE = []
1227
1615
  include Aws::Structure
1228
1616
  end
@@ -1343,6 +1731,11 @@ module Aws::CustomerProfiles
1343
1731
  # found, then the service creates a new standard profile.
1344
1732
  # @return [Boolean]
1345
1733
  #
1734
+ # @!attribute [rw] source_last_updated_timestamp_format
1735
+ # The format of your `sourceLastUpdatedTimestamp` that was previously
1736
+ # set up.
1737
+ # @return [String]
1738
+ #
1346
1739
  # @!attribute [rw] fields
1347
1740
  # A map of the name and ObjectType field.
1348
1741
  # @return [Hash<String,Types::ObjectTypeField>]
@@ -1373,6 +1766,7 @@ module Aws::CustomerProfiles
1373
1766
  :expiration_days,
1374
1767
  :encryption_key,
1375
1768
  :allow_profile_creation,
1769
+ :source_last_updated_timestamp_format,
1376
1770
  :fields,
1377
1771
  :keys,
1378
1772
  :created_at,
@@ -1422,6 +1816,11 @@ module Aws::CustomerProfiles
1422
1816
  # found, then the service creates a new standard profile.
1423
1817
  # @return [Boolean]
1424
1818
  #
1819
+ # @!attribute [rw] source_last_updated_timestamp_format
1820
+ # The format of your `sourceLastUpdatedTimestamp` that was previously
1821
+ # set up.
1822
+ # @return [String]
1823
+ #
1425
1824
  # @!attribute [rw] fields
1426
1825
  # A map of the name and ObjectType field.
1427
1826
  # @return [Hash<String,Types::ObjectTypeField>]
@@ -1437,12 +1836,87 @@ module Aws::CustomerProfiles
1437
1836
  :source_name,
1438
1837
  :source_object,
1439
1838
  :allow_profile_creation,
1839
+ :source_last_updated_timestamp_format,
1440
1840
  :fields,
1441
1841
  :keys)
1442
1842
  SENSITIVE = []
1443
1843
  include Aws::Structure
1444
1844
  end
1445
1845
 
1846
+ # Information about the Identity Resolution Job.
1847
+ #
1848
+ # @!attribute [rw] domain_name
1849
+ # The unique name of the domain.
1850
+ # @return [String]
1851
+ #
1852
+ # @!attribute [rw] job_id
1853
+ # The unique identifier of the Identity Resolution Job.
1854
+ # @return [String]
1855
+ #
1856
+ # @!attribute [rw] status
1857
+ # The status of the Identity Resolution Job.
1858
+ #
1859
+ # * `PENDING`\: The Identity Resolution Job is scheduled but has not
1860
+ # started yet. If you turn off the Identity Resolution feature in
1861
+ # your domain, jobs in the `PENDING` state are deleted.
1862
+ #
1863
+ # * `PREPROCESSING`\: The Identity Resolution Job is loading your
1864
+ # data.
1865
+ #
1866
+ # * `FIND_MATCHING`\: The Identity Resolution Job is using the machine
1867
+ # learning model to identify profiles that belong to the same
1868
+ # matching group.
1869
+ #
1870
+ # * `MERGING`\: The Identity Resolution Job is merging duplicate
1871
+ # profiles.
1872
+ #
1873
+ # * `COMPLETED`\: The Identity Resolution Job completed successfully.
1874
+ #
1875
+ # * `PARTIAL_SUCCESS`\: There's a system error and not all of the
1876
+ # data is merged. The Identity Resolution Job writes a message
1877
+ # indicating the source of the problem.
1878
+ #
1879
+ # * `FAILED`\: The Identity Resolution Job did not merge any data. It
1880
+ # writes a message indicating the source of the problem.
1881
+ # @return [String]
1882
+ #
1883
+ # @!attribute [rw] job_start_time
1884
+ # The timestamp of when the job was started or will be started.
1885
+ # @return [Time]
1886
+ #
1887
+ # @!attribute [rw] job_end_time
1888
+ # The timestamp of when the job was completed.
1889
+ # @return [Time]
1890
+ #
1891
+ # @!attribute [rw] job_stats
1892
+ # Statistics about an Identity Resolution Job.
1893
+ # @return [Types::JobStats]
1894
+ #
1895
+ # @!attribute [rw] exporting_location
1896
+ # The S3 location where the Identity Resolution Job writes result
1897
+ # files.
1898
+ # @return [Types::ExportingLocation]
1899
+ #
1900
+ # @!attribute [rw] message
1901
+ # The error messages that are generated when the Identity Resolution
1902
+ # Job runs.
1903
+ # @return [String]
1904
+ #
1905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/IdentityResolutionJob AWS API Documentation
1906
+ #
1907
+ class IdentityResolutionJob < Struct.new(
1908
+ :domain_name,
1909
+ :job_id,
1910
+ :status,
1911
+ :job_start_time,
1912
+ :job_end_time,
1913
+ :job_stats,
1914
+ :exporting_location,
1915
+ :message)
1916
+ SENSITIVE = []
1917
+ include Aws::Structure
1918
+ end
1919
+
1446
1920
  # Specifies the configuration used when importing incremental records
1447
1921
  # from the source.
1448
1922
  #
@@ -1479,6 +1953,58 @@ module Aws::CustomerProfiles
1479
1953
  include Aws::Structure
1480
1954
  end
1481
1955
 
1956
+ # The day and time when do you want to start the Identity Resolution Job
1957
+ # every week.
1958
+ #
1959
+ # @note When making an API call, you may pass JobSchedule
1960
+ # data as a hash:
1961
+ #
1962
+ # {
1963
+ # day_of_the_week: "SUNDAY", # required, accepts SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
1964
+ # time: "JobScheduleTime", # required
1965
+ # }
1966
+ #
1967
+ # @!attribute [rw] day_of_the_week
1968
+ # The day when the Identity Resolution Job should run every week.
1969
+ # @return [String]
1970
+ #
1971
+ # @!attribute [rw] time
1972
+ # The time when the Identity Resolution Job should run every week.
1973
+ # @return [String]
1974
+ #
1975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/JobSchedule AWS API Documentation
1976
+ #
1977
+ class JobSchedule < Struct.new(
1978
+ :day_of_the_week,
1979
+ :time)
1980
+ SENSITIVE = []
1981
+ include Aws::Structure
1982
+ end
1983
+
1984
+ # Statistics about the Identity Resolution Job.
1985
+ #
1986
+ # @!attribute [rw] number_of_profiles_reviewed
1987
+ # The number of profiles reviewed.
1988
+ # @return [Integer]
1989
+ #
1990
+ # @!attribute [rw] number_of_matches_found
1991
+ # The number of matches found.
1992
+ # @return [Integer]
1993
+ #
1994
+ # @!attribute [rw] number_of_merges_done
1995
+ # The number of merges completed.
1996
+ # @return [Integer]
1997
+ #
1998
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/JobStats AWS API Documentation
1999
+ #
2000
+ class JobStats < Struct.new(
2001
+ :number_of_profiles_reviewed,
2002
+ :number_of_matches_found,
2003
+ :number_of_merges_done)
2004
+ SENSITIVE = []
2005
+ include Aws::Structure
2006
+ end
2007
+
1482
2008
  # @note When making an API call, you may pass ListAccountIntegrationsRequest
1483
2009
  # data as a hash:
1484
2010
  #
@@ -1601,6 +2127,57 @@ module Aws::CustomerProfiles
1601
2127
  include Aws::Structure
1602
2128
  end
1603
2129
 
2130
+ # @note When making an API call, you may pass ListIdentityResolutionJobsRequest
2131
+ # data as a hash:
2132
+ #
2133
+ # {
2134
+ # domain_name: "name", # required
2135
+ # next_token: "token",
2136
+ # max_results: 1,
2137
+ # }
2138
+ #
2139
+ # @!attribute [rw] domain_name
2140
+ # The unique name of the domain.
2141
+ # @return [String]
2142
+ #
2143
+ # @!attribute [rw] next_token
2144
+ # The token for the next set of results. Use the value returned in the
2145
+ # previous response in the next request to retrieve the next set of
2146
+ # results.
2147
+ # @return [String]
2148
+ #
2149
+ # @!attribute [rw] max_results
2150
+ # The maximum number of results to return per page.
2151
+ # @return [Integer]
2152
+ #
2153
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListIdentityResolutionJobsRequest AWS API Documentation
2154
+ #
2155
+ class ListIdentityResolutionJobsRequest < Struct.new(
2156
+ :domain_name,
2157
+ :next_token,
2158
+ :max_results)
2159
+ SENSITIVE = []
2160
+ include Aws::Structure
2161
+ end
2162
+
2163
+ # @!attribute [rw] identity_resolution_jobs_list
2164
+ # A list of Identity Resolution Jobs.
2165
+ # @return [Array<Types::IdentityResolutionJob>]
2166
+ #
2167
+ # @!attribute [rw] next_token
2168
+ # If there are additional results, this is the token for the next set
2169
+ # of results.
2170
+ # @return [String]
2171
+ #
2172
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListIdentityResolutionJobsResponse AWS API Documentation
2173
+ #
2174
+ class ListIdentityResolutionJobsResponse < Struct.new(
2175
+ :identity_resolution_jobs_list,
2176
+ :next_token)
2177
+ SENSITIVE = []
2178
+ include Aws::Structure
2179
+ end
2180
+
1604
2181
  # An integration in list of integrations.
1605
2182
  #
1606
2183
  # @!attribute [rw] domain_name
@@ -1628,6 +2205,16 @@ module Aws::CustomerProfiles
1628
2205
  # resource.
1629
2206
  # @return [Hash<String,String>]
1630
2207
  #
2208
+ # @!attribute [rw] object_type_names
2209
+ # A map in which each key is an event type from an external
2210
+ # application such as Segment or Shopify, and each value is an
2211
+ # `ObjectTypeName` (template) used to ingest the event. It supports
2212
+ # the following event types: `SegmentIdentify`,
2213
+ # `ShopifyCreateCustomers`, `ShopifyUpdateCustomers`,
2214
+ # `ShopifyCreateDraftOrders`, `ShopifyUpdateDraftOrders`,
2215
+ # `ShopifyCreateOrders`, and `ShopifyUpdatedOrders`.
2216
+ # @return [Hash<String,String>]
2217
+ #
1631
2218
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListIntegrationItem AWS API Documentation
1632
2219
  #
1633
2220
  class ListIntegrationItem < Struct.new(
@@ -1636,7 +2223,8 @@ module Aws::CustomerProfiles
1636
2223
  :object_type_name,
1637
2224
  :created_at,
1638
2225
  :last_updated_at,
1639
- :tags)
2226
+ :tags,
2227
+ :object_type_names)
1640
2228
  SENSITIVE = []
1641
2229
  include Aws::Structure
1642
2230
  end
@@ -1903,7 +2491,7 @@ module Aws::CustomerProfiles
1903
2491
  # @!attribute [rw] object_filter
1904
2492
  # Applies a filter to the response to include profile objects with the
1905
2493
  # specified index values. This filter is only supported for
1906
- # ObjectTypeName \_asset and \_case.
2494
+ # ObjectTypeName \_asset, \_case and \_order.
1907
2495
  # @return [Types::ObjectFilter]
1908
2496
  #
1909
2497
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListProfileObjectsRequest AWS API Documentation
@@ -2000,11 +2588,18 @@ module Aws::CustomerProfiles
2000
2588
  # A list of identifiers for profiles that match.
2001
2589
  # @return [Array<String>]
2002
2590
  #
2591
+ # @!attribute [rw] confidence_score
2592
+ # A number between 0 and 1 that represents the confidence level of
2593
+ # assigning profiles to a matching group. A score of 1 likely
2594
+ # indicates an exact match.
2595
+ # @return [Float]
2596
+ #
2003
2597
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MatchItem AWS API Documentation
2004
2598
  #
2005
2599
  class MatchItem < Struct.new(
2006
2600
  :match_id,
2007
- :profile_ids)
2601
+ :profile_ids,
2602
+ :confidence_score)
2008
2603
  SENSITIVE = []
2009
2604
  include Aws::Structure
2010
2605
  end
@@ -2016,16 +2611,55 @@ module Aws::CustomerProfiles
2016
2611
  #
2017
2612
  # {
2018
2613
  # enabled: false, # required
2614
+ # job_schedule: {
2615
+ # day_of_the_week: "SUNDAY", # required, accepts SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
2616
+ # time: "JobScheduleTime", # required
2617
+ # },
2618
+ # auto_merging: {
2619
+ # enabled: false, # required
2620
+ # consolidation: {
2621
+ # matching_attributes_list: [ # required
2622
+ # ["string1To255"],
2623
+ # ],
2624
+ # },
2625
+ # conflict_resolution: {
2626
+ # conflict_resolving_model: "RECENCY", # required, accepts RECENCY, SOURCE
2627
+ # source_name: "string1To255",
2628
+ # },
2629
+ # },
2630
+ # exporting_config: {
2631
+ # s3_exporting: {
2632
+ # s3_bucket_name: "s3BucketName", # required
2633
+ # s3_key_name: "s3KeyNameCustomerOutputConfig",
2634
+ # },
2635
+ # },
2019
2636
  # }
2020
2637
  #
2021
2638
  # @!attribute [rw] enabled
2022
2639
  # The flag that enables the matching process of duplicate profiles.
2023
2640
  # @return [Boolean]
2024
2641
  #
2642
+ # @!attribute [rw] job_schedule
2643
+ # The day and time when do you want to start the Identity Resolution
2644
+ # Job every week.
2645
+ # @return [Types::JobSchedule]
2646
+ #
2647
+ # @!attribute [rw] auto_merging
2648
+ # Configuration information about the auto-merging process.
2649
+ # @return [Types::AutoMerging]
2650
+ #
2651
+ # @!attribute [rw] exporting_config
2652
+ # Configuration information for exporting Identity Resolution results,
2653
+ # for example, to an S3 bucket.
2654
+ # @return [Types::ExportingConfig]
2655
+ #
2025
2656
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MatchingRequest AWS API Documentation
2026
2657
  #
2027
2658
  class MatchingRequest < Struct.new(
2028
- :enabled)
2659
+ :enabled,
2660
+ :job_schedule,
2661
+ :auto_merging,
2662
+ :exporting_config)
2029
2663
  SENSITIVE = []
2030
2664
  include Aws::Structure
2031
2665
  end
@@ -2036,10 +2670,27 @@ module Aws::CustomerProfiles
2036
2670
  # The flag that enables the matching process of duplicate profiles.
2037
2671
  # @return [Boolean]
2038
2672
  #
2673
+ # @!attribute [rw] job_schedule
2674
+ # The day and time when do you want to start the Identity Resolution
2675
+ # Job every week.
2676
+ # @return [Types::JobSchedule]
2677
+ #
2678
+ # @!attribute [rw] auto_merging
2679
+ # Configuration information about the auto-merging process.
2680
+ # @return [Types::AutoMerging]
2681
+ #
2682
+ # @!attribute [rw] exporting_config
2683
+ # Configuration information for exporting Identity Resolution results,
2684
+ # for example, to an S3 bucket.
2685
+ # @return [Types::ExportingConfig]
2686
+ #
2039
2687
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MatchingResponse AWS API Documentation
2040
2688
  #
2041
2689
  class MatchingResponse < Struct.new(
2042
- :enabled)
2690
+ :enabled,
2691
+ :job_schedule,
2692
+ :auto_merging,
2693
+ :exporting_config)
2043
2694
  SENSITIVE = []
2044
2695
  include Aws::Structure
2045
2696
  end
@@ -2122,7 +2773,7 @@ module Aws::CustomerProfiles
2122
2773
 
2123
2774
  # The filter applied to ListProfileObjects response to include profile
2124
2775
  # objects with the specified index values. This filter is only supported
2125
- # for ObjectTypeName \_asset and \_case.
2776
+ # for ObjectTypeName \_asset, \_case and \_order.
2126
2777
  #
2127
2778
  # @note When making an API call, you may pass ObjectFilter
2128
2779
  # data as a hash:
@@ -2136,7 +2787,8 @@ module Aws::CustomerProfiles
2136
2787
  # A searchable identifier of a standard profile object. The predefined
2137
2788
  # keys you can use to search for \_asset include: \_assetId,
2138
2789
  # \_assetName, \_serialNumber. The predefined keys you can use to
2139
- # search for \_case include: \_caseId.
2790
+ # search for \_case include: \_caseId. The predefined keys you can use
2791
+ # to search for \_order include: \_orderId.
2140
2792
  # @return [String]
2141
2793
  #
2142
2794
  # @!attribute [rw] values
@@ -2196,22 +2848,22 @@ module Aws::CustomerProfiles
2196
2848
  # data as a hash:
2197
2849
  #
2198
2850
  # {
2199
- # standard_identifiers: ["PROFILE"], # accepts PROFILE, ASSET, CASE, UNIQUE, SECONDARY, LOOKUP_ONLY, NEW_ONLY
2851
+ # standard_identifiers: ["PROFILE"], # accepts PROFILE, ASSET, CASE, UNIQUE, SECONDARY, LOOKUP_ONLY, NEW_ONLY, ORDER
2200
2852
  # field_names: ["name"],
2201
2853
  # }
2202
2854
  #
2203
2855
  # @!attribute [rw] standard_identifiers
2204
2856
  # The types of keys that a ProfileObject can have. Each ProfileObject
2205
- # can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE, ASSET
2206
- # or CASE means that this key can be used to tie an object to a
2207
- # PROFILE, ASSET or CASE respectively. UNIQUE means that it can be
2208
- # used to uniquely identify an object. If a key a is marked as
2209
- # SECONDARY, it will be used to search for profiles after all other
2210
- # PROFILE keys have been searched. A LOOKUP\_ONLY key is only used to
2211
- # match a profile but is not persisted to be used for searching of the
2212
- # profile. A NEW\_ONLY key is only used if the profile does not
2213
- # already exist before the object is ingested, otherwise it is only
2214
- # used for matching objects to profiles.
2857
+ # can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE,
2858
+ # ASSET, CASE, or ORDER means that this key can be used to tie an
2859
+ # object to a PROFILE, ASSET, CASE, or ORDER respectively. UNIQUE
2860
+ # means that it can be used to uniquely identify an object. If a key a
2861
+ # is marked as SECONDARY, it will be used to search for profiles after
2862
+ # all other PROFILE keys have been searched. A LOOKUP\_ONLY key is
2863
+ # only used to match a profile but is not persisted to be used for
2864
+ # searching of the profile. A NEW\_ONLY key is only used if the
2865
+ # profile does not already exist before the object is ingested,
2866
+ # otherwise it is only used for matching objects to profiles.
2215
2867
  # @return [Array<String>]
2216
2868
  #
2217
2869
  # @!attribute [rw] field_names
@@ -2355,7 +3007,7 @@ module Aws::CustomerProfiles
2355
3007
  # {
2356
3008
  # domain_name: "name", # required
2357
3009
  # uri: "string1To255",
2358
- # object_type_name: "typeName", # required
3010
+ # object_type_name: "typeName",
2359
3011
  # tags: {
2360
3012
  # "TagKey" => "TagValue",
2361
3013
  # },
@@ -2422,6 +3074,9 @@ module Aws::CustomerProfiles
2422
3074
  # },
2423
3075
  # },
2424
3076
  # },
3077
+ # object_type_names: {
3078
+ # "string1To255" => "typeName",
3079
+ # },
2425
3080
  # }
2426
3081
  #
2427
3082
  # @!attribute [rw] domain_name
@@ -2446,6 +3101,16 @@ module Aws::CustomerProfiles
2446
3101
  # from the source.
2447
3102
  # @return [Types::FlowDefinition]
2448
3103
  #
3104
+ # @!attribute [rw] object_type_names
3105
+ # A map in which each key is an event type from an external
3106
+ # application such as Segment or Shopify, and each value is an
3107
+ # `ObjectTypeName` (template) used to ingest the event. It supports
3108
+ # the following event types: `SegmentIdentify`,
3109
+ # `ShopifyCreateCustomers`, `ShopifyUpdateCustomers`,
3110
+ # `ShopifyCreateDraftOrders`, `ShopifyUpdateDraftOrders`,
3111
+ # `ShopifyCreateOrders`, and `ShopifyUpdatedOrders`.
3112
+ # @return [Hash<String,String>]
3113
+ #
2449
3114
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/PutIntegrationRequest AWS API Documentation
2450
3115
  #
2451
3116
  class PutIntegrationRequest < Struct.new(
@@ -2453,7 +3118,8 @@ module Aws::CustomerProfiles
2453
3118
  :uri,
2454
3119
  :object_type_name,
2455
3120
  :tags,
2456
- :flow_definition)
3121
+ :flow_definition,
3122
+ :object_type_names)
2457
3123
  SENSITIVE = []
2458
3124
  include Aws::Structure
2459
3125
  end
@@ -2483,6 +3149,16 @@ module Aws::CustomerProfiles
2483
3149
  # resource.
2484
3150
  # @return [Hash<String,String>]
2485
3151
  #
3152
+ # @!attribute [rw] object_type_names
3153
+ # A map in which each key is an event type from an external
3154
+ # application such as Segment or Shopify, and each value is an
3155
+ # `ObjectTypeName` (template) used to ingest the event. It supports
3156
+ # the following event types: `SegmentIdentify`,
3157
+ # `ShopifyCreateCustomers`, `ShopifyUpdateCustomers`,
3158
+ # `ShopifyCreateDraftOrders`, `ShopifyUpdateDraftOrders`,
3159
+ # `ShopifyCreateOrders`, and `ShopifyUpdatedOrders`.
3160
+ # @return [Hash<String,String>]
3161
+ #
2486
3162
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/PutIntegrationResponse AWS API Documentation
2487
3163
  #
2488
3164
  class PutIntegrationResponse < Struct.new(
@@ -2491,7 +3167,8 @@ module Aws::CustomerProfiles
2491
3167
  :object_type_name,
2492
3168
  :created_at,
2493
3169
  :last_updated_at,
2494
- :tags)
3170
+ :tags,
3171
+ :object_type_names)
2495
3172
  SENSITIVE = []
2496
3173
  include Aws::Structure
2497
3174
  end
@@ -2551,6 +3228,7 @@ module Aws::CustomerProfiles
2551
3228
  # expiration_days: 1,
2552
3229
  # encryption_key: "encryptionKey",
2553
3230
  # allow_profile_creation: false,
3231
+ # source_last_updated_timestamp_format: "string1To255",
2554
3232
  # fields: {
2555
3233
  # "name" => {
2556
3234
  # source: "text",
@@ -2561,7 +3239,7 @@ module Aws::CustomerProfiles
2561
3239
  # keys: {
2562
3240
  # "name" => [
2563
3241
  # {
2564
- # standard_identifiers: ["PROFILE"], # accepts PROFILE, ASSET, CASE, UNIQUE, SECONDARY, LOOKUP_ONLY, NEW_ONLY
3242
+ # standard_identifiers: ["PROFILE"], # accepts PROFILE, ASSET, CASE, UNIQUE, SECONDARY, LOOKUP_ONLY, NEW_ONLY, ORDER
2565
3243
  # field_names: ["name"],
2566
3244
  # },
2567
3245
  # ],
@@ -2605,6 +3283,11 @@ module Aws::CustomerProfiles
2605
3283
  # found, then the service creates a new standard profile.
2606
3284
  # @return [Boolean]
2607
3285
  #
3286
+ # @!attribute [rw] source_last_updated_timestamp_format
3287
+ # The format of your `sourceLastUpdatedTimestamp` that was previously
3288
+ # set up.
3289
+ # @return [String]
3290
+ #
2608
3291
  # @!attribute [rw] fields
2609
3292
  # A map of the name and ObjectType field.
2610
3293
  # @return [Hash<String,Types::ObjectTypeField>]
@@ -2628,6 +3311,7 @@ module Aws::CustomerProfiles
2628
3311
  :expiration_days,
2629
3312
  :encryption_key,
2630
3313
  :allow_profile_creation,
3314
+ :source_last_updated_timestamp_format,
2631
3315
  :fields,
2632
3316
  :keys,
2633
3317
  :tags)
@@ -2665,6 +3349,17 @@ module Aws::CustomerProfiles
2665
3349
  # found, then the service creates a new standard profile.
2666
3350
  # @return [Boolean]
2667
3351
  #
3352
+ # @!attribute [rw] source_last_updated_timestamp_format
3353
+ # The format of your `sourceLastUpdatedTimestamp` that was previously
3354
+ # set up in fields that were parsed using [SimpleDateFormat][1]. If
3355
+ # you have `sourceLastUpdatedTimestamp` in your field, you must set up
3356
+ # `sourceLastUpdatedTimestampFormat`.
3357
+ #
3358
+ #
3359
+ #
3360
+ # [1]: https://docs.oracle.com/javase/10/docs/api/java/text/SimpleDateFormat.html
3361
+ # @return [String]
3362
+ #
2668
3363
  # @!attribute [rw] fields
2669
3364
  # A map of the name and ObjectType field.
2670
3365
  # @return [Hash<String,Types::ObjectTypeField>]
@@ -2695,6 +3390,7 @@ module Aws::CustomerProfiles
2695
3390
  :expiration_days,
2696
3391
  :encryption_key,
2697
3392
  :allow_profile_creation,
3393
+ :source_last_updated_timestamp_format,
2698
3394
  :fields,
2699
3395
  :keys,
2700
3396
  :created_at,
@@ -2717,6 +3413,57 @@ module Aws::CustomerProfiles
2717
3413
  include Aws::Structure
2718
3414
  end
2719
3415
 
3416
+ # Configuration information about the S3 bucket where Identity
3417
+ # Resolution Jobs write result files.
3418
+ #
3419
+ # @note When making an API call, you may pass S3ExportingConfig
3420
+ # data as a hash:
3421
+ #
3422
+ # {
3423
+ # s3_bucket_name: "s3BucketName", # required
3424
+ # s3_key_name: "s3KeyNameCustomerOutputConfig",
3425
+ # }
3426
+ #
3427
+ # @!attribute [rw] s3_bucket_name
3428
+ # The name of the S3 bucket where Identity Resolution Jobs write
3429
+ # result files.
3430
+ # @return [String]
3431
+ #
3432
+ # @!attribute [rw] s3_key_name
3433
+ # The S3 key name of the location where Identity Resolution Jobs write
3434
+ # result files.
3435
+ # @return [String]
3436
+ #
3437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/S3ExportingConfig AWS API Documentation
3438
+ #
3439
+ class S3ExportingConfig < Struct.new(
3440
+ :s3_bucket_name,
3441
+ :s3_key_name)
3442
+ SENSITIVE = []
3443
+ include Aws::Structure
3444
+ end
3445
+
3446
+ # The S3 location where Identity Resolution Jobs write result files.
3447
+ #
3448
+ # @!attribute [rw] s3_bucket_name
3449
+ # The name of the S3 bucket name where Identity Resolution Jobs write
3450
+ # result files.
3451
+ # @return [String]
3452
+ #
3453
+ # @!attribute [rw] s3_key_name
3454
+ # The S3 key name of the location where Identity Resolution Jobs write
3455
+ # result files.
3456
+ # @return [String]
3457
+ #
3458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/S3ExportingLocation AWS API Documentation
3459
+ #
3460
+ class S3ExportingLocation < Struct.new(
3461
+ :s3_bucket_name,
3462
+ :s3_key_name)
3463
+ SENSITIVE = []
3464
+ include Aws::Structure
3465
+ end
3466
+
2720
3467
  # The properties that are applied when Amazon S3 is being used as the
2721
3468
  # flow source.
2722
3469
  #
@@ -2871,10 +3618,12 @@ module Aws::CustomerProfiles
2871
3618
  #
2872
3619
  # @!attribute [rw] key_name
2873
3620
  # A searchable identifier of a customer profile. The predefined keys
2874
- # you can use to search include: \_account, \_profileId, \_fullName,
2875
- # \_phone, \_email, \_ctrContactId, \_marketoLeadId,
2876
- # \_salesforceAccountId, \_salesforceContactId, \_zendeskUserId,
2877
- # \_zendeskExternalId, \_serviceNowSystemId.
3621
+ # you can use to search include: \_account, \_profileId, \_assetId,
3622
+ # \_caseId, \_orderId, \_fullName, \_phone, \_email, \_ctrContactId,
3623
+ # \_marketoLeadId, \_salesforceAccountId, \_salesforceContactId,
3624
+ # \_salesforceAssetId, \_zendeskUserId, \_zendeskExternalId,
3625
+ # \_zendeskTicketId, \_serviceNowSystemId, \_serviceNowIncidentId,
3626
+ # \_segmentUserId, \_shopifyCustomerId, \_shopifyOrderId.
2878
3627
  # @return [String]
2879
3628
  #
2880
3629
  # @!attribute [rw] values
@@ -3350,6 +4099,28 @@ module Aws::CustomerProfiles
3350
4099
  # dead_letter_queue_url: "sqsQueueUrl",
3351
4100
  # matching: {
3352
4101
  # enabled: false, # required
4102
+ # job_schedule: {
4103
+ # day_of_the_week: "SUNDAY", # required, accepts SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
4104
+ # time: "JobScheduleTime", # required
4105
+ # },
4106
+ # auto_merging: {
4107
+ # enabled: false, # required
4108
+ # consolidation: {
4109
+ # matching_attributes_list: [ # required
4110
+ # ["string1To255"],
4111
+ # ],
4112
+ # },
4113
+ # conflict_resolution: {
4114
+ # conflict_resolving_model: "RECENCY", # required, accepts RECENCY, SOURCE
4115
+ # source_name: "string1To255",
4116
+ # },
4117
+ # },
4118
+ # exporting_config: {
4119
+ # s3_exporting: {
4120
+ # s3_bucket_name: "s3BucketName", # required
4121
+ # s3_key_name: "s3KeyNameCustomerOutputConfig",
4122
+ # },
4123
+ # },
3353
4124
  # },
3354
4125
  # tags: {
3355
4126
  # "TagKey" => "TagValue",
@@ -3382,11 +4153,16 @@ module Aws::CustomerProfiles
3382
4153
  # @return [String]
3383
4154
  #
3384
4155
  # @!attribute [rw] matching
3385
- # The process of matching duplicate profiles. If Matching = true,
3386
- # Amazon Connect Customer Profiles starts a weekly batch process every
4156
+ # The process of matching duplicate profiles. If `Matching` = `true`,
4157
+ # Amazon Connect Customer Profiles starts a weekly batch process
4158
+ # called Identity Resolution Job. If you do not specify a date and
4159
+ # time for Identity Resolution Job to run, by default it runs every
3387
4160
  # Saturday at 12AM UTC to detect duplicate profiles in your domains.
3388
- # After that batch process completes, use the [GetMatches][1] API to
3389
- # return and review the results.
4161
+ #
4162
+ # After the Identity Resolution Job completes, use the [GetMatches][1]
4163
+ # API to return and review the results. Or, if you have configured
4164
+ # `ExportingConfig` in the `MatchingRequest`, you can download the
4165
+ # results from S3.
3390
4166
  #
3391
4167
  #
3392
4168
  #
@@ -3432,11 +4208,16 @@ module Aws::CustomerProfiles
3432
4208
  # @return [String]
3433
4209
  #
3434
4210
  # @!attribute [rw] matching
3435
- # The process of matching duplicate profiles. If Matching = true,
3436
- # Amazon Connect Customer Profiles starts a weekly batch process every
4211
+ # The process of matching duplicate profiles. If `Matching` = `true`,
4212
+ # Amazon Connect Customer Profiles starts a weekly batch process
4213
+ # called Identity Resolution Job. If you do not specify a date and
4214
+ # time for Identity Resolution Job to run, by default it runs every
3437
4215
  # Saturday at 12AM UTC to detect duplicate profiles in your domains.
3438
- # After that batch process completes, use the [GetMatches][1] API to
3439
- # return and review the results.
4216
+ #
4217
+ # After the Identity Resolution Job completes, use the [GetMatches][1]
4218
+ # API to return and review the results. Or, if you have configured
4219
+ # `ExportingConfig` in the `MatchingRequest`, you can download the
4220
+ # results from S3.
3440
4221
  #
3441
4222
  #
3442
4223
  #