aws-sdk-customerprofiles 1.6.0 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b42cec8721c4f629deb11cfde3f4f11cc0e48cc6084ffff896ff2cb439f31999
4
- data.tar.gz: 881173fa9b9cf461375e4fcb0f0fe92878af5ef0f59022f6b103fbe18d629a5c
3
+ metadata.gz: 65e9bc33af1bcb37764e1bb884e4ab392f4677780ec2e8bf17b092726c610e68
4
+ data.tar.gz: c15114cb99ef83948ba78673934a78c16aa418a7a6513fc31bcfbc9f073e37f9
5
5
  SHA512:
6
- metadata.gz: abc20df7cc3071a035d3a92957a47879ca79df479e34a73d733bea3867c4a5b2c42b155d1de2724955291458176c55fe3e108a4958e4d42cbce9a39618d769b2
7
- data.tar.gz: 4ed50f0318b59af9277dbe4f75a5ec6368ef78b940e1285c222a64750fa9d0179b9cce0aedfe1c2dd31d0621675e7149cf77ba9bd84076af6462eafd0318a62a
6
+ metadata.gz: fa449b6d2161eaa6b4071596b50513652cf9f7bf07baecd83d679978798b3614f436d042770521437af12b1d46c44dbedfe288d876d50b1a7638d6d34e158f81
7
+ data.tar.gz: 72ee361ad9af8eeae3aae12cdc9d2bf5b34f4929d9d059e68ff30b66a048c7800534fe0261077295b851a69783dd74970d98a0ad0ab44c105fc6f5d02def181c
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.7.0 (2021-04-30)
5
+ ------------------
6
+
7
+ * Feature - This release introduces GetMatches and MergeProfiles APIs to fetch and merge duplicate profiles
8
+
4
9
  1.6.0 (2021-04-08)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.6.0
1
+ 1.7.0
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-customerprofiles/customizations'
48
48
  # @!group service
49
49
  module Aws::CustomerProfiles
50
50
 
51
- GEM_VERSION = '1.6.0'
51
+ GEM_VERSION = '1.7.0'
52
52
 
53
53
  end
@@ -401,6 +401,10 @@ module Aws::CustomerProfiles
401
401
  # operation to enable Amazon Connect Customer Profiles to send messages
402
402
  # to the DeadLetterQueue.
403
403
  #
404
+ # @option params [Types::MatchingRequest] :matching
405
+ # The process of matching duplicate profiles. This process runs every
406
+ # Saturday at 12AM.
407
+ #
404
408
  # @option params [Hash<String,String>] :tags
405
409
  # The tags used to organize, track, or control access for this resource.
406
410
  #
@@ -410,6 +414,7 @@ module Aws::CustomerProfiles
410
414
  # * {Types::CreateDomainResponse#default_expiration_days #default_expiration_days} => Integer
411
415
  # * {Types::CreateDomainResponse#default_encryption_key #default_encryption_key} => String
412
416
  # * {Types::CreateDomainResponse#dead_letter_queue_url #dead_letter_queue_url} => String
417
+ # * {Types::CreateDomainResponse#matching #matching} => Types::MatchingResponse
413
418
  # * {Types::CreateDomainResponse#created_at #created_at} => Time
414
419
  # * {Types::CreateDomainResponse#last_updated_at #last_updated_at} => Time
415
420
  # * {Types::CreateDomainResponse#tags #tags} => Hash&lt;String,String&gt;
@@ -421,6 +426,9 @@ module Aws::CustomerProfiles
421
426
  # default_expiration_days: 1, # required
422
427
  # default_encryption_key: "encryptionKey",
423
428
  # dead_letter_queue_url: "sqsQueueUrl",
429
+ # matching: {
430
+ # enabled: false, # required
431
+ # },
424
432
  # tags: {
425
433
  # "TagKey" => "TagValue",
426
434
  # },
@@ -432,6 +440,7 @@ module Aws::CustomerProfiles
432
440
  # resp.default_expiration_days #=> Integer
433
441
  # resp.default_encryption_key #=> String
434
442
  # resp.dead_letter_queue_url #=> String
443
+ # resp.matching.enabled #=> Boolean
435
444
  # resp.created_at #=> Time
436
445
  # resp.last_updated_at #=> Time
437
446
  # resp.tags #=> Hash
@@ -458,7 +467,7 @@ module Aws::CustomerProfiles
458
467
  # A unique account number that you have given to the customer.
459
468
  #
460
469
  # @option params [String] :additional_information
461
- # Any additional information relevant to the customer's profile.
470
+ # Any additional information relevant to the customers profile.
462
471
  #
463
472
  # @option params [String] :party_type
464
473
  # The type of profile used to describe the customer.
@@ -482,8 +491,8 @@ module Aws::CustomerProfiles
482
491
  # The gender with which the customer identifies.
483
492
  #
484
493
  # @option params [String] :phone_number
485
- # The customer's phone number, which has not been specified as a
486
- # mobile, home, or business number.
494
+ # The customers phone number, which has not been specified as a mobile,
495
+ # home, or business number.
487
496
  #
488
497
  # @option params [String] :mobile_phone_number
489
498
  # The customer’s mobile phone number.
@@ -495,7 +504,7 @@ module Aws::CustomerProfiles
495
504
  # The customer’s business phone number.
496
505
  #
497
506
  # @option params [String] :email_address
498
- # The customer's email address, which has not been specified as a
507
+ # The customers email address, which has not been specified as a
499
508
  # personal or business address.
500
509
  #
501
510
  # @option params [String] :personal_email_address
@@ -824,7 +833,7 @@ module Aws::CustomerProfiles
824
833
  # Returns information about a specific domain.
825
834
  #
826
835
  # @option params [required, String] :domain_name
827
- # A unique name for the domain.
836
+ # The unique name of the domain.
828
837
  #
829
838
  # @return [Types::GetDomainResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
830
839
  #
@@ -833,6 +842,7 @@ module Aws::CustomerProfiles
833
842
  # * {Types::GetDomainResponse#default_encryption_key #default_encryption_key} => String
834
843
  # * {Types::GetDomainResponse#dead_letter_queue_url #dead_letter_queue_url} => String
835
844
  # * {Types::GetDomainResponse#stats #stats} => Types::DomainStats
845
+ # * {Types::GetDomainResponse#matching #matching} => Types::MatchingResponse
836
846
  # * {Types::GetDomainResponse#created_at #created_at} => Time
837
847
  # * {Types::GetDomainResponse#last_updated_at #last_updated_at} => Time
838
848
  # * {Types::GetDomainResponse#tags #tags} => Hash&lt;String,String&gt;
@@ -853,6 +863,7 @@ module Aws::CustomerProfiles
853
863
  # resp.stats.metering_profile_count #=> Integer
854
864
  # resp.stats.object_count #=> Integer
855
865
  # resp.stats.total_size #=> Integer
866
+ # resp.matching.enabled #=> Boolean
856
867
  # resp.created_at #=> Time
857
868
  # resp.last_updated_at #=> Time
858
869
  # resp.tags #=> Hash
@@ -910,6 +921,90 @@ module Aws::CustomerProfiles
910
921
  req.send_request(options)
911
922
  end
912
923
 
