aws-sdk-customerprofiles 1.13.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.
@@ -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
  #