@aws-sdk/client-customer-profiles 3.856.0 → 3.858.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.
@@ -1454,6 +1454,66 @@ export interface BatchGetProfileError {
1454
1454
  */
1455
1455
  ProfileId: string | undefined;
1456
1456
  }
1457
+ /**
1458
+ * @public
1459
+ * @enum
1460
+ */
1461
+ export declare const ContactType: {
1462
+ readonly BUSINESS_EMAIL_ADDRESS: "BusinessEmailAddress";
1463
+ readonly BUSINESS_PHONE_NUMBER: "BusinessPhoneNumber";
1464
+ readonly EMAIL_ADDRESS: "EmailAddress";
1465
+ readonly HOME_PHONE_NUMBER: "HomePhoneNumber";
1466
+ readonly MOBILE_PHONE_NUMBER: "MobilePhoneNumber";
1467
+ readonly PERSONAL_EMAIL_ADDRESS: "PersonalEmailAddress";
1468
+ readonly PHONE_NUMBER: "PhoneNumber";
1469
+ };
1470
+ /**
1471
+ * @public
1472
+ */
1473
+ export type ContactType = (typeof ContactType)[keyof typeof ContactType];
1474
+ /**
1475
+ * <p>Object that defines users contact preference.</p>
1476
+ * @public
1477
+ */
1478
+ export interface ContactPreference {
1479
+ /**
1480
+ * <p>A searchable, unique identifier of a customer profile.</p>
1481
+ * @public
1482
+ */
1483
+ KeyName?: string | undefined;
1484
+ /**
1485
+ * <p>The key value used to look up profile based off the keyName.</p>
1486
+ * @public
1487
+ */
1488
+ KeyValue?: string | undefined;
1489
+ /**
1490
+ * <p>The unique identifier of a customer profile.</p>
1491
+ * @public
1492
+ */
1493
+ ProfileId?: string | undefined;
1494
+ /**
1495
+ * <p>The contact type used for engagement. For example: HomePhoneNumber,
1496
+ * PersonalEmailAddress.</p>
1497
+ * @public
1498
+ */
1499
+ ContactType?: ContactType | undefined;
1500
+ }
1501
+ /**
1502
+ * <p>Object that defines users preferred methods of engagement.</p>
1503
+ * @public
1504
+ */
1505
+ export interface EngagementPreferences {
1506
+ /**
1507
+ * <p>A list of phone-related contact preferences</p>
1508
+ * @public
1509
+ */
1510
+ Phone?: ContactPreference[] | undefined;
1511
+ /**
1512
+ * <p>A list of email-related contact preferences</p>
1513
+ * @public
1514
+ */
1515
+ Email?: ContactPreference[] | undefined;
1516
+ }
1457
1517
  /**
1458
1518
  * <p>A data type pair that consists of a <code>KeyName</code> and <code>Values</code> list
1459
1519
  * that were used to find a profile returned in response to a <a href="https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_SearchProfiles.html">SearchProfiles</a> request.
@@ -1498,6 +1558,18 @@ export declare const PartyType: {
1498
1558
  * @public
1499
1559
  */
1500
1560
  export type PartyType = (typeof PartyType)[keyof typeof PartyType];
1561
+ /**
1562
+ * @public
1563
+ * @enum
1564
+ */
1565
+ export declare const ProfileType: {
1566
+ readonly ACCOUNT_PROFILE: "ACCOUNT_PROFILE";
1567
+ readonly PROFILE: "PROFILE";
1568
+ };
1569
+ /**
1570
+ * @public
1571
+ */
1572
+ export type ProfileType = (typeof ProfileType)[keyof typeof ProfileType];
1501
1573
  /**
1502
1574
  * <p>The standard profile of a customer.</p>
1503
1575
  * @public
@@ -1657,6 +1729,16 @@ export interface Profile {
1657
1729
  * @public
1658
1730
  */
1659
1731
  GenderString?: string | undefined;
1732
+ /**
1733
+ * <p>The type of the profile.</p>
1734
+ * @public
1735
+ */
1736
+ ProfileType?: ProfileType | undefined;
1737
+ /**
1738
+ * <p>The customer or account’s engagement preferences.</p>
1739
+ * @public
1740
+ */
1741
+ EngagementPreferences?: EngagementPreferences | undefined;
1660
1742
  }