924
+ # This API is in preview release for Amazon Connect and subject to
925
+ # change.
926
+ #
927
+ # Before calling this API, use [CreateDomain][1] or [UpdateDomain][2] to
928
+ # enable identity resolution: set `Matching` to true.
929
+ #
930
+ # GetMatches returns potentially matching profiles, based on the results
931
+ # of the latest run of a machine learning process.
932
+ #
933
+ # Amazon Connect runs a batch process every Saturday at 12AM UTC to
934
+ # identify matching profiles. The results are returned up to seven days
935
+ # after the Saturday run.
936
+ #
937
+ # Amazon Connect uses the following profile attributes to identify
938
+ # matches:
939
+ #
940
+ # * PhoneNumber
941
+ #
942
+ # * HomePhoneNumber
943
+ #
944
+ # * BusinessPhoneNumber
945
+ #
946
+ # * MobilePhoneNumber
947
+ #
948
+ # * EmailAddress
949
+ #
950
+ # * PersonalEmailAddress
951
+ #
952
+ # * BusinessEmailAddress
953
+ #
954
+ # * FullName
955
+ #
956
+ # * BusinessName
957
+ #
958
+ #
959
+ #
960
+ # [1]: https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_CreateDomain.html
961
+ # [2]: https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_UpdateDomain.html
962
+ #
963
+ # @option params [String] :next_token
964
+ # The token for the next set of results. Use the value returned in the
965
+ # previous response in the next request to retrieve the next set of
966
+ # results.
967
+ #
968
+ # @option params [Integer] :max_results
969
+ # The maximum number of results to return per page.
970
+ #
971
+ # @option params [required, String] :domain_name
972
+ # The unique name of the domain.
973
+ #
974
+ # @return [Types::GetMatchesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
975
+ #
976
+ # * {Types::GetMatchesResponse#next_token #next_token} => String
977
+ # * {Types::GetMatchesResponse#match_generation_date #match_generation_date} => Time
978
+ # * {Types::GetMatchesResponse#potential_matches #potential_matches} => Integer
979
+ # * {Types::GetMatchesResponse#matches #matches} => Array&lt;Types::MatchItem&gt;
980
+ #
981
+ # @example Request syntax with placeholder values
982
+ #
983
+ # resp = client.get_matches({
984
+ # next_token: "token",
985
+ # max_results: 1,
986
+ # domain_name: "name", # required
987
+ # })
988
+ #
989
+ # @example Response structure
990
+ #
991
+ # resp.next_token #=> String
992
+ # resp.match_generation_date #=> Time
993
+ # resp.potential_matches #=> Integer
994
+ # resp.matches #=> Array
995
+ # resp.matches[0].match_id #=> String
996
+ # resp.matches[0].profile_ids #=> Array
997
+ # resp.matches[0].profile_ids[0] #=> String
998
+ #
999
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetMatches AWS API Documentation
1000
+ #
1001
+ # @overload get_matches(params = {})
1002
+ # @param [Hash] params ({})
1003
+ def get_matches(params = {}, options = {})
1004
+ req = build_request(:get_matches, params)
1005
+ req.send_request(options)
1006
+ end
1007
+
913
1008
  # Returns the object types for a specific domain.
914
1009
  #
915
1010
  # @option params [required, String] :domain_name
@@ -1318,6 +1413,109 @@ module Aws::CustomerProfiles
1318
1413
  req.send_request(options)
1319
1414
  end
1320
1415
 
1416
+ # This API is in preview release for Amazon Connect and subject to
1417
+ # change.
1418
+ #
1419
+ # Runs an AWS Lambda job that does the following:
1420
+ #
1421
+ # 1. All the profileKeys in the `ProfileToBeMerged` will be moved to
1422
+ # the main profile.
1423
+ #
1424
+ # 2. All the objects in the `ProfileToBeMerged` will be moved to the
1425
+ # main profile.
1426
+ #
1427
+ # 3. All the `ProfileToBeMerged` will be deleted at the end.
1428
+ #
1429
+ # 4. All the profileKeys in the `ProfileIdsToBeMerged` will be moved to
1430
+ # the main profile.
1431
+ #
1432
+ # 5. Standard fields are merged as follows:
1433
+ #
1434
+ # 1. Fields are always "union"-ed if there are no conflicts in
1435
+ # standard fields or attributeKeys.
1436
+ #
1437
+ # 2. When there are conflicting fields:
1438
+ #
1439
+ # 1. If no `SourceProfileIds` entry is specified, the main
1440
+ # Profile value is always taken.
1441
+ #
1442
+ # 2. If a `SourceProfileIds` entry is specified, the specified
1443
+ # profileId is always taken, even if it is a NULL value.
1444
+ #
1445
+ # You can use MergeProfiles together with [GetMatches][1], which returns
1446
+ # potentially matching profiles, or use it with the results of another
1447
+ # matching system. After profiles have been merged, they cannot be
1448
+ # separated (unmerged).
1449
+ #
1450
+ #
1451
+ #
1452
+ # [1]: https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_GetMatches.html
1453
+ #
1454
+ # @option params [required, String] :domain_name
1455
+ # The unique name of the domain.
1456
+ #
1457
+ # @option params [required, String] :main_profile_id
1458
+ # The identifier of the profile to be taken.
1459
+ #
1460
+ # @option params [required, Array<String>] :profile_ids_to_be_merged
1461
+ # The identifier of the profile to be merged into MainProfileId.
1462
+ #
1463
+ # @option params [Types::FieldSourceProfileIds] :field_source_profile_ids
1464
+ # The identifiers of the fields in the profile that has the information
1465
+ # you want to apply to the merge. For example, say you want to merge
1466
+ # EmailAddress from Profile1 into MainProfile. This would be the
1467
+ # identifier of the EmailAddress field in Profile1.
1468
+ #
1469
+ # @return [Types::MergeProfilesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1470
+ #
1471
+ # * {Types::MergeProfilesResponse#message #message} => String
1472
+ #
1473
+ # @example Request syntax with placeholder values
1474
+ #
1475
+ # resp = client.merge_profiles({
1476
+ # domain_name: "name", # required
1477
+ # main_profile_id: "uuid", # required
1478
+ # profile_ids_to_be_merged: ["uuid"], # required
1479
+ # field_source_profile_ids: {
1480
+ # account_number: "uuid",
1481
+ # additional_information: "uuid",
1482
+ # party_type: "uuid",
1483
+ # business_name: "uuid",
1484
+ # first_name: "uuid",
1485
+ # middle_name: "uuid",
1486
+ # last_name: "uuid",
1487
+ # birth_date: "uuid",
1488
+ # gender: "uuid",
1489
+ # phone_number: "uuid",
1490
+ # mobile_phone_number: "uuid",
1491
+ # home_phone_number: "uuid",
1492
+ # business_phone_number: "uuid",
1493
+ # email_address: "uuid",
1494
+ # personal_email_address: "uuid",
1495
+ # business_email_address: "uuid",
1496
+ # address: "uuid",
1497
+ # shipping_address: "uuid",
1498
+ # mailing_address: "uuid",
1499
+ # billing_address: "uuid",
1500
+ # attributes: {
1501
+ # "string1To255" => "uuid",
1502
+ # },
1503
+ # },
1504
+ # })
1505
+ #
1506
+ # @example Response structure
1507
+ #
1508
+ # resp.message #=> String
1509
+ #
1510
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MergeProfiles AWS API Documentation
1511
+ #
1512
+ # @overload merge_profiles(params = {})
1513
+ # @param [Hash] params ({})
1514
+ def merge_profiles(params = {}, options = {})
1515
+ req = build_request(:merge_profiles, params)
1516
+ req.send_request(options)
1517
+ end
1518
+
1321
1519
  # Adds an integration between the service and a third-party service,
1322
1520
  # which includes Amazon AppFlow and Amazon Connect.
1323
1521
  #
@@ -1789,10 +1987,10 @@ module Aws::CustomerProfiles
1789
1987
  # Updates the properties of a domain, including creating or selecting a
1790
1988
  # dead letter queue or an encryption key.
1791
1989
  #
1792
- # Once a domain is created, the name can’t be changed.
1990
+ # After a domain is created, the name can’t be changed.
1793
1991
  #
1794
1992
  # @option params [required, String] :domain_name
1795
- # The unique name for the domain.
1993
+ # The unique name of the domain.
1796
1994
  #
1797
1995
  # @option params [Integer] :default_expiration_days
1798
1996
  # The default number of days until the data within the domain expires.
@@ -1811,6 +2009,10 @@ module Aws::CustomerProfiles
1811
2009
  # operation to enable Amazon Connect Customer Profiles to send messages
1812
2010
  # to the DeadLetterQueue.
1813
2011
  #
2012
+ # @option params [Types::MatchingRequest] :matching
2013
+ # The process of matching duplicate profiles. This process runs every
2014
+ # Saturday at 12AM.
2015
+ #
1814
2016
  # @option params [Hash<String,String>] :tags
1815
2017
  # The tags used to organize, track, or control access for this resource.
1816
2018
  #
@@ -1820,6 +2022,7 @@ module Aws::CustomerProfiles
1820
2022
  # * {Types::UpdateDomainResponse#default_expiration_days #default_expiration_days} => Integer
1821
2023
  # * {Types::UpdateDomainResponse#default_encryption_key #default_encryption_key} => String
1822
2024
  # * {Types::UpdateDomainResponse#dead_letter_queue_url #dead_letter_queue_url} => String
2025
+ # * {Types::UpdateDomainResponse#matching #matching} => Types::MatchingResponse
1823
2026
  # * {Types::UpdateDomainResponse#created_at #created_at} => Time
1824
2027
  # * {Types::UpdateDomainResponse#last_updated_at #last_updated_at} => Time
1825
2028
  # * {Types::UpdateDomainResponse#tags #tags} => Hash&lt;String,String&gt;
@@ -1831,6 +2034,9 @@ module Aws::CustomerProfiles
1831
2034
  # default_expiration_days: 1,
1832
2035
  # default_encryption_key: "encryptionKey",
1833
2036
  # dead_letter_queue_url: "sqsQueueUrl",
2037
+ # matching: {
2038
+ # enabled: false, # required
2039
+ # },
1834
2040
  # tags: {
1835
2041
  # "TagKey" => "TagValue",
1836
2042
  # },
@@ -1842,6 +2048,7 @@ module Aws::CustomerProfiles
1842
2048
  # resp.default_expiration_days #=> Integer
1843
2049
  # resp.default_encryption_key #=> String
1844
2050
  # resp.dead_letter_queue_url #=> String
2051
+ # resp.matching.enabled #=> Boolean
1845
2052
  # resp.created_at #=> Time
1846
2053
  # resp.last_updated_at #=> Time
1847
2054
  # resp.tags #=> Hash
@@ -1870,7 +2077,7 @@ module Aws::CustomerProfiles
1870
2077
  # The unique identifier of a customer profile.
1871
2078
  #
1872
2079
  # @option params [String] :additional_information
1873
- # Any additional information relevant to the customer's profile.
2080
+ # Any additional information relevant to the customers profile.
1874
2081
  #
1875
2082
  # @option params [String] :account_number
1876
2083
  # A unique account number that you have given to the customer.
@@ -1897,8 +2104,8 @@ module Aws::CustomerProfiles
1897
2104
  # The gender with which the customer identifies.
1898
2105
  #
1899
2106
  # @option params [String] :phone_number
1900
- # The customer's phone number, which has not been specified as a
1901
- # mobile, home, or business number.
2107
+ # The customers phone number, which has not been specified as a mobile,
2108
+ # home, or business number.
1902
2109
  #
1903
2110
  # @option params [String] :mobile_phone_number
1904
2111
  # The customer’s mobile phone number.
@@ -1910,7 +2117,7 @@ module Aws::CustomerProfiles
1910
2117
  # The customer’s business phone number.
1911
2118
  #
1912
2119
  # @option params [String] :email_address
1913
- # The customer's email address, which has not been specified as a
2120
+ # The customers email address, which has not been specified as a
1914
2121
  # personal or business address.
1915
2122
  #
1916
2123
  # @option params [String] :personal_email_address
@@ -2039,7 +2246,7 @@ module Aws::CustomerProfiles
2039
2246
  params: params,
2040
2247
  config: config)
2041
2248
  context[:gem_name] = 'aws-sdk-customerprofiles'
2042
- context[:gem_version] = '1.6.0'
2249
+ context[:gem_version] = '1.7.0'
2043
2250
  Seahorse::Client::Request.new(handlers, context)
2044
2251
  end
2045
2252
 
@@ -17,6 +17,7 @@ module Aws::CustomerProfiles
17
17
  AddProfileKeyRequest = Shapes::StructureShape.new(name: 'AddProfileKeyRequest')
18
18
  AddProfileKeyResponse = Shapes::StructureShape.new(name: 'AddProfileKeyResponse')
19
19
  Address = Shapes::StructureShape.new(name: 'Address')
20
+ AttributeSourceIdMap = Shapes::MapShape.new(name: 'AttributeSourceIdMap')
20
21
  Attributes = Shapes::MapShape.new(name: 'Attributes')
21
22
  BadRequestException = Shapes::StructureShape.new(name: 'BadRequestException')
22
23
  BucketName = Shapes::StringShape.new(name: 'BucketName')
@@ -48,6 +49,7 @@ module Aws::CustomerProfiles
48
49
  FieldContentType = Shapes::StringShape.new(name: 'FieldContentType')
49
50
  FieldMap = Shapes::MapShape.new(name: 'FieldMap')
50
51
  FieldNameList = Shapes::ListShape.new(name: 'FieldNameList')
52
+ FieldSourceProfileIds = Shapes::StructureShape.new(name: 'FieldSourceProfileIds')
51
53
  FlowDefinition = Shapes::StructureShape.new(name: 'FlowDefinition')
52
54
  FlowDescription = Shapes::StringShape.new(name: 'FlowDescription')
53
55
  FlowName = Shapes::StringShape.new(name: 'FlowName')
@@ -56,6 +58,8 @@ module Aws::CustomerProfiles
56
58
  GetDomainResponse = Shapes::StructureShape.new(name: 'GetDomainResponse')
57
59
  GetIntegrationRequest = Shapes::StructureShape.new(name: 'GetIntegrationRequest')
58
60
  GetIntegrationResponse = Shapes::StructureShape.new(name: 'GetIntegrationResponse')
61
+ GetMatchesRequest = Shapes::StructureShape.new(name: 'GetMatchesRequest')
62
+ GetMatchesResponse = Shapes::StructureShape.new(name: 'GetMatchesResponse')
59
63
  GetProfileObjectTypeRequest = Shapes::StructureShape.new(name: 'GetProfileObjectTypeRequest')
60
64
  GetProfileObjectTypeResponse = Shapes::StructureShape.new(name: 'GetProfileObjectTypeResponse')
61
65
  GetProfileObjectTypeTemplateRequest = Shapes::StructureShape.new(name: 'GetProfileObjectTypeTemplateRequest')
@@ -86,6 +90,12 @@ module Aws::CustomerProfiles
86
90
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
87
91
  MarketoConnectorOperator = Shapes::StringShape.new(name: 'MarketoConnectorOperator')
88
92
  MarketoSourceProperties = Shapes::StructureShape.new(name: 'MarketoSourceProperties')
93
+ MatchItem = Shapes::StructureShape.new(name: 'MatchItem')
94
+ MatchesList = Shapes::ListShape.new(name: 'MatchesList')
95
+ MatchingRequest = Shapes::StructureShape.new(name: 'MatchingRequest')
96
+ MatchingResponse = Shapes::StructureShape.new(name: 'MatchingResponse')
97
+ MergeProfilesRequest = Shapes::StructureShape.new(name: 'MergeProfilesRequest')
98
+ MergeProfilesResponse = Shapes::StructureShape.new(name: 'MergeProfilesResponse')
89
99
  Object = Shapes::StringShape.new(name: 'Object')
90
100
  ObjectTypeField = Shapes::StructureShape.new(name: 'ObjectTypeField')
91
101
  ObjectTypeKey = Shapes::StructureShape.new(name: 'ObjectTypeKey')
@@ -93,6 +103,8 @@ module Aws::CustomerProfiles
93
103
  OperatorPropertiesKeys = Shapes::StringShape.new(name: 'OperatorPropertiesKeys')
94
104
  PartyType = Shapes::StringShape.new(name: 'PartyType')
95
105
  Profile = Shapes::StructureShape.new(name: 'Profile')
106
+ ProfileIdList = Shapes::ListShape.new(name: 'ProfileIdList')
107
+ ProfileIdToBeMergedList = Shapes::ListShape.new(name: 'ProfileIdToBeMergedList')
96
108
  ProfileList = Shapes::ListShape.new(name: 'ProfileList')