1661
1743
  /**
1662
1744
  * @public
@@ -3218,6 +3300,16 @@ export interface CreateProfileRequest {
3218
3300
  * @public
3219
3301
  */
3220
3302
  GenderString?: string | undefined;
3303
+ /**
3304
+ * <p>The type of the profile.</p>
3305
+ * @public
3306
+ */
3307
+ ProfileType?: ProfileType | undefined;
3308
+ /**
3309
+ * <p>Object that defines the preferred methods of engagement, per channel.</p>
3310
+ * @public
3311
+ */
3312
+ EngagementPreferences?: EngagementPreferences | undefined;
3221
3313
  }
3222
3314
  /**
3223
3315
  * @public
@@ -3277,6 +3369,34 @@ export interface DateDimension {
3277
3369
  */
3278
3370
  Values: string[] | undefined;
3279
3371
  }
3372
+ /**
3373
+ * @public
3374
+ * @enum
3375
+ */
3376
+ export declare const ProfileTypeDimensionType: {
3377
+ readonly EXCLUSIVE: "EXCLUSIVE";
3378
+ readonly INCLUSIVE: "INCLUSIVE";
3379
+ };
3380
+ /**
3381
+ * @public
3382
+ */
3383
+ export type ProfileTypeDimensionType = (typeof ProfileTypeDimensionType)[keyof typeof ProfileTypeDimensionType];
3384
+ /**
3385
+ * <p>Object to hold the dimension of a profile type field to segment on.</p>
3386
+ * @public
3387
+ */
3388
+ export interface ProfileTypeDimension {
3389
+ /**
3390
+ * <p>The action to segment on.</p>
3391
+ * @public
3392
+ */
3393
+ DimensionType: ProfileTypeDimensionType | undefined;
3394
+ /**
3395
+ * <p>The values to apply the DimensionType on.</p>
3396
+ * @public
3397
+ */
3398
+ Values: ProfileType[] | undefined;
3399
+ }
3280
3400
  /**
3281
3401
  * <p>The object used to segment on attributes within the customer profile.</p>
3282
3402
  * @public
@@ -3387,6 +3507,11 @@ export interface ProfileAttributes {
3387
3507
  * @public
3388
3508
  */
3389
3509
  Attributes?: Record<string, AttributeDimension> | undefined;
3510
+ /**
3511
+ * <p>A field to describe values to segment on within profile type.</p>
3512
+ * @public
3513
+ */
3514
+ ProfileType?: ProfileTypeDimension | undefined;
3390
3515
  }
3391
3516
  /**
3392
3517
  * <p>Object that holds what profile and calculated attributes to segment on.</p>
@@ -7310,6 +7435,16 @@ export interface FieldSourceProfileIds {
7310
7435
  * @public
7311
7436
  */
7312
7437
  Attributes?: Record<string, string> | undefined;
7438
+ /**
7439
+ * <p>A unique identifier for the profile type field to be merged.</p>
7440
+ * @public
7441
+ */
7442
+ ProfileType?: string | undefined;
7443
+ /**
7444
+ * <p>A unique identifier for the engagement preferences field to be merged.</p>
7445
+ * @public
7446
+ */
7447
+ EngagementPreferences?: string | undefined;
7313
7448
  }
7314
7449
  /**
7315
7450
  * @public
@@ -7493,276 +7628,6 @@ export interface PutProfileObjectResponse {
7493
7628
  */
7494
7629
  ProfileObjectUniqueKey?: string | undefined;
7495
7630
  }