97
109
  ProfileObjectList = Shapes::ListShape.new(name: 'ProfileObjectList')
98
110
  ProfileObjectTypeList = Shapes::ListShape.new(name: 'ProfileObjectTypeList')
@@ -152,9 +164,11 @@ module Aws::CustomerProfiles
152
164
  encryptionKey = Shapes::StringShape.new(name: 'encryptionKey')
153
165
  expirationDaysInteger = Shapes::IntegerShape.new(name: 'expirationDaysInteger')
154
166
  long = Shapes::IntegerShape.new(name: 'long')
167
+ matchesNumber = Shapes::IntegerShape.new(name: 'matchesNumber')
155
168
  maxSize100 = Shapes::IntegerShape.new(name: 'maxSize100')
156
169
  message = Shapes::StringShape.new(name: 'message')
157
170
  name = Shapes::StringShape.new(name: 'name')
171
+ optionalBoolean = Shapes::BooleanShape.new(name: 'optionalBoolean')
158
172
  requestValueList = Shapes::ListShape.new(name: 'requestValueList')
159
173
  sqsQueueUrl = Shapes::StringShape.new(name: 'sqsQueueUrl')
160
174
  string0To1000 = Shapes::StringShape.new(name: 'string0To1000')
@@ -194,6 +208,9 @@ module Aws::CustomerProfiles
194
208
  Address.add_member(:postal_code, Shapes::ShapeRef.new(shape: string1To255, location_name: "PostalCode"))
195
209
  Address.struct_class = Types::Address
196
210
 
211
+ AttributeSourceIdMap.key = Shapes::ShapeRef.new(shape: string1To255)
212
+ AttributeSourceIdMap.value = Shapes::ShapeRef.new(shape: uuid)
213
+
197
214
  Attributes.key = Shapes::ShapeRef.new(shape: string1To255)
198
215
  Attributes.value = Shapes::ShapeRef.new(shape: string1To255)
199
216
 
@@ -211,6 +228,7 @@ module Aws::CustomerProfiles
211
228
  CreateDomainRequest.add_member(:default_expiration_days, Shapes::ShapeRef.new(shape: expirationDaysInteger, required: true, location_name: "DefaultExpirationDays"))
212
229
  CreateDomainRequest.add_member(:default_encryption_key, Shapes::ShapeRef.new(shape: encryptionKey, location_name: "DefaultEncryptionKey"))
213
230
  CreateDomainRequest.add_member(:dead_letter_queue_url, Shapes::ShapeRef.new(shape: sqsQueueUrl, location_name: "DeadLetterQueueUrl"))
231
+ CreateDomainRequest.add_member(:matching, Shapes::ShapeRef.new(shape: MatchingRequest, location_name: "Matching"))
214
232
  CreateDomainRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
215
233
  CreateDomainRequest.struct_class = Types::CreateDomainRequest
216
234
 
@@ -218,6 +236,7 @@ module Aws::CustomerProfiles
218
236
  CreateDomainResponse.add_member(:default_expiration_days, Shapes::ShapeRef.new(shape: expirationDaysInteger, required: true, location_name: "DefaultExpirationDays"))
219
237
  CreateDomainResponse.add_member(:default_encryption_key, Shapes::ShapeRef.new(shape: encryptionKey, location_name: "DefaultEncryptionKey"))
220
238
  CreateDomainResponse.add_member(:dead_letter_queue_url, Shapes::ShapeRef.new(shape: sqsQueueUrl, location_name: "DeadLetterQueueUrl"))
239
+ CreateDomainResponse.add_member(:matching, Shapes::ShapeRef.new(shape: MatchingResponse, location_name: "Matching"))
221
240
  CreateDomainResponse.add_member(:created_at, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "CreatedAt"))
222
241
  CreateDomainResponse.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "LastUpdatedAt"))
223
242
  CreateDomainResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
@@ -308,6 +327,29 @@ module Aws::CustomerProfiles
308
327
 
309
328
  FieldNameList.member = Shapes::ShapeRef.new(shape: name)
310
329
 
330
+ FieldSourceProfileIds.add_member(:account_number, Shapes::ShapeRef.new(shape: uuid, location_name: "AccountNumber"))
331
+ FieldSourceProfileIds.add_member(:additional_information, Shapes::ShapeRef.new(shape: uuid, location_name: "AdditionalInformation"))
332
+ FieldSourceProfileIds.add_member(:party_type, Shapes::ShapeRef.new(shape: uuid, location_name: "PartyType"))
333
+ FieldSourceProfileIds.add_member(:business_name, Shapes::ShapeRef.new(shape: uuid, location_name: "BusinessName"))
334
+ FieldSourceProfileIds.add_member(:first_name, Shapes::ShapeRef.new(shape: uuid, location_name: "FirstName"))
335
+ FieldSourceProfileIds.add_member(:middle_name, Shapes::ShapeRef.new(shape: uuid, location_name: "MiddleName"))
336
+ FieldSourceProfileIds.add_member(:last_name, Shapes::ShapeRef.new(shape: uuid, location_name: "LastName"))
337
+ FieldSourceProfileIds.add_member(:birth_date, Shapes::ShapeRef.new(shape: uuid, location_name: "BirthDate"))
338
+ FieldSourceProfileIds.add_member(:gender, Shapes::ShapeRef.new(shape: uuid, location_name: "Gender"))
339
+ FieldSourceProfileIds.add_member(:phone_number, Shapes::ShapeRef.new(shape: uuid, location_name: "PhoneNumber"))
340
+ FieldSourceProfileIds.add_member(:mobile_phone_number, Shapes::ShapeRef.new(shape: uuid, location_name: "MobilePhoneNumber"))
341
+ FieldSourceProfileIds.add_member(:home_phone_number, Shapes::ShapeRef.new(shape: uuid, location_name: "HomePhoneNumber"))
342
+ FieldSourceProfileIds.add_member(:business_phone_number, Shapes::ShapeRef.new(shape: uuid, location_name: "BusinessPhoneNumber"))
343
+ FieldSourceProfileIds.add_member(:email_address, Shapes::ShapeRef.new(shape: uuid, location_name: "EmailAddress"))
344
+ FieldSourceProfileIds.add_member(:personal_email_address, Shapes::ShapeRef.new(shape: uuid, location_name: "PersonalEmailAddress"))
345
+ FieldSourceProfileIds.add_member(:business_email_address, Shapes::ShapeRef.new(shape: uuid, location_name: "BusinessEmailAddress"))
346
+ FieldSourceProfileIds.add_member(:address, Shapes::ShapeRef.new(shape: uuid, location_name: "Address"))
347
+ FieldSourceProfileIds.add_member(:shipping_address, Shapes::ShapeRef.new(shape: uuid, location_name: "ShippingAddress"))
348
+ FieldSourceProfileIds.add_member(:mailing_address, Shapes::ShapeRef.new(shape: uuid, location_name: "MailingAddress"))
349
+ FieldSourceProfileIds.add_member(:billing_address, Shapes::ShapeRef.new(shape: uuid, location_name: "BillingAddress"))
350
+ FieldSourceProfileIds.add_member(:attributes, Shapes::ShapeRef.new(shape: AttributeSourceIdMap, location_name: "Attributes"))
351
+ FieldSourceProfileIds.struct_class = Types::FieldSourceProfileIds
352
+
311
353
  FlowDefinition.add_member(:description, Shapes::ShapeRef.new(shape: FlowDescription, location_name: "Description"))
312
354
  FlowDefinition.add_member(:flow_name, Shapes::ShapeRef.new(shape: FlowName, required: true, location_name: "FlowName"))
313
355
  FlowDefinition.add_member(:kms_arn, Shapes::ShapeRef.new(shape: KmsArn, required: true, location_name: "KmsArn"))