7496
- /**
7497
- * @public
7498
- */
7499
- export interface PutProfileObjectTypeRequest {
7500
- /**
7501
- * <p>The unique name of the domain.</p>
7502
- * @public
7503
- */
7504
- DomainName: string | undefined;
7505
- /**
7506
- * <p>The name of the profile object type.</p>
7507
- * @public
7508
- */
7509
- ObjectTypeName: string | undefined;
7510
- /**
7511
- * <p>Description of the profile object type.</p>
7512
- * @public
7513
- */
7514
- Description: string | undefined;
7515
- /**
7516
- * <p>A unique identifier for the object template. For some attributes in the request, the
7517
- * service will use the default value from the object template when TemplateId is present. If
7518
- * these attributes are present in the request, the service may return a
7519
- * <code>BadRequestException</code>. These attributes include: AllowProfileCreation,
7520
- * SourceLastUpdatedTimestampFormat, Fields, and Keys. For example, if AllowProfileCreation is
7521
- * set to true when TemplateId is set, the service may return a
7522
- * <code>BadRequestException</code>.</p>
7523
- * @public
7524
- */
7525
- TemplateId?: string | undefined;
7526
- /**
7527
- * <p>The number of days until the data in the object expires.</p>
7528
- * @public
7529
- */
7530
- ExpirationDays?: number | undefined;
7531
- /**
7532
- * <p>The customer-provided key to encrypt the profile object that will be created in this
7533
- * profile object type.</p>
7534
- * @public
7535
- */
7536
- EncryptionKey?: string | undefined;
7537
- /**
7538
- * <p>Indicates whether a profile should be created when data is received if one doesn’t exist
7539
- * for an object of this type. The default is <code>FALSE</code>. If the AllowProfileCreation
7540
- * flag is set to <code>FALSE</code>, then the service tries to fetch a standard profile and
7541
- * associate this object with the profile. If it is set to <code>TRUE</code>, and if no match
7542
- * is found, then the service creates a new standard profile.</p>
7543
- * @public
7544
- */
7545
- AllowProfileCreation?: boolean | undefined;
7546
- /**
7547
- * <p>The format of your <code>sourceLastUpdatedTimestamp</code> that was previously set up.
7548
- * </p>
7549
- * @public
7550
- */
7551
- SourceLastUpdatedTimestampFormat?: string | undefined;
7552
- /**
7553
- * <p>The amount of profile object max count assigned to the object type</p>
7554
- * @public
7555
- */
7556
- MaxProfileObjectCount?: number | undefined;
7557
- /**
7558
- * <p>A map of the name and ObjectType field.</p>
7559
- * @public
7560
- */
7561
- Fields?: Record<string, ObjectTypeField> | undefined;
7562
- /**
7563
- * <p>A list of unique keys that can be used to map data to the profile.</p>
7564
- * @public
7565
- */
7566
- Keys?: Record<string, ObjectTypeKey[]> | undefined;
7567
- /**
7568
- * <p>The tags used to organize, track, or control access for this resource.</p>
7569
- * @public
7570
- */
7571
- Tags?: Record<string, string> | undefined;
7572
- }
7573
- /**
7574
- * @public
7575
- */
7576
- export interface PutProfileObjectTypeResponse {
7577
- /**
7578
- * <p>The name of the profile object type.</p>
7579
- * @public
7580
- */
7581
- ObjectTypeName: string | undefined;
7582
- /**
7583
- * <p>Description of the profile object type.</p>
7584
- * @public
7585
- */
7586
- Description: string | undefined;
7587
- /**
7588
- * <p>A unique identifier for the object template.</p>
7589
- * @public
7590
- */
7591
- TemplateId?: string | undefined;
7592
- /**
7593
- * <p>The number of days until the data in the object expires.</p>
7594
- * @public
7595
- */
7596
- ExpirationDays?: number | undefined;
7597
- /**
7598
- * <p>The customer-provided key to encrypt the profile object that will be created in this
7599
- * profile object type.</p>
7600
- * @public
7601
- */
7602
- EncryptionKey?: string | undefined;
7603
- /**
7604
- * <p>Indicates whether a profile should be created when data is received if one doesn’t exist
7605
- * for an object of this type. The default is <code>FALSE</code>. If the AllowProfileCreation
7606
- * flag is set to <code>FALSE</code>, then the service tries to fetch a standard profile and
7607
- * associate this object with the profile. If it is set to <code>TRUE</code>, and if no match
7608
- * is found, then the service creates a new standard profile.</p>
7609
- * @public
7610
- */
7611
- AllowProfileCreation?: boolean | undefined;
7612
- /**
7613
- * <p>The format of your <code>sourceLastUpdatedTimestamp</code> that was previously set up in
7614
- * fields that were parsed using <a href="https://docs.oracle.com/javase/10/docs/api/java/text/SimpleDateFormat.html">SimpleDateFormat</a>. If you have <code>sourceLastUpdatedTimestamp</code> in your
7615
- * field, you must set up <code>sourceLastUpdatedTimestampFormat</code>.</p>
7616
- * @public
7617
- */
7618
- SourceLastUpdatedTimestampFormat?: string | undefined;
7619
- /**
7620
- * <p>The amount of profile object max count assigned to the object type.</p>
7621
- * @public
7622
- */
7623
- MaxProfileObjectCount?: number | undefined;
7624
- /**
7625
- * <p>The amount of provisioned profile object max count available.</p>
7626
- * @public
7627
- */
7628
- MaxAvailableProfileObjectCount?: number | undefined;
7629
- /**
7630
- * <p>A map of the name and ObjectType field.</p>
7631
- * @public
7632
- */
7633
- Fields?: Record<string, ObjectTypeField> | undefined;
7634
- /**
7635
- * <p>A list of unique keys that can be used to map data to the profile.</p>
7636
- * @public
7637
- */
7638
- Keys?: Record<string, ObjectTypeKey[]> | undefined;
7639
- /**
7640
- * <p>The timestamp of when the domain was created.</p>
7641
- * @public
7642
- */
7643
- CreatedAt?: Date | undefined;
7644
- /**
7645
- * <p>The timestamp of when the domain was most recently edited.</p>
7646
- * @public
7647
- */
7648
- LastUpdatedAt?: Date | undefined;
7649
- /**
7650
- * <p>The tags used to organize, track, or control access for this resource.</p>
7651
- * @public
7652
- */
7653
- Tags?: Record<string, string> | undefined;
7654
- }
7655
- /**
7656
- * @public
7657
- * @enum
7658
- */
7659
- export declare const LogicalOperator: {
7660
- readonly AND: "AND";
7661
- readonly OR: "OR";
7662
- };
7663
- /**
7664
- * @public
7665
- */
7666
- export type LogicalOperator = (typeof LogicalOperator)[keyof typeof LogicalOperator];
7667
- /**
7668
- * @public
7669
- */
7670
- export interface SearchProfilesRequest {
7671
- /**
7672
- * <p>The pagination token from the previous SearchProfiles API call.</p>
7673
- * @public
7674
- */
7675
- NextToken?: string | undefined;
7676
- /**
7677
- * <p>The maximum number of objects returned per page.</p>
7678
- * <p>The default is 20 if this parameter is not included in the request.</p>
7679
- * @public
7680
- */
7681
- MaxResults?: number | undefined;
7682
- /**
7683
- * <p>The unique name of the domain.</p>
7684
- * @public
7685
- */
7686
- DomainName: string | undefined;
7687
- /**
7688
- * <p>A searchable identifier of a customer profile. The predefined keys you can use to search include: _account, _profileId,
7689
- * _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, _marketoLeadId,
7690
- * _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId,
7691
- * _zendeskExternalId, _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId,
7692
- * _segmentUserId, _shopifyCustomerId, _shopifyOrderId.</p>
7693
- * @public
7694
- */
7695
- KeyName: string | undefined;
7696
- /**
7697
- * <p>A list of key values.</p>
7698
- * @public
7699
- */
7700
- Values: string[] | undefined;
7701
- /**
7702
- * <p>A list of <code>AdditionalSearchKey</code> objects that are each searchable identifiers
7703
- * of a profile. Each <code>AdditionalSearchKey</code> object contains a <code>KeyName</code>
7704
- * and a list of <code>Values</code> associated with that specific key (i.e., a key-value(s)
7705
- * pair). These additional search keys will be used in conjunction with the
7706
- * <code>LogicalOperator</code> and the required <code>KeyName</code> and
7707
- * <code>Values</code> parameters to search for profiles that satisfy the search criteria.
7708
- * </p>
7709
- * @public
7710
- */
7711
- AdditionalSearchKeys?: AdditionalSearchKey[] | undefined;
7712
- /**
7713
- * <p>Relationship between all specified search keys that will be used to search for profiles.
7714
- * This includes the required <code>KeyName</code> and <code>Values</code> parameters as well
7715
- * as any key-value(s) pairs specified in the <code>AdditionalSearchKeys</code> list.</p>
7716
- * <p>This parameter influences which profiles will be returned in the response in the
7717
- * following manner:</p>
7718
- * <ul>
7719
- * <li>
7720
- * <p>
7721
- * <code>AND</code> - The response only includes profiles that match all of the
7722
- * search keys.</p>
7723
- * </li>
7724
- * <li>
7725
- * <p>
7726
- * <code>OR</code> - The response includes profiles that match at least one of the
7727
- * search keys.</p>
7728
- * </li>
7729
- * </ul>
7730
- * <p>The <code>OR</code> relationship is the default behavior if this parameter is not
7731
- * included in the request.</p>
7732
- * @public
7733
- */
7734
- LogicalOperator?: LogicalOperator | undefined;
7735
- }
7736
- /**
7737
- * @public
7738
- */
7739
- export interface SearchProfilesResponse {
7740
- /**
7741
- * <p>The list of Profiles matching the search criteria.</p>
7742
- * @public
7743
- */
7744
- Items?: Profile[] | undefined;
7745
- /**
7746
- * <p>The pagination token from the previous SearchProfiles API call.</p>
7747
- * @public
7748
- */
7749
- NextToken?: string | undefined;
7750
- }
7751
- /**
7752
- * @public
7753
- */
7754
- export interface StartUploadJobRequest {
7755
- /**
7756
- * <p>The unique name of the domain containing the upload job to start. </p>
7757
- * @public
7758
- */
7759
- DomainName: string | undefined;
7760
- /**
7761
- * <p>The unique identifier of the upload job to start. </p>
7762
- * @public
7763
- */
7764
- JobId: string | undefined;
7765
- }
7766
7631
  /**
7767
7632
  * @internal
7768
7633
  */