@@ -324,6 +366,7 @@ module Aws::CustomerProfiles
324
366
  GetDomainResponse.add_member(:default_encryption_key, Shapes::ShapeRef.new(shape: encryptionKey, location_name: "DefaultEncryptionKey"))
325
367
  GetDomainResponse.add_member(:dead_letter_queue_url, Shapes::ShapeRef.new(shape: sqsQueueUrl, location_name: "DeadLetterQueueUrl"))
326
368
  GetDomainResponse.add_member(:stats, Shapes::ShapeRef.new(shape: DomainStats, location_name: "Stats"))
369
+ GetDomainResponse.add_member(:matching, Shapes::ShapeRef.new(shape: MatchingResponse, location_name: "Matching"))
327
370
  GetDomainResponse.add_member(:created_at, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "CreatedAt"))
328
371
  GetDomainResponse.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "LastUpdatedAt"))
329
372
  GetDomainResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
@@ -341,6 +384,17 @@ module Aws::CustomerProfiles
341
384
  GetIntegrationResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
342
385
  GetIntegrationResponse.struct_class = Types::GetIntegrationResponse
343
386
 
387
+ GetMatchesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: token, location: "querystring", location_name: "next-token"))
388
+ GetMatchesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: maxSize100, location: "querystring", location_name: "max-results"))
389
+ GetMatchesRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: name, required: true, location: "uri", location_name: "DomainName"))
390
+ GetMatchesRequest.struct_class = Types::GetMatchesRequest
391
+
392
+ GetMatchesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: token, location_name: "NextToken"))
393
+ GetMatchesResponse.add_member(:match_generation_date, Shapes::ShapeRef.new(shape: timestamp, location_name: "MatchGenerationDate"))
394
+ GetMatchesResponse.add_member(:potential_matches, Shapes::ShapeRef.new(shape: matchesNumber, location_name: "PotentialMatches"))
395
+ GetMatchesResponse.add_member(:matches, Shapes::ShapeRef.new(shape: MatchesList, location_name: "Matches"))
396
+ GetMatchesResponse.struct_class = Types::GetMatchesResponse
397
+
344
398
  GetProfileObjectTypeRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: name, required: true, location: "uri", location_name: "DomainName"))
345
399
  GetProfileObjectTypeRequest.add_member(:object_type_name, Shapes::ShapeRef.new(shape: typeName, required: true, location: "uri", location_name: "ObjectTypeName"))
346
400
  GetProfileObjectTypeRequest.struct_class = Types::GetProfileObjectTypeRequest
@@ -474,6 +528,27 @@ module Aws::CustomerProfiles
474
528
  MarketoSourceProperties.add_member(:object, Shapes::ShapeRef.new(shape: Object, required: true, location_name: "Object"))
475
529
  MarketoSourceProperties.struct_class = Types::MarketoSourceProperties
476
530
 
531
+ MatchItem.add_member(:match_id, Shapes::ShapeRef.new(shape: string1To255, location_name: "MatchId"))
532
+ MatchItem.add_member(:profile_ids, Shapes::ShapeRef.new(shape: ProfileIdList, location_name: "ProfileIds"))
533
+ MatchItem.struct_class = Types::MatchItem
534
+
535
+ MatchesList.member = Shapes::ShapeRef.new(shape: MatchItem)
536
+
537
+ MatchingRequest.add_member(:enabled, Shapes::ShapeRef.new(shape: optionalBoolean, required: true, location_name: "Enabled"))
538
+ MatchingRequest.struct_class = Types::MatchingRequest
539
+
540
+ MatchingResponse.add_member(:enabled, Shapes::ShapeRef.new(shape: optionalBoolean, location_name: "Enabled"))
541
+ MatchingResponse.struct_class = Types::MatchingResponse
542
+
543
+ MergeProfilesRequest.add_member(:domain_name, Shapes::ShapeRef.new(shape: name, required: true, location: "uri", location_name: "DomainName"))
544
+ MergeProfilesRequest.add_member(:main_profile_id, Shapes::ShapeRef.new(shape: uuid, required: true, location_name: "MainProfileId"))
545
+ MergeProfilesRequest.add_member(:profile_ids_to_be_merged, Shapes::ShapeRef.new(shape: ProfileIdToBeMergedList, required: true, location_name: "ProfileIdsToBeMerged"))
546
+ MergeProfilesRequest.add_member(:field_source_profile_ids, Shapes::ShapeRef.new(shape: FieldSourceProfileIds, location_name: "FieldSourceProfileIds"))
547
+ MergeProfilesRequest.struct_class = Types::MergeProfilesRequest
548
+
549
+ MergeProfilesResponse.add_member(:message, Shapes::ShapeRef.new(shape: message, location_name: "Message"))
550
+ MergeProfilesResponse.struct_class = Types::MergeProfilesResponse
551
+
477
552
  ObjectTypeField.add_member(:source, Shapes::ShapeRef.new(shape: text, location_name: "Source"))
478
553
  ObjectTypeField.add_member(:target, Shapes::ShapeRef.new(shape: text, location_name: "Target"))
479
554
  ObjectTypeField.add_member(:content_type, Shapes::ShapeRef.new(shape: FieldContentType, location_name: "ContentType"))
@@ -509,6 +584,10 @@ module Aws::CustomerProfiles
509
584
  Profile.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, location_name: "Attributes"))
510
585
  Profile.struct_class = Types::Profile
511
586
 
587
+ ProfileIdList.member = Shapes::ShapeRef.new(shape: uuid)
588
+
589
+ ProfileIdToBeMergedList.member = Shapes::ShapeRef.new(shape: uuid)
590
+
512
591
  ProfileList.member = Shapes::ShapeRef.new(shape: Profile)
513
592
 
514
593
  ProfileObjectList.member = Shapes::ShapeRef.new(shape: ListProfileObjectsItem)
@@ -675,6 +754,7 @@ module Aws::CustomerProfiles
675
754
  UpdateDomainRequest.add_member(:default_expiration_days, Shapes::ShapeRef.new(shape: expirationDaysInteger, location_name: "DefaultExpirationDays"))
676
755
  UpdateDomainRequest.add_member(:default_encryption_key, Shapes::ShapeRef.new(shape: encryptionKey, location_name: "DefaultEncryptionKey"))
677
756
  UpdateDomainRequest.add_member(:dead_letter_queue_url, Shapes::ShapeRef.new(shape: sqsQueueUrl, location_name: "DeadLetterQueueUrl"))
757
+ UpdateDomainRequest.add_member(:matching, Shapes::ShapeRef.new(shape: MatchingRequest, location_name: "Matching"))
678
758
  UpdateDomainRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
679
759
  UpdateDomainRequest.struct_class = Types::UpdateDomainRequest
680
760
 
@@ -682,6 +762,7 @@ module Aws::CustomerProfiles
682
762
  UpdateDomainResponse.add_member(:default_expiration_days, Shapes::ShapeRef.new(shape: expirationDaysInteger, location_name: "DefaultExpirationDays"))
683
763
  UpdateDomainResponse.add_member(:default_encryption_key, Shapes::ShapeRef.new(shape: encryptionKey, location_name: "DefaultEncryptionKey"))
684
764
  UpdateDomainResponse.add_member(:dead_letter_queue_url, Shapes::ShapeRef.new(shape: sqsQueueUrl, location_name: "DeadLetterQueueUrl"))
765
+ UpdateDomainResponse.add_member(:matching, Shapes::ShapeRef.new(shape: MatchingResponse, location_name: "Matching"))
685
766
  UpdateDomainResponse.add_member(:created_at, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "CreatedAt"))
686
767
  UpdateDomainResponse.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "LastUpdatedAt"))
687
768
  UpdateDomainResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
@@ -882,6 +963,19 @@ module Aws::CustomerProfiles
882
963
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
883
964
  end)
884
965
 
966
+ api.add_operation(:get_matches, Seahorse::Model::Operation.new.tap do |o|
967
+ o.name = "GetMatches"
968
+ o.http_method = "GET"
969
+ o.http_request_uri = "/domains/{DomainName}/matches"
970
+ o.input = Shapes::ShapeRef.new(shape: GetMatchesRequest)
971
+ o.output = Shapes::ShapeRef.new(shape: GetMatchesResponse)
972
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
973
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
974
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
975
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
976
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
977
+ end)
978
+
885
979
  api.add_operation(:get_profile_object_type, Seahorse::Model::Operation.new.tap do |o|
886
980
  o.name = "GetProfileObjectType"
887
981
  o.http_method = "GET"
@@ -997,6 +1091,18 @@ module Aws::CustomerProfiles
997
1091
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
998
1092
  end)
999
1093
 
1094
+ api.add_operation(:merge_profiles, Seahorse::Model::Operation.new.tap do |o|
1095
+ o.name = "MergeProfiles"
1096
+ o.http_method = "POST"
1097
+ o.http_request_uri = "/domains/{DomainName}/profiles/objects/merge"
1098
+ o.input = Shapes::ShapeRef.new(shape: MergeProfilesRequest)
1099
+ o.output = Shapes::ShapeRef.new(shape: MergeProfilesResponse)
1100
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1101
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1102
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1103
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1104
+ end)
1105
+
1000
1106
  api.add_operation(:put_integration, Seahorse::Model::Operation.new.tap do |o|
1001
1107
  o.name = "PutIntegration"
1002
1108
  o.http_method = "PUT"
@@ -222,6 +222,9 @@ module Aws::CustomerProfiles
222
222
  # default_expiration_days: 1, # required
223
223
  # default_encryption_key: "encryptionKey",
224
224
  # dead_letter_queue_url: "sqsQueueUrl",
225
+ # matching: {
226
+ # enabled: false, # required
227
+ # },
225
228
  # tags: {
226
229
  # "TagKey" => "TagValue",
227
230
  # },
@@ -250,6 +253,11 @@ module Aws::CustomerProfiles
250
253
  # messages to the DeadLetterQueue.
251
254
  # @return [String]
252
255
  #
256
+ # @!attribute [rw] matching
257
+ # The process of matching duplicate profiles. This process runs every
258
+ # Saturday at 12AM.
259
+ # @return [Types::MatchingRequest]
260
+ #
253
261
  # @!attribute [rw] tags
254
262
  # The tags used to organize, track, or control access for this
255
263
  # resource.
@@ -262,6 +270,7 @@ module Aws::CustomerProfiles
262
270
  :default_expiration_days,
263
271
  :default_encryption_key,
264
272
  :dead_letter_queue_url,
273
+ :matching,
265
274
  :tags)
266
275
  SENSITIVE = []
267
276
  include Aws::Structure
@@ -287,6 +296,11 @@ module Aws::CustomerProfiles
287
296
  # errors associated with ingesting data from third party applications.
288
297
  # @return [String]
289
298
  #
299
+ # @!attribute [rw] matching
300
+ # The process of matching duplicate profiles. This process runs every
301
+ # Saturday at 12AM.
302
+ # @return [Types::MatchingResponse]
303
+ #
290
304
  # @!attribute [rw] created_at
291
305
  # The timestamp of when the domain was created.
292
306
  # @return [Time]
@@ -307,6 +321,7 @@ module Aws::CustomerProfiles
307
321
  :default_expiration_days,
308
322
  :default_encryption_key,
309
323
  :dead_letter_queue_url,
324
+ :matching,
310
325
  :created_at,
311
326
  :last_updated_at,
312
327
  :tags)
@@ -397,7 +412,7 @@ module Aws::CustomerProfiles
397
412
  # @return [String]
398
413
  #
399
414
  # @!attribute [rw] additional_information
400
- # Any additional information relevant to the customer's profile.
415
+ # Any additional information relevant to the customers profile.
401
416
  # @return [String]
402
417
  #
403
418
  # @!attribute [rw] party_type
@@ -429,7 +444,7 @@ module Aws::CustomerProfiles
429
444
  # @return [String]
430
445
  #
431
446
  # @!attribute [rw] phone_number
432
- # The customer's phone number, which has not been specified as a
447
+ # The customers phone number, which has not been specified as a
433
448
  # mobile, home, or business number.
434
449
  # @return [String]
435
450
  #
@@ -446,7 +461,7 @@ module Aws::CustomerProfiles
446
461
  # @return [String]
447
462
  #
448
463
  # @!attribute [rw] email_address
449
- # The customer's email address, which has not been specified as a
464
+ # The customers email address, which has not been specified as a
450
465
  # personal or business address.
451
466
  # @return [String]
452
467
  #
@@ -793,6 +808,152 @@ module Aws::CustomerProfiles
793
808
  include Aws::Structure
794
809
  end
795
810
 
811
+ # A duplicate customer profile that is to be merged into a main profile.
812
+ #
813
+ # @note When making an API call, you may pass FieldSourceProfileIds
814
+ # data as a hash:
815
+ #
816
+ # {
817
+ # account_number: "uuid",
818
+ # additional_information: "uuid",
819
+ # party_type: "uuid",
820
+ # business_name: "uuid",
821
+ # first_name: "uuid",
822
+ # middle_name: "uuid",
823
+ # last_name: "uuid",
824
+ # birth_date: "uuid",
825
+ # gender: "uuid",
826
+ # phone_number: "uuid",
827
+ # mobile_phone_number: "uuid",
828
+ # home_phone_number: "uuid",
829
+ # business_phone_number: "uuid",
830
+ # email_address: "uuid",
831
+ # personal_email_address: "uuid",
832
+ # business_email_address: "uuid",
833
+ # address: "uuid",
834
+ # shipping_address: "uuid",
835
+ # mailing_address: "uuid",
836
+ # billing_address: "uuid",
837
+ # attributes: {
838
+ # "string1To255" => "uuid",
839
+ # },
840
+ # }
841
+ #
842
+ # @!attribute [rw] account_number
843
+ # A unique identifier for the account number field to be merged.
844
+ # @return [String]
845
+ #
846
+ # @!attribute [rw] additional_information
847
+ # A unique identifier for the additional information field to be
848
+ # merged.
849
+ # @return [String]
850
+ #
851
+ # @!attribute [rw] party_type
852
+ # A unique identifier for the party type field to be merged.
853
+ # @return [String]
854
+ #
855
+ # @!attribute [rw] business_name
856
+ # A unique identifier for the business name field to be merged.
857
+ # @return [String]
858
+ #
859
+ # @!attribute [rw] first_name
860
+ # A unique identifier for the first name field to be merged.
861
+ # @return [String]
862
+ #
863
+ # @!attribute [rw] middle_name
864
+ # A unique identifier for the middle name field to be merged.
865
+ # @return [String]
866
+ #
867
+ # @!attribute [rw] last_name
868
+ # A unique identifier for the last name field to be merged.
869
+ # @return [String]
870
+ #
871
+ # @!attribute [rw] birth_date
872
+ # A unique identifier for the birthdate field to be merged.
873
+ # @return [String]
874
+ #
875
+ # @!attribute [rw] gender
876
+ # A unique identifier for the gender field to be merged.
877
+ # @return [String]
878
+ #
879
+ # @!attribute [rw] phone_number
880
+ # A unique identifier for the phone number field to be merged.
881
+ # @return [String]
882
+ #
883
+ # @!attribute [rw] mobile_phone_number
884
+ # A unique identifier for the mobile phone number field to be merged.
885
+ # @return [String]
886
+ #
887
+ # @!attribute [rw] home_phone_number
888
+ # A unique identifier for the home phone number field to be merged.
889
+ # @return [String]
890
+ #
891
+ # @!attribute [rw] business_phone_number
892
+ # A unique identifier for the business phone number field to be
893
+ # merged.
894
+ # @return [String]
895
+ #
896
+ # @!attribute [rw] email_address
897
+ # A unique identifier for the email address field to be merged.
898
+ # @return [String]
899
+ #
900
+ # @!attribute [rw] personal_email_address
901
+ # A unique identifier for the personal email address field to be
902
+ # merged.
903
+ # @return [String]
904
+ #
905
+ # @!attribute [rw] business_email_address
906
+ # A unique identifier for the party type field to be merged.
907
+ # @return [String]
908
+ #
909
+ # @!attribute [rw] address
910
+ # A unique identifier for the party type field to be merged.
911
+ # @return [String]
912
+ #
913
+ # @!attribute [rw] shipping_address
914
+ # A unique identifier for the shipping address field to be merged.
915
+ # @return [String]
916
+ #
917
+ # @!attribute [rw] mailing_address
918
+ # A unique identifier for the mailing address field to be merged.
919
+ # @return [String]
920
+ #
921
+ # @!attribute [rw] billing_address
922
+ # A unique identifier for the billing type field to be merged.
923
+ # @return [String]
924
+ #
925
+ # @!attribute [rw] attributes
926
+ # A unique identifier for the attributes field to be merged.
927
+ # @return [Hash<String,String>]
928
+ #
929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/FieldSourceProfileIds AWS API Documentation
930
+ #
931
+ class FieldSourceProfileIds < Struct.new(
932
+ :account_number,
933
+ :additional_information,
934
+ :party_type,
935
+ :business_name,
936
+ :first_name,
937
+ :middle_name,
938
+ :last_name,
939
+ :birth_date,
940
+ :gender,
941
+ :phone_number,
942
+ :mobile_phone_number,
943
+ :home_phone_number,
944
+ :business_phone_number,
945
+ :email_address,
946
+ :personal_email_address,
947
+ :business_email_address,
948
+ :address,
949
+ :shipping_address,
950
+ :mailing_address,
951
+ :billing_address,
952
+ :attributes)
953
+ SENSITIVE = []
954
+ include Aws::Structure
955
+ end
956
+
796
957
  # The configurations that control how Customer Profiles retrieves data