@@ -7791,6 +7656,10 @@ export declare const BatchGetCalculatedAttributeForProfileRequestFilterSensitive
7791
7656
  * @internal
7792
7657
  */
7793
7658
  export declare const BatchGetCalculatedAttributeForProfileResponseFilterSensitiveLog: (obj: BatchGetCalculatedAttributeForProfileResponse) => any;
7659
+ /**
7660
+ * @internal
7661
+ */
7662
+ export declare const EngagementPreferencesFilterSensitiveLog: (obj: EngagementPreferences) => any;
7794
7663
  /**
7795
7664
  * @internal
7796
7665
  */
@@ -7847,6 +7716,10 @@ export declare const CreateIntegrationWorkflowRequestFilterSensitiveLog: (obj: C
7847
7716
  * @internal
7848
7717
  */
7849
7718
  export declare const CreateProfileRequestFilterSensitiveLog: (obj: CreateProfileRequest) => any;
7719
+ /**
7720
+ * @internal
7721
+ */
7722
+ export declare const ProfileTypeDimensionFilterSensitiveLog: (obj: ProfileTypeDimension) => any;
7850
7723
  /**
7851
7724
  * @internal
7852
7725
  */
@@ -7975,15 +7848,3 @@ export declare const PutIntegrationRequestFilterSensitiveLog: (obj: PutIntegrati
7975
7848
  * @internal
7976
7849
  */
7977
7850
  export declare const PutProfileObjectRequestFilterSensitiveLog: (obj: PutProfileObjectRequest) => any;
7978
- /**
7979
- * @internal
7980
- */
7981
- export declare const PutProfileObjectTypeRequestFilterSensitiveLog: (obj: PutProfileObjectTypeRequest) => any;
7982
- /**
7983
- * @internal
7984
- */
7985
- export declare const PutProfileObjectTypeResponseFilterSensitiveLog: (obj: PutProfileObjectTypeResponse) => any;
7986
- /**
7987
- * @internal
7988
- */
7989
- export declare const SearchProfilesResponseFilterSensitiveLog: (obj: SearchProfilesResponse) => any;