797
958
  # from the source, Amazon AppFlow. Customer Profiles uses this
798
959
  # information to create an AppFlow flow on behalf of customers.
@@ -913,7 +1074,7 @@ module Aws::CustomerProfiles
913
1074
  # }
914
1075
  #
915
1076
  # @!attribute [rw] domain_name
916
- # A unique name for the domain.
1077
+ # The unique name of the domain.
917
1078
  # @return [String]
918
1079
  #
919
1080
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetDomainRequest AWS API Documentation
@@ -948,6 +1109,11 @@ module Aws::CustomerProfiles
948
1109
  # Usage-specific statistics about the domain.
949
1110
  # @return [Types::DomainStats]
950
1111
  #
1112
+ # @!attribute [rw] matching
1113
+ # The process of matching duplicate profiles. This process runs every
1114
+ # Saturday at 12AM.
1115
+ # @return [Types::MatchingResponse]
1116
+ #
951
1117
  # @!attribute [rw] created_at
952
1118
  # The timestamp of when the domain was created.
953
1119
  # @return [Time]
@@ -969,6 +1135,7 @@ module Aws::CustomerProfiles
969
1135
  :default_encryption_key,
970
1136
  :dead_letter_queue_url,
971
1137
  :stats,
1138
+ :matching,
972
1139
  :created_at,
973
1140
  :last_updated_at,
974
1141
  :tags)
@@ -1039,6 +1206,67 @@ module Aws::CustomerProfiles
1039
1206
  include Aws::Structure
1040
1207
  end
1041
1208
 
1209
+ # @note When making an API call, you may pass GetMatchesRequest
1210
+ # data as a hash:
1211
+ #
1212
+ # {
1213
+ # next_token: "token",
1214
+ # max_results: 1,
1215
+ # domain_name: "name", # required
1216
+ # }
1217
+ #
1218
+ # @!attribute [rw] next_token
1219
+ # The token for the next set of results. Use the value returned in the
1220
+ # previous response in the next request to retrieve the next set of
1221
+ # results.
1222
+ # @return [String]
1223
+ #
1224
+ # @!attribute [rw] max_results
1225
+ # The maximum number of results to return per page.
1226
+ # @return [Integer]
1227
+ #
1228
+ # @!attribute [rw] domain_name
1229
+ # The unique name of the domain.
1230
+ # @return [String]
1231
+ #
1232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetMatchesRequest AWS API Documentation
1233
+ #
1234
+ class GetMatchesRequest < Struct.new(
1235
+ :next_token,
1236
+ :max_results,
1237
+ :domain_name)
1238
+ SENSITIVE = []
1239
+ include Aws::Structure
1240
+ end
1241
+
1242
+ # @!attribute [rw] next_token
1243
+ # If there are additional results, this is the token for the next set
1244
+ # of results.
1245
+ # @return [String]
1246
+ #
1247
+ # @!attribute [rw] match_generation_date
1248
+ # The timestamp this version of Match Result generated.
1249
+ # @return [Time]
1250
+ #
1251
+ # @!attribute [rw] potential_matches
1252
+ # The number of potential matches found.
1253
+ # @return [Integer]
1254
+ #
1255
+ # @!attribute [rw] matches
1256
+ # The list of matched profiles for this instance.
1257
+ # @return [Array<Types::MatchItem>]
1258
+ #
1259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetMatchesResponse AWS API Documentation
1260
+ #
1261
+ class GetMatchesResponse < Struct.new(
1262
+ :next_token,
1263
+ :match_generation_date,
1264
+ :potential_matches,
1265
+ :matches)
1266
+ SENSITIVE = []
1267
+ include Aws::Structure
1268
+ end
1269
+
1042
1270
  # @note When making an API call, you may pass GetProfileObjectTypeRequest
1043
1271
  # data as a hash:
1044
1272
  #
@@ -1730,6 +1958,136 @@ module Aws::CustomerProfiles
1730
1958
  include Aws::Structure
1731
1959
  end
1732
1960
 
1961
+ # The Match group object.
1962
+ #
1963
+ # @!attribute [rw] match_id
1964
+ # The unique identifiers for this group of profiles that match.
1965
+ # @return [String]
1966
+ #
1967
+ # @!attribute [rw] profile_ids
1968
+ # A list of identifiers for profiles that match.
1969
+ # @return [Array<String>]
1970
+ #
1971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MatchItem AWS API Documentation
1972
+ #
1973
+ class MatchItem < Struct.new(
1974
+ :match_id,
1975
+ :profile_ids)
1976
+ SENSITIVE = []
1977
+ include Aws::Structure
1978
+ end
1979
+
1980
+ # The flag that enables the matching process of duplicate profiles.
1981
+ #
1982
+ # @note When making an API call, you may pass MatchingRequest
1983
+ # data as a hash:
1984
+ #
1985
+ # {
1986
+ # enabled: false, # required
1987
+ # }
1988
+ #
1989
+ # @!attribute [rw] enabled
1990
+ # The flag that enables the matching process of duplicate profiles.
1991
+ # @return [Boolean]
1992
+ #
1993
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MatchingRequest AWS API Documentation
1994
+ #
1995
+ class MatchingRequest < Struct.new(
1996
+ :enabled)
1997
+ SENSITIVE = []
1998
+ include Aws::Structure
1999
+ end
2000
+
2001
+ # The flag that enables the matching process of duplicate profiles.
2002
+ #
2003
+ # @!attribute [rw] enabled
2004
+ # The flag that enables the matching process of duplicate profiles.
2005
+ # @return [Boolean]
2006
+ #
2007
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MatchingResponse AWS API Documentation
2008
+ #
2009
+ class MatchingResponse < Struct.new(
2010
+ :enabled)
2011
+ SENSITIVE = []
2012
+ include Aws::Structure
2013
+ end
2014
+
2015
+ # @note When making an API call, you may pass MergeProfilesRequest
2016
+ # data as a hash:
2017
+ #
2018
+ # {
2019
+ # domain_name: "name", # required
2020
+ # main_profile_id: "uuid", # required
2021
+ # profile_ids_to_be_merged: ["uuid"], # required
2022
+ # field_source_profile_ids: {
2023
+ # account_number: "uuid",
2024
+ # additional_information: "uuid",
2025
+ # party_type: "uuid",
2026
+ # business_name: "uuid",
2027
+ # first_name: "uuid",
2028
+ # middle_name: "uuid",
2029
+ # last_name: "uuid",
2030
+ # birth_date: "uuid",
2031
+ # gender: "uuid",
2032
+ # phone_number: "uuid",
2033
+ # mobile_phone_number: "uuid",
2034
+ # home_phone_number: "uuid",
2035
+ # business_phone_number: "uuid",
2036
+ # email_address: "uuid",
2037
+ # personal_email_address: "uuid",
2038
+ # business_email_address: "uuid",
2039
+ # address: "uuid",
2040
+ # shipping_address: "uuid",
2041
+ # mailing_address: "uuid",
2042
+ # billing_address: "uuid",
2043
+ # attributes: {
2044
+ # "string1To255" => "uuid",
2045
+ # },
2046
+ # },
2047
+ # }
2048
+ #
2049
+ # @!attribute [rw] domain_name
2050
+ # The unique name of the domain.
2051
+ # @return [String]
2052
+ #
2053
+ # @!attribute [rw] main_profile_id
2054
+ # The identifier of the profile to be taken.
2055
+ # @return [String]
2056
+ #
2057
+ # @!attribute [rw] profile_ids_to_be_merged
2058
+ # The identifier of the profile to be merged into MainProfileId.
2059
+ # @return [Array<String>]
2060
+ #
2061
+ # @!attribute [rw] field_source_profile_ids
2062
+ # The identifiers of the fields in the profile that has the
2063
+ # information you want to apply to the merge. For example, say you
2064
+ # want to merge EmailAddress from Profile1 into MainProfile. This
2065
+ # would be the identifier of the EmailAddress field in Profile1.
2066
+ # @return [Types::FieldSourceProfileIds]
2067
+ #
2068
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MergeProfilesRequest AWS API Documentation
2069
+ #
2070
+ class MergeProfilesRequest < Struct.new(
2071
+ :domain_name,
2072
+ :main_profile_id,
2073
+ :profile_ids_to_be_merged,
2074
+ :field_source_profile_ids)
2075
+ SENSITIVE = []
2076
+ include Aws::Structure
2077
+ end
2078
+
2079
+ # @!attribute [rw] message
2080
+ # A message that indicates the merge request is complete.
2081
+ # @return [String]
2082
+ #
2083
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MergeProfilesResponse AWS API Documentation
2084
+ #
2085
+ class MergeProfilesResponse < Struct.new(
2086
+ :message)
2087
+ SENSITIVE = []
2088
+ include Aws::Structure
2089
+ end
2090
+
1733
2091
  # Represents a field in a ProfileObjectType.
1734
2092
  #
1735
2093
  # @note When making an API call, you may pass ObjectTypeField
@@ -1815,7 +2173,7 @@ module Aws::CustomerProfiles
1815
2173
  # @return [String]
1816
2174
  #
1817
2175
  # @!attribute [rw] additional_information
1818
- # Any additional information relevant to the customer's profile.
2176
+ # Any additional information relevant to the customers profile.
1819
2177
  # @return [String]
1820
2178
  #
1821
2179
  # @!attribute [rw] party_type
@@ -1864,7 +2222,7 @@ module Aws::CustomerProfiles
1864
2222
  # @return [String]
1865
2223
  #
1866
2224
  # @!attribute [rw] email_address
1867
- # The customer's email address, which has not been specified as a
2225
+ # The customers email address, which has not been specified as a
1868
2226
  # personal or business address.
1869
2227
  # @return [String]
1870
2228
  #
@@ -2925,13 +3283,16 @@ module Aws::CustomerProfiles
2925
3283
  # default_expiration_days: 1,
2926
3284
  # default_encryption_key: "encryptionKey",
2927
3285
  # dead_letter_queue_url: "sqsQueueUrl",
3286
+ # matching: {
3287
+ # enabled: false, # required
3288
+ # },
2928
3289
  # tags: {
2929
3290
  # "TagKey" => "TagValue",
2930
3291
  # },
2931
3292
  # }
2932
3293
  #
2933
3294
  # @!attribute [rw] domain_name
2934
- # The unique name for the domain.
3295
+ # The unique name of the domain.
2935
3296
  # @return [String]
2936
3297
  #
2937
3298
  # @!attribute [rw] default_expiration_days
@@ -2955,6 +3316,11 @@ module Aws::CustomerProfiles
2955
3316
  # messages to the DeadLetterQueue.
2956
3317
  # @return [String]
2957
3318
  #
3319
+ # @!attribute [rw] matching
3320
+ # The process of matching duplicate profiles. This process runs every
3321
+ # Saturday at 12AM.
3322
+ # @return [Types::MatchingRequest]
3323
+ #
2958
3324
  # @!attribute [rw] tags
2959
3325
  # The tags used to organize, track, or control access for this
2960
3326
  # resource.
@@ -2967,13 +3333,14 @@ module Aws::CustomerProfiles
2967
3333
  :default_expiration_days,
2968
3334
  :default_encryption_key,
2969
3335
  :dead_letter_queue_url,
3336
+ :matching,
2970
3337
  :tags)
2971
3338
  SENSITIVE = []
2972
3339
  include Aws::Structure
2973
3340
  end
2974
3341
 
2975
3342
  # @!attribute [rw] domain_name
2976
- # The unique name for the domain.
3343
+ # The unique name of the domain.
2977
3344
  # @return [String]
2978
3345
  #
2979
3346
  # @!attribute [rw] default_expiration_days
@@ -2992,6 +3359,11 @@ module Aws::CustomerProfiles
2992
3359
  # errors associated with ingesting data from third party applications.
2993
3360
  # @return [String]
2994
3361
  #
3362
+ # @!attribute [rw] matching
3363
+ # The process of matching duplicate profiles. This process runs every
3364
+ # Saturday at 12AM.
3365
+ # @return [Types::MatchingResponse]
3366
+ #
2995
3367
  # @!attribute [rw] created_at
2996
3368
  # The timestamp of when the domain was created.
2997
3369
  # @return [Time]
@@ -3012,6 +3384,7 @@ module Aws::CustomerProfiles
3012
3384
  :default_expiration_days,
3013
3385
  :default_encryption_key,
3014
3386
  :dead_letter_queue_url,
3387
+ :matching,
3015
3388
  :created_at,
3016
3389
  :last_updated_at,
3017
3390
  :tags)
@@ -3103,7 +3476,7 @@ module Aws::CustomerProfiles
3103
3476
  # @return [String]
3104
3477
  #
3105
3478
  # @!attribute [rw] additional_information
3106
- # Any additional information relevant to the customer's profile.
3479
+ # Any additional information relevant to the customers profile.
3107
3480
  # @return [String]
3108
3481
  #
3109
3482
  # @!attribute [rw] account_number
@@ -3139,7 +3512,7 @@ module Aws::CustomerProfiles
3139
3512
  # @return [String]
3140
3513
  #
3141
3514
  # @!attribute [rw] phone_number
3142
- # The customer's phone number, which has not been specified as a
3515
+ # The customers phone number, which has not been specified as a
3143
3516
  # mobile, home, or business number.
3144
3517
  # @return [String]
3145
3518
  #
@@ -3156,7 +3529,7 @@ module Aws::CustomerProfiles
3156
3529
  # @return [String]
3157
3530
  #
3158
3531
  # @!attribute [rw] email_address
3159
- # The customer's email address, which has not been specified as a
3532
+ # The customers email address, which has not been specified as a
3160
3533
  # personal or business address.
3161
3534
  # @return [String]
3162
3535
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-customerprofiles
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-08 00:00:00.000000000 Z
11
+ date: 2021-04-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -83,8 +83,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
83
83
  - !ruby/object:Gem::Version
84
84
  version: '0'
85
85
  requirements: []
86
- rubyforge_project:
87
- rubygems_version: 2.7.6.2
86
+ rubygems_version: 3.1.6
88
87
  signing_key:
89
88
  specification_version: 4
90
89
  summary: AWS SDK for Ruby - Customer Profiles