aws-sdk-customerprofiles 1.56.0 → 1.58.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -501,6 +501,169 @@ module Aws::CustomerProfiles
501
501
  req.send_request(options)
502
502
  end
503
503
 
504
+ # Fetch the possible attribute values given the attribute name.
505
+ #
506
+ # @option params [required, String] :calculated_attribute_name
507
+ # The unique name of the calculated attribute.
508
+ #
509
+ # @option params [required, String] :domain_name
510
+ # The unique name of the domain.
511
+ #
512
+ # @option params [required, Array<String>] :profile_ids
513
+ # List of unique identifiers for customer profiles to retrieve.
514
+ #
515
+ # @option params [Types::ConditionOverrides] :condition_overrides
516
+ # Overrides the condition block within the original calculated attribute
517
+ # definition.
518
+ #
519
+ # @return [Types::BatchGetCalculatedAttributeForProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
520
+ #
521
+ # * {Types::BatchGetCalculatedAttributeForProfileResponse#errors #errors} => Array&lt;Types::BatchGetCalculatedAttributeForProfileError&gt;
522
+ # * {Types::BatchGetCalculatedAttributeForProfileResponse#calculated_attribute_values #calculated_attribute_values} => Array&lt;Types::CalculatedAttributeValue&gt;
523
+ # * {Types::BatchGetCalculatedAttributeForProfileResponse#condition_overrides #condition_overrides} => Types::ConditionOverrides
524
+ #
525
+ # @example Request syntax with placeholder values
526
+ #
527
+ # resp = client.batch_get_calculated_attribute_for_profile({
528
+ # calculated_attribute_name: "typeName", # required
529
+ # domain_name: "name", # required
530
+ # profile_ids: ["uuid"], # required
531
+ # condition_overrides: {
532
+ # range: {
533
+ # start: 1, # required
534
+ # end: 1,
535
+ # unit: "DAYS", # required, accepts DAYS
536
+ # },
537
+ # },
538
+ # })
539
+ #
540
+ # @example Response structure
541
+ #
542
+ # resp.errors #=> Array
543
+ # resp.errors[0].code #=> String
544
+ # resp.errors[0].message #=> String
545
+ # resp.errors[0].profile_id #=> String
546
+ # resp.calculated_attribute_values #=> Array
547
+ # resp.calculated_attribute_values[0].calculated_attribute_name #=> String
548
+ # resp.calculated_attribute_values[0].display_name #=> String
549
+ # resp.calculated_attribute_values[0].is_data_partial #=> String
550
+ # resp.calculated_attribute_values[0].profile_id #=> String
551
+ # resp.calculated_attribute_values[0].value #=> String
552
+ # resp.condition_overrides.range.start #=> Integer
553
+ # resp.condition_overrides.range.end #=> Integer
554
+ # resp.condition_overrides.range.unit #=> String, one of "DAYS"
555
+ #
556
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/BatchGetCalculatedAttributeForProfile AWS API Documentation
557
+ #
558
+ # @overload batch_get_calculated_attribute_for_profile(params = {})
559
+ # @param [Hash] params ({})
560
+ def batch_get_calculated_attribute_for_profile(params = {}, options = {})
561
+ req = build_request(:batch_get_calculated_attribute_for_profile, params)
562
+ req.send_request(options)
563
+ end
564
+
565
+ # Get a batch of profiles.
566
+ #
567
+ # @option params [required, String] :domain_name
568
+ # The unique name of the domain.
569
+ #
570
+ # @option params [required, Array<String>] :profile_ids
571
+ # List of unique identifiers for customer profiles to retrieve.
572
+ #
573
+ # @return [Types::BatchGetProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
574
+ #
575
+ # * {Types::BatchGetProfileResponse#errors #errors} => Array&lt;Types::BatchGetProfileError&gt;
576
+ # * {Types::BatchGetProfileResponse#profiles #profiles} => Array&lt;Types::Profile&gt;
577
+ #
578
+ # @example Request syntax with placeholder values
579
+ #
580
+ # resp = client.batch_get_profile({
581
+ # domain_name: "name", # required
582
+ # profile_ids: ["uuid"], # required
583
+ # })
584
+ #
585
+ # @example Response structure
586
+ #
587
+ # resp.errors #=> Array
588
+ # resp.errors[0].code #=> String
589
+ # resp.errors[0].message #=> String
590
+ # resp.errors[0].profile_id #=> String
591
+ # resp.profiles #=> Array
592
+ # resp.profiles[0].profile_id #=> String
593
+ # resp.profiles[0].account_number #=> String
594
+ # resp.profiles[0].additional_information #=> String
595
+ # resp.profiles[0].party_type #=> String, one of "INDIVIDUAL", "BUSINESS", "OTHER"
596
+ # resp.profiles[0].business_name #=> String
597
+ # resp.profiles[0].first_name #=> String
598
+ # resp.profiles[0].middle_name #=> String
599
+ # resp.profiles[0].last_name #=> String
600
+ # resp.profiles[0].birth_date #=> String
601
+ # resp.profiles[0].gender #=> String, one of "MALE", "FEMALE", "UNSPECIFIED"
602
+ # resp.profiles[0].phone_number #=> String
603
+ # resp.profiles[0].mobile_phone_number #=> String
604
+ # resp.profiles[0].home_phone_number #=> String
605
+ # resp.profiles[0].business_phone_number #=> String
606
+ # resp.profiles[0].email_address #=> String
607
+ # resp.profiles[0].personal_email_address #=> String
608
+ # resp.profiles[0].business_email_address #=> String
609
+ # resp.profiles[0].address.address_1 #=> String
610
+ # resp.profiles[0].address.address_2 #=> String
611
+ # resp.profiles[0].address.address_3 #=> String
612
+ # resp.profiles[0].address.address_4 #=> String
613
+ # resp.profiles[0].address.city #=> String
614
+ # resp.profiles[0].address.county #=> String
615
+ # resp.profiles[0].address.state #=> String
616
+ # resp.profiles[0].address.province #=> String
617
+ # resp.profiles[0].address.country #=> String
618
+ # resp.profiles[0].address.postal_code #=> String
619
+ # resp.profiles[0].shipping_address.address_1 #=> String
620
+ # resp.profiles[0].shipping_address.address_2 #=> String
621
+ # resp.profiles[0].shipping_address.address_3 #=> String
622
+ # resp.profiles[0].shipping_address.address_4 #=> String
623
+ # resp.profiles[0].shipping_address.city #=> String
624
+ # resp.profiles[0].shipping_address.county #=> String
625
+ # resp.profiles[0].shipping_address.state #=> String
626
+ # resp.profiles[0].shipping_address.province #=> String
627
+ # resp.profiles[0].shipping_address.country #=> String
628
+ # resp.profiles[0].shipping_address.postal_code #=> String
629
+ # resp.profiles[0].mailing_address.address_1 #=> String
630
+ # resp.profiles[0].mailing_address.address_2 #=> String
631
+ # resp.profiles[0].mailing_address.address_3 #=> String
632
+ # resp.profiles[0].mailing_address.address_4 #=> String
633
+ # resp.profiles[0].mailing_address.city #=> String
634
+ # resp.profiles[0].mailing_address.county #=> String
635
+ # resp.profiles[0].mailing_address.state #=> String
636
+ # resp.profiles[0].mailing_address.province #=> String
637
+ # resp.profiles[0].mailing_address.country #=> String
638
+ # resp.profiles[0].mailing_address.postal_code #=> String
639
+ # resp.profiles[0].billing_address.address_1 #=> String
640
+ # resp.profiles[0].billing_address.address_2 #=> String
641
+ # resp.profiles[0].billing_address.address_3 #=> String
642
+ # resp.profiles[0].billing_address.address_4 #=> String
643
+ # resp.profiles[0].billing_address.city #=> String
644
+ # resp.profiles[0].billing_address.county #=> String
645
+ # resp.profiles[0].billing_address.state #=> String
646
+ # resp.profiles[0].billing_address.province #=> String
647
+ # resp.profiles[0].billing_address.country #=> String
648
+ # resp.profiles[0].billing_address.postal_code #=> String
649
+ # resp.profiles[0].attributes #=> Hash
650
+ # resp.profiles[0].attributes["string1To255"] #=> String
651
+ # resp.profiles[0].found_by_items #=> Array
652
+ # resp.profiles[0].found_by_items[0].key_name #=> String
653
+ # resp.profiles[0].found_by_items[0].values #=> Array
654
+ # resp.profiles[0].found_by_items[0].values[0] #=> String
655
+ # resp.profiles[0].party_type_string #=> String
656
+ # resp.profiles[0].gender_string #=> String
657
+ #
658
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/BatchGetProfile AWS API Documentation
659
+ #
660
+ # @overload batch_get_profile(params = {})
661
+ # @param [Hash] params ({})
662
+ def batch_get_profile(params = {}, options = {})
663
+ req = build_request(:batch_get_profile, params)
664
+ req.send_request(options)
665
+ end
666
+
504
667
  # Creates a new calculated attribute definition. After creation, new
505
668
  # object data ingested into Customer Profiles will be included in the
506
669
  # calculated attribute, which can be retrieved for a profile using the
@@ -533,6 +696,10 @@ module Aws::CustomerProfiles
533
696
  # The conditions including range, object count, and threshold for the
534
697
  # calculated attribute.
535
698
  #
699
+ # @option params [Types::Filter] :filter
700
+ # Defines how to filter incoming objects to include part of the
701
+ # Calculated Attribute.
702
+ #
536
703
  # @option params [required, String] :statistic
537
704
  # The aggregation operation to perform for the calculated attribute.
538
705
  #
@@ -546,6 +713,7 @@ module Aws::CustomerProfiles
546
713
  # * {Types::CreateCalculatedAttributeDefinitionResponse#description #description} => String
547
714
  # * {Types::CreateCalculatedAttributeDefinitionResponse#attribute_details #attribute_details} => Types::AttributeDetails
548
715
  # * {Types::CreateCalculatedAttributeDefinitionResponse#conditions #conditions} => Types::Conditions
716
+ # * {Types::CreateCalculatedAttributeDefinitionResponse#filter #data.filter} => Types::Filter (This method conflicts with a method on Response, call it through the data member)
549
717
  # * {Types::CreateCalculatedAttributeDefinitionResponse#statistic #statistic} => String
550
718
  # * {Types::CreateCalculatedAttributeDefinitionResponse#created_at #created_at} => Time
551
719
  # * {Types::CreateCalculatedAttributeDefinitionResponse#last_updated_at #last_updated_at} => Time
@@ -577,6 +745,24 @@ module Aws::CustomerProfiles
577
745
  # operator: "EQUAL_TO", # required, accepts EQUAL_TO, GREATER_THAN, LESS_THAN, NOT_EQUAL_TO
578
746
  # },
579
747
  # },
748
+ # filter: {
749
+ # include: "ALL", # required, accepts ALL, ANY, NONE
750
+ # groups: [ # required
751
+ # {
752
+ # type: "ALL", # required, accepts ALL, ANY, NONE
753
+ # dimensions: [ # required
754
+ # {
755
+ # attributes: { # required
756
+ # "attributeName" => {
757
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH, BEFORE, AFTER, BETWEEN, NOT_BETWEEN, ON, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, EQUAL
758
+ # values: ["string1To255"], # required
759
+ # },
760
+ # },
761
+ # },
762
+ # ],
763
+ # },
764
+ # ],
765
+ # },
580
766
  # statistic: "FIRST_OCCURRENCE", # required, accepts FIRST_OCCURRENCE, LAST_OCCURRENCE, COUNT, SUM, MINIMUM, MAXIMUM, AVERAGE, MAX_OCCURRENCE
581
767
  # tags: {
582
768
  # "TagKey" => "TagValue",
@@ -596,6 +782,14 @@ module Aws::CustomerProfiles
596
782
  # resp.conditions.object_count #=> Integer
597
783
  # resp.conditions.threshold.value #=> String
598
784
  # resp.conditions.threshold.operator #=> String, one of "EQUAL_TO", "GREATER_THAN", "LESS_THAN", "NOT_EQUAL_TO"
785
+ # resp.data.filter.include #=> String, one of "ALL", "ANY", "NONE"
786
+ # resp.data.filter.groups #=> Array
787
+ # resp.data.filter.groups[0].type #=> String, one of "ALL", "ANY", "NONE"
788
+ # resp.data.filter.groups[0].dimensions #=> Array
789
+ # resp.data.filter.groups[0].dimensions[0].attributes #=> Hash
790
+ # resp.data.filter.groups[0].dimensions[0].attributes["attributeName"].dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH", "BEFORE", "AFTER", "BETWEEN", "NOT_BETWEEN", "ON", "GREATER_THAN", "LESS_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL", "EQUAL"
791
+ # resp.data.filter.groups[0].dimensions[0].attributes["attributeName"].values #=> Array
792
+ # resp.data.filter.groups[0].dimensions[0].attributes["attributeName"].values[0] #=> String
599
793
  # resp.statistic #=> String, one of "FIRST_OCCURRENCE", "LAST_OCCURRENCE", "COUNT", "SUM", "MINIMUM", "MAXIMUM", "AVERAGE", "MAX_OCCURRENCE"
600
794
  # resp.created_at #=> Time
601
795
  # resp.last_updated_at #=> Time
@@ -868,6 +1062,128 @@ module Aws::CustomerProfiles
868
1062
  req.send_request(options)
869
1063
  end
870
1064
 
1065
+ # Creates an event trigger, which specifies the rules when to perform
1066
+ # action based on customer's ingested data.
1067
+ #
1068
+ # Each event stream can be associated with only one integration in the
1069
+ # same region and AWS account as the event stream.
1070
+ #
1071
+ # @option params [required, String] :domain_name
1072
+ # The unique name of the domain.
1073
+ #
1074
+ # @option params [required, String] :event_trigger_name
1075
+ # The unique name of the event trigger.
1076
+ #
1077
+ # @option params [required, String] :object_type_name
1078
+ # The unique name of the object type.
1079
+ #
1080
+ # @option params [String] :description
1081
+ # The description of the event trigger.
1082
+ #
1083
+ # @option params [required, Array<Types::EventTriggerCondition>] :event_trigger_conditions
1084
+ # A list of conditions that determine when an event should trigger the
1085
+ # destination.
1086
+ #
1087
+ # @option params [String] :segment_filter
1088
+ # The destination is triggered only for profiles that meet the criteria
1089
+ # of a segment definition.
1090
+ #
1091
+ # @option params [Types::EventTriggerLimits] :event_trigger_limits
1092
+ # Defines limits controlling whether an event triggers the destination,
1093
+ # based on ingestion latency and the number of invocations per profile
1094
+ # over specific time periods.
1095
+ #
1096
+ # @option params [Hash<String,String>] :tags
1097
+ # An array of key-value pairs to apply to this resource.
1098
+ #
1099
+ # @return [Types::CreateEventTriggerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1100
+ #
1101
+ # * {Types::CreateEventTriggerResponse#event_trigger_name #event_trigger_name} => String
1102
+ # * {Types::CreateEventTriggerResponse#object_type_name #object_type_name} => String
1103
+ # * {Types::CreateEventTriggerResponse#description #description} => String
1104
+ # * {Types::CreateEventTriggerResponse#event_trigger_conditions #event_trigger_conditions} => Array&lt;Types::EventTriggerCondition&gt;
1105
+ # * {Types::CreateEventTriggerResponse#segment_filter #segment_filter} => String
1106
+ # * {Types::CreateEventTriggerResponse#event_trigger_limits #event_trigger_limits} => Types::EventTriggerLimits
1107
+ # * {Types::CreateEventTriggerResponse#created_at #created_at} => Time
1108
+ # * {Types::CreateEventTriggerResponse#last_updated_at #last_updated_at} => Time
1109
+ # * {Types::CreateEventTriggerResponse#tags #tags} => Hash&lt;String,String&gt;
1110
+ #
1111
+ # @example Request syntax with placeholder values
1112
+ #
1113
+ # resp = client.create_event_trigger({
1114
+ # domain_name: "name", # required
1115
+ # event_trigger_name: "name", # required
1116
+ # object_type_name: "typeName", # required
1117
+ # description: "sensitiveText",
1118
+ # event_trigger_conditions: [ # required
1119
+ # {
1120
+ # event_trigger_dimensions: [ # required
1121
+ # {
1122
+ # object_attributes: [ # required
1123
+ # {
1124
+ # source: "text",
1125
+ # field_name: "fieldName",
1126
+ # comparison_operator: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, EQUAL, BEFORE, AFTER, ON, BETWEEN, NOT_BETWEEN
1127
+ # values: ["string1To255"], # required
1128
+ # },
1129
+ # ],
1130
+ # },
1131
+ # ],
1132
+ # logical_operator: "ANY", # required, accepts ANY, ALL, NONE
1133
+ # },
1134
+ # ],
1135
+ # segment_filter: "name",
1136
+ # event_trigger_limits: {
1137
+ # event_expiration: 1,
1138
+ # periods: [
1139
+ # {
1140
+ # unit: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS
1141
+ # value: 1, # required
1142
+ # max_invocations_per_profile: 1,
1143
+ # unlimited: false,
1144
+ # },
1145
+ # ],
1146
+ # },
1147
+ # tags: {
1148
+ # "TagKey" => "TagValue",
1149
+ # },
1150
+ # })
1151
+ #
1152
+ # @example Response structure
1153
+ #
1154
+ # resp.event_trigger_name #=> String
1155
+ # resp.object_type_name #=> String
1156
+ # resp.description #=> String
1157
+ # resp.event_trigger_conditions #=> Array
1158
+ # resp.event_trigger_conditions[0].event_trigger_dimensions #=> Array
1159
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes #=> Array
1160
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].source #=> String
1161
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].field_name #=> String
1162
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].comparison_operator #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH", "GREATER_THAN", "LESS_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL", "EQUAL", "BEFORE", "AFTER", "ON", "BETWEEN", "NOT_BETWEEN"
1163
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].values #=> Array
1164
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].values[0] #=> String
1165
+ # resp.event_trigger_conditions[0].logical_operator #=> String, one of "ANY", "ALL", "NONE"
1166
+ # resp.segment_filter #=> String
1167
+ # resp.event_trigger_limits.event_expiration #=> Integer
1168
+ # resp.event_trigger_limits.periods #=> Array
1169
+ # resp.event_trigger_limits.periods[0].unit #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS"
1170
+ # resp.event_trigger_limits.periods[0].value #=> Integer
1171
+ # resp.event_trigger_limits.periods[0].max_invocations_per_profile #=> Integer
1172
+ # resp.event_trigger_limits.periods[0].unlimited #=> Boolean
1173
+ # resp.created_at #=> Time
1174
+ # resp.last_updated_at #=> Time
1175
+ # resp.tags #=> Hash
1176
+ # resp.tags["TagKey"] #=> String
1177
+ #
1178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/CreateEventTrigger AWS API Documentation
1179
+ #
1180
+ # @overload create_event_trigger(params = {})
1181
+ # @param [Hash] params ({})
1182
+ def create_event_trigger(params = {}, options = {})
1183
+ req = build_request(:create_event_trigger, params)
1184
+ req.send_request(options)
1185
+ end
1186
+
871
1187
  # Creates an integration workflow. An integration workflow is an async
872
1188
  # process which ingests historic data and sets up an integration for
873
1189
  # ongoing updates. The supported Amazon AppFlow sources are Salesforce,
@@ -1170,6 +1486,569 @@ module Aws::CustomerProfiles
1170
1486
  req.send_request(options)
1171
1487
  end
1172
1488
 
1489
+ # Creates a segment definition associated to the given domain.
1490
+ #
1491
+ # @option params [required, String] :domain_name
1492
+ # The unique name of the domain.
1493
+ #
1494
+ # @option params [required, String] :segment_definition_name
1495
+ # The unique name of the segment definition.
1496
+ #
1497
+ # @option params [required, String] :display_name
1498
+ # The display name of the segment definition.
1499
+ #
1500
+ # @option params [String] :description
1501
+ # The description of the segment definition.
1502
+ #
1503
+ # @option params [required, Types::SegmentGroup] :segment_groups
1504
+ # Specifies the base segments and dimensions for a segment definition
1505
+ # along with their respective relationship.
1506
+ #
1507
+ # @option params [Hash<String,String>] :tags
1508
+ # The tags used to organize, track, or control access for this resource.
1509
+ #
1510
+ # @return [Types::CreateSegmentDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1511
+ #
1512
+ # * {Types::CreateSegmentDefinitionResponse#segment_definition_name #segment_definition_name} => String
1513
+ # * {Types::CreateSegmentDefinitionResponse#display_name #display_name} => String
1514
+ # * {Types::CreateSegmentDefinitionResponse#description #description} => String
1515
+ # * {Types::CreateSegmentDefinitionResponse#created_at #created_at} => Time
1516
+ # * {Types::CreateSegmentDefinitionResponse#segment_definition_arn #segment_definition_arn} => String
1517
+ # * {Types::CreateSegmentDefinitionResponse#tags #tags} => Hash&lt;String,String&gt;
1518
+ #
1519
+ # @example Request syntax with placeholder values
1520
+ #
1521
+ # resp = client.create_segment_definition({
1522
+ # domain_name: "name", # required
1523
+ # segment_definition_name: "name", # required
1524
+ # display_name: "string1To255", # required
1525
+ # description: "sensitiveText",
1526
+ # segment_groups: { # required
1527
+ # groups: [
1528
+ # {
1529
+ # dimensions: [
1530
+ # {
1531
+ # profile_attributes: {
1532
+ # account_number: {
1533
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1534
+ # values: ["string1To255"], # required
1535
+ # },
1536
+ # additional_information: {
1537
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1538
+ # values: ["string1To1000"], # required
1539
+ # },
1540
+ # first_name: {
1541
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1542
+ # values: ["string1To255"], # required
1543
+ # },
1544
+ # last_name: {
1545
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1546
+ # values: ["string1To255"], # required
1547
+ # },
1548
+ # middle_name: {
1549
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1550
+ # values: ["string1To255"], # required
1551
+ # },
1552
+ # gender_string: {
1553
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1554
+ # values: ["string1To255"], # required
1555
+ # },
1556
+ # party_type_string: {
1557
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1558
+ # values: ["string1To255"], # required
1559
+ # },
1560
+ # birth_date: {
1561
+ # dimension_type: "BEFORE", # required, accepts BEFORE, AFTER, BETWEEN, NOT_BETWEEN, ON
1562
+ # values: ["String"], # required
1563
+ # },
1564
+ # phone_number: {
1565
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1566
+ # values: ["string1To255"], # required
1567
+ # },
1568
+ # business_name: {
1569
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1570
+ # values: ["string1To255"], # required
1571
+ # },
1572
+ # business_phone_number: {
1573
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1574
+ # values: ["string1To255"], # required
1575
+ # },
1576
+ # home_phone_number: {
1577
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1578
+ # values: ["string1To255"], # required
1579
+ # },
1580
+ # mobile_phone_number: {
1581
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1582
+ # values: ["string1To255"], # required
1583
+ # },
1584
+ # email_address: {
1585
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1586
+ # values: ["string1To255"], # required
1587
+ # },
1588
+ # personal_email_address: {
1589
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1590
+ # values: ["string1To255"], # required
1591
+ # },
1592
+ # business_email_address: {
1593
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1594
+ # values: ["string1To255"], # required
1595
+ # },
1596
+ # address: {
1597
+ # city: {
1598
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1599
+ # values: ["string1To255"], # required
1600
+ # },
1601
+ # country: {
1602
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1603
+ # values: ["string1To255"], # required
1604
+ # },
1605
+ # county: {
1606
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1607
+ # values: ["string1To255"], # required
1608
+ # },
1609
+ # postal_code: {
1610
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1611
+ # values: ["string1To255"], # required
1612
+ # },
1613
+ # province: {
1614
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1615
+ # values: ["string1To255"], # required
1616
+ # },
1617
+ # state: {
1618
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1619
+ # values: ["string1To255"], # required
1620
+ # },
1621
+ # },
1622
+ # shipping_address: {
1623
+ # city: {
1624
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1625
+ # values: ["string1To255"], # required
1626
+ # },
1627
+ # country: {
1628
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1629
+ # values: ["string1To255"], # required
1630
+ # },
1631
+ # county: {
1632
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1633
+ # values: ["string1To255"], # required
1634
+ # },
1635
+ # postal_code: {
1636
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1637
+ # values: ["string1To255"], # required
1638
+ # },
1639
+ # province: {
1640
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1641
+ # values: ["string1To255"], # required
1642
+ # },
1643
+ # state: {
1644
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1645
+ # values: ["string1To255"], # required
1646
+ # },
1647
+ # },
1648
+ # mailing_address: {
1649
+ # city: {
1650
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1651
+ # values: ["string1To255"], # required
1652
+ # },
1653
+ # country: {
1654
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1655
+ # values: ["string1To255"], # required
1656
+ # },
1657
+ # county: {
1658
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1659
+ # values: ["string1To255"], # required
1660
+ # },
1661
+ # postal_code: {
1662
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1663
+ # values: ["string1To255"], # required
1664
+ # },
1665
+ # province: {
1666
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1667
+ # values: ["string1To255"], # required
1668
+ # },
1669
+ # state: {
1670
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1671
+ # values: ["string1To255"], # required
1672
+ # },
1673
+ # },
1674
+ # billing_address: {
1675
+ # city: {
1676
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1677
+ # values: ["string1To255"], # required
1678
+ # },
1679
+ # country: {
1680
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1681
+ # values: ["string1To255"], # required
1682
+ # },
1683
+ # county: {
1684
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1685
+ # values: ["string1To255"], # required
1686
+ # },
1687
+ # postal_code: {
1688
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1689
+ # values: ["string1To255"], # required
1690
+ # },
1691
+ # province: {
1692
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1693
+ # values: ["string1To255"], # required
1694
+ # },
1695
+ # state: {
1696
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1697
+ # values: ["string1To255"], # required
1698
+ # },
1699
+ # },
1700
+ # attributes: {
1701
+ # "typeName" => {
1702
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH, BEFORE, AFTER, BETWEEN, NOT_BETWEEN, ON, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, EQUAL
1703
+ # values: ["string1To255"], # required
1704
+ # },
1705
+ # },
1706
+ # },
1707
+ # calculated_attributes: {
1708
+ # "typeName" => {
1709
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH, BEFORE, AFTER, BETWEEN, NOT_BETWEEN, ON, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, EQUAL
1710
+ # values: ["string1To255"], # required
1711
+ # condition_overrides: {
1712
+ # range: {
1713
+ # start: 1, # required
1714
+ # end: 1,
1715
+ # unit: "DAYS", # required, accepts DAYS
1716
+ # },
1717
+ # },
1718
+ # },
1719
+ # },
1720
+ # },
1721
+ # ],
1722
+ # source_segments: [
1723
+ # {
1724
+ # segment_definition_name: "name",
1725
+ # },
1726
+ # ],
1727
+ # source_type: "ALL", # accepts ALL, ANY, NONE
1728
+ # type: "ALL", # accepts ALL, ANY, NONE
1729
+ # },
1730
+ # ],
1731
+ # include: "ALL", # accepts ALL, ANY, NONE
1732
+ # },
1733
+ # tags: {
1734
+ # "TagKey" => "TagValue",
1735
+ # },
1736
+ # })
1737
+ #
1738
+ # @example Response structure
1739
+ #
1740
+ # resp.segment_definition_name #=> String
1741
+ # resp.display_name #=> String
1742
+ # resp.description #=> String
1743
+ # resp.created_at #=> Time
1744
+ # resp.segment_definition_arn #=> String
1745
+ # resp.tags #=> Hash
1746
+ # resp.tags["TagKey"] #=> String
1747
+ #
1748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/CreateSegmentDefinition AWS API Documentation
1749
+ #
1750
+ # @overload create_segment_definition(params = {})
1751
+ # @param [Hash] params ({})
1752
+ def create_segment_definition(params = {}, options = {})
1753
+ req = build_request(:create_segment_definition, params)
1754
+ req.send_request(options)
1755
+ end
1756
+
1757
+ # Creates a segment estimate query.
1758
+ #
1759
+ # @option params [required, String] :domain_name
1760
+ # The unique name of the domain.
1761
+ #
1762
+ # @option params [required, Types::SegmentGroupStructure] :segment_query
1763
+ # The segment query for calculating a segment estimate.
1764
+ #
1765
+ # @return [Types::CreateSegmentEstimateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1766
+ #
1767
+ # * {Types::CreateSegmentEstimateResponse#domain_name #domain_name} => String
1768
+ # * {Types::CreateSegmentEstimateResponse#estimate_id #estimate_id} => String
1769
+ # * {Types::CreateSegmentEstimateResponse#status_code #status_code} => Integer
1770
+ #
1771
+ # @example Request syntax with placeholder values
1772
+ #
1773
+ # resp = client.create_segment_estimate({
1774
+ # domain_name: "name", # required
1775
+ # segment_query: { # required
1776
+ # groups: [
1777
+ # {
1778
+ # dimensions: [
1779
+ # {
1780
+ # profile_attributes: {
1781
+ # account_number: {
1782
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1783
+ # values: ["string1To255"], # required
1784
+ # },
1785
+ # additional_information: {
1786
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1787
+ # values: ["string1To1000"], # required
1788
+ # },
1789
+ # first_name: {
1790
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1791
+ # values: ["string1To255"], # required
1792
+ # },
1793
+ # last_name: {
1794
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1795
+ # values: ["string1To255"], # required
1796
+ # },
1797
+ # middle_name: {
1798
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1799
+ # values: ["string1To255"], # required
1800
+ # },
1801
+ # gender_string: {
1802
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1803
+ # values: ["string1To255"], # required
1804
+ # },
1805
+ # party_type_string: {
1806
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1807
+ # values: ["string1To255"], # required
1808
+ # },
1809
+ # birth_date: {
1810
+ # dimension_type: "BEFORE", # required, accepts BEFORE, AFTER, BETWEEN, NOT_BETWEEN, ON
1811
+ # values: ["String"], # required
1812
+ # },
1813
+ # phone_number: {
1814
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1815
+ # values: ["string1To255"], # required
1816
+ # },
1817
+ # business_name: {
1818
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1819
+ # values: ["string1To255"], # required
1820
+ # },
1821
+ # business_phone_number: {
1822
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1823
+ # values: ["string1To255"], # required
1824
+ # },
1825
+ # home_phone_number: {
1826
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1827
+ # values: ["string1To255"], # required
1828
+ # },
1829
+ # mobile_phone_number: {
1830
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1831
+ # values: ["string1To255"], # required
1832
+ # },
1833
+ # email_address: {
1834
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1835
+ # values: ["string1To255"], # required
1836
+ # },
1837
+ # personal_email_address: {
1838
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1839
+ # values: ["string1To255"], # required
1840
+ # },
1841
+ # business_email_address: {
1842
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1843
+ # values: ["string1To255"], # required
1844
+ # },
1845
+ # address: {
1846
+ # city: {
1847
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1848
+ # values: ["string1To255"], # required
1849
+ # },
1850
+ # country: {
1851
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1852
+ # values: ["string1To255"], # required
1853
+ # },
1854
+ # county: {
1855
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1856
+ # values: ["string1To255"], # required
1857
+ # },
1858
+ # postal_code: {
1859
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1860
+ # values: ["string1To255"], # required
1861
+ # },
1862
+ # province: {
1863
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1864
+ # values: ["string1To255"], # required
1865
+ # },
1866
+ # state: {
1867
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1868
+ # values: ["string1To255"], # required
1869
+ # },
1870
+ # },
1871
+ # shipping_address: {
1872
+ # city: {
1873
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1874
+ # values: ["string1To255"], # required
1875
+ # },
1876
+ # country: {
1877
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1878
+ # values: ["string1To255"], # required
1879
+ # },
1880
+ # county: {
1881
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1882
+ # values: ["string1To255"], # required
1883
+ # },
1884
+ # postal_code: {
1885
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1886
+ # values: ["string1To255"], # required
1887
+ # },
1888
+ # province: {
1889
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1890
+ # values: ["string1To255"], # required
1891
+ # },
1892
+ # state: {
1893
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1894
+ # values: ["string1To255"], # required
1895
+ # },
1896
+ # },
1897
+ # mailing_address: {
1898
+ # city: {
1899
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1900
+ # values: ["string1To255"], # required
1901
+ # },
1902
+ # country: {
1903
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1904
+ # values: ["string1To255"], # required
1905
+ # },
1906
+ # county: {
1907
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1908
+ # values: ["string1To255"], # required
1909
+ # },
1910
+ # postal_code: {
1911
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1912
+ # values: ["string1To255"], # required
1913
+ # },
1914
+ # province: {
1915
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1916
+ # values: ["string1To255"], # required
1917
+ # },
1918
+ # state: {
1919
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1920
+ # values: ["string1To255"], # required
1921
+ # },
1922
+ # },
1923
+ # billing_address: {
1924
+ # city: {
1925
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1926
+ # values: ["string1To255"], # required
1927
+ # },
1928
+ # country: {
1929
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1930
+ # values: ["string1To255"], # required
1931
+ # },
1932
+ # county: {
1933
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1934
+ # values: ["string1To255"], # required
1935
+ # },
1936
+ # postal_code: {
1937
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1938
+ # values: ["string1To255"], # required
1939
+ # },
1940
+ # province: {
1941
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1942
+ # values: ["string1To255"], # required
1943
+ # },
1944
+ # state: {
1945
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH
1946
+ # values: ["string1To255"], # required
1947
+ # },
1948
+ # },
1949
+ # attributes: {
1950
+ # "typeName" => {
1951
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH, BEFORE, AFTER, BETWEEN, NOT_BETWEEN, ON, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, EQUAL
1952
+ # values: ["string1To255"], # required
1953
+ # },
1954
+ # },
1955
+ # },
1956
+ # calculated_attributes: {
1957
+ # "typeName" => {
1958
+ # dimension_type: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH, BEFORE, AFTER, BETWEEN, NOT_BETWEEN, ON, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, EQUAL
1959
+ # values: ["string1To255"], # required
1960
+ # condition_overrides: {
1961
+ # range: {
1962
+ # start: 1, # required
1963
+ # end: 1,
1964
+ # unit: "DAYS", # required, accepts DAYS
1965
+ # },
1966
+ # },
1967
+ # },
1968
+ # },
1969
+ # },
1970
+ # ],
1971
+ # source_segments: [
1972
+ # {
1973
+ # segment_definition_name: "name",
1974
+ # },
1975
+ # ],
1976
+ # source_type: "ALL", # accepts ALL, ANY, NONE
1977
+ # type: "ALL", # accepts ALL, ANY, NONE
1978
+ # },
1979
+ # ],
1980
+ # include: "ALL", # accepts ALL, ANY, NONE
1981
+ # },
1982
+ # })
1983
+ #
1984
+ # @example Response structure
1985
+ #
1986
+ # resp.domain_name #=> String
1987
+ # resp.estimate_id #=> String
1988
+ # resp.status_code #=> Integer
1989
+ #
1990
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/CreateSegmentEstimate AWS API Documentation
1991
+ #
1992
+ # @overload create_segment_estimate(params = {})
1993
+ # @param [Hash] params ({})
1994
+ def create_segment_estimate(params = {}, options = {})
1995
+ req = build_request(:create_segment_estimate, params)
1996
+ req.send_request(options)
1997
+ end
1998
+
1999
+ # Triggers a job to export a segment to a specified destination.
2000
+ #
2001
+ # @option params [required, String] :domain_name
2002
+ # The unique name of the domain.
2003
+ #
2004
+ # @option params [required, String] :segment_definition_name
2005
+ # The name of the segment definition used in this snapshot request.
2006
+ #
2007
+ # @option params [required, String] :data_format
2008
+ # The format in which the segment will be exported.
2009
+ #
2010
+ # @option params [String] :encryption_key
2011
+ # The Amazon Resource Name (ARN) of the KMS key used to encrypt the
2012
+ # exported segment.
2013
+ #
2014
+ # @option params [String] :role_arn
2015
+ # The Amazon Resource Name (ARN) of the IAM role that allows Customer
2016
+ # Profiles service principal to assume the role for conducting KMS and
2017
+ # S3 operations.
2018
+ #
2019
+ # @option params [String] :destination_uri
2020
+ # The destination to which the segment will be exported. This field must
2021
+ # be provided if the request is not submitted from the Amazon Connect
2022
+ # Admin Website.
2023
+ #
2024
+ # @return [Types::CreateSegmentSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2025
+ #
2026
+ # * {Types::CreateSegmentSnapshotResponse#snapshot_id #snapshot_id} => String
2027
+ #
2028
+ # @example Request syntax with placeholder values
2029
+ #
2030
+ # resp = client.create_segment_snapshot({
2031
+ # domain_name: "name", # required
2032
+ # segment_definition_name: "name", # required
2033
+ # data_format: "CSV", # required, accepts CSV, JSONL, ORC
2034
+ # encryption_key: "encryptionKey",
2035
+ # role_arn: "RoleArn",
2036
+ # destination_uri: "string1To255",
2037
+ # })
2038
+ #
2039
+ # @example Response structure
2040
+ #
2041
+ # resp.snapshot_id #=> String
2042
+ #
2043
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/CreateSegmentSnapshot AWS API Documentation
2044
+ #
2045
+ # @overload create_segment_snapshot(params = {})
2046
+ # @param [Hash] params ({})
2047
+ def create_segment_snapshot(params = {}, options = {})
2048
+ req = build_request(:create_segment_snapshot, params)
2049
+ req.send_request(options)
2050
+ end
2051
+
1173
2052
  # Deletes an existing calculated attribute definition. Note that
1174
2053
  # deleting a default calculated attribute is possible, however once
1175
2054
  # deleted, you will be unable to undo that action and will need to
@@ -1255,6 +2134,43 @@ module Aws::CustomerProfiles
1255
2134
  req.send_request(options)
1256
2135
  end
1257
2136
 
2137
+ # Disable and deletes the Event Trigger.
2138
+ #
2139
+ # <note markdown="1"> You cannot delete an Event Trigger with an active Integration
2140
+ # associated.
2141
+ #
2142
+ # </note>
2143
+ #
2144
+ # @option params [required, String] :domain_name
2145
+ # The unique name of the domain.
2146
+ #
2147
+ # @option params [required, String] :event_trigger_name
2148
+ # The unique name of the event trigger.
2149
+ #
2150
+ # @return [Types::DeleteEventTriggerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2151
+ #
2152
+ # * {Types::DeleteEventTriggerResponse#message #message} => String
2153
+ #
2154
+ # @example Request syntax with placeholder values
2155
+ #
2156
+ # resp = client.delete_event_trigger({
2157
+ # domain_name: "name", # required
2158
+ # event_trigger_name: "name", # required
2159
+ # })
2160
+ #
2161
+ # @example Response structure
2162
+ #
2163
+ # resp.message #=> String
2164
+ #
2165
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/DeleteEventTrigger AWS API Documentation
2166
+ #
2167
+ # @overload delete_event_trigger(params = {})
2168
+ # @param [Hash] params ({})
2169
+ def delete_event_trigger(params = {}, options = {})
2170
+ req = build_request(:delete_event_trigger, params)
2171
+ req.send_request(options)
2172
+ end
2173
+
1258
2174
  # Removes an integration from a specific domain.
1259
2175
  #
1260
2176
  # @option params [required, String] :domain_name
@@ -1437,6 +2353,38 @@ module Aws::CustomerProfiles
1437
2353
  req.send_request(options)
1438
2354
  end
1439
2355
 
2356
+ # Deletes a segment definition from the domain.
2357
+ #
2358
+ # @option params [required, String] :domain_name
2359
+ # The unique name of the domain.
2360
+ #
2361
+ # @option params [required, String] :segment_definition_name
2362
+ # The unique name of the segment definition.
2363
+ #
2364
+ # @return [Types::DeleteSegmentDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2365
+ #
2366
+ # * {Types::DeleteSegmentDefinitionResponse#message #message} => String
2367
+ #
2368
+ # @example Request syntax with placeholder values
2369
+ #
2370
+ # resp = client.delete_segment_definition({
2371
+ # domain_name: "name", # required
2372
+ # segment_definition_name: "name", # required
2373
+ # })
2374
+ #
2375
+ # @example Response structure
2376
+ #
2377
+ # resp.message #=> String
2378
+ #
2379
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/DeleteSegmentDefinition AWS API Documentation
2380
+ #
2381
+ # @overload delete_segment_definition(params = {})
2382
+ # @param [Hash] params ({})
2383
+ def delete_segment_definition(params = {}, options = {})
2384
+ req = build_request(:delete_segment_definition, params)
2385
+ req.send_request(options)
2386
+ end
2387
+
1440
2388
  # Deletes the specified workflow and all its corresponding resources.
1441
2389
  # This is an async process.
1442
2390
  #
@@ -1495,7 +2443,7 @@ module Aws::CustomerProfiles
1495
2443
  # resp.detected_profile_object_types[0].keys #=> Hash
1496
2444
  # resp.detected_profile_object_types[0].keys["name"] #=> Array
1497
2445
  # resp.detected_profile_object_types[0].keys["name"][0].standard_identifiers #=> Array
1498
- # resp.detected_profile_object_types[0].keys["name"][0].standard_identifiers[0] #=> String, one of "PROFILE", "ASSET", "CASE", "UNIQUE", "SECONDARY", "LOOKUP_ONLY", "NEW_ONLY", "ORDER"
2446
+ # resp.detected_profile_object_types[0].keys["name"][0].standard_identifiers[0] #=> String, one of "PROFILE", "ASSET", "CASE", "ORDER", "COMMUNICATION_RECORD", "UNIQUE", "SECONDARY", "LOOKUP_ONLY", "NEW_ONLY"
1499
2447
  # resp.detected_profile_object_types[0].keys["name"][0].field_names #=> Array
1500
2448
  # resp.detected_profile_object_types[0].keys["name"][0].field_names[0] #=> String
1501
2449
  #
@@ -1595,6 +2543,7 @@ module Aws::CustomerProfiles
1595
2543
  # * {Types::GetCalculatedAttributeDefinitionResponse#created_at #created_at} => Time
1596
2544
  # * {Types::GetCalculatedAttributeDefinitionResponse#last_updated_at #last_updated_at} => Time
1597
2545
  # * {Types::GetCalculatedAttributeDefinitionResponse#statistic #statistic} => String
2546
+ # * {Types::GetCalculatedAttributeDefinitionResponse#filter #data.filter} => Types::Filter (This method conflicts with a method on Response, call it through the data member)
1598
2547
  # * {Types::GetCalculatedAttributeDefinitionResponse#conditions #conditions} => Types::Conditions
1599
2548
  # * {Types::GetCalculatedAttributeDefinitionResponse#attribute_details #attribute_details} => Types::AttributeDetails
1600
2549
  # * {Types::GetCalculatedAttributeDefinitionResponse#tags #tags} => Hash&lt;String,String&gt;
@@ -1614,6 +2563,14 @@ module Aws::CustomerProfiles
1614
2563
  # resp.created_at #=> Time
1615
2564
  # resp.last_updated_at #=> Time
1616
2565
  # resp.statistic #=> String, one of "FIRST_OCCURRENCE", "LAST_OCCURRENCE", "COUNT", "SUM", "MINIMUM", "MAXIMUM", "AVERAGE", "MAX_OCCURRENCE"
2566
+ # resp.data.filter.include #=> String, one of "ALL", "ANY", "NONE"
2567
+ # resp.data.filter.groups #=> Array
2568
+ # resp.data.filter.groups[0].type #=> String, one of "ALL", "ANY", "NONE"
2569
+ # resp.data.filter.groups[0].dimensions #=> Array
2570
+ # resp.data.filter.groups[0].dimensions[0].attributes #=> Hash
2571
+ # resp.data.filter.groups[0].dimensions[0].attributes["attributeName"].dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH", "BEFORE", "AFTER", "BETWEEN", "NOT_BETWEEN", "ON", "GREATER_THAN", "LESS_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL", "EQUAL"
2572
+ # resp.data.filter.groups[0].dimensions[0].attributes["attributeName"].values #=> Array
2573
+ # resp.data.filter.groups[0].dimensions[0].attributes["attributeName"].values[0] #=> String
1617
2574
  # resp.conditions.range.value #=> Integer
1618
2575
  # resp.conditions.range.unit #=> String, one of "DAYS"
1619
2576
  # resp.conditions.object_count #=> Integer
@@ -1803,6 +2760,68 @@ module Aws::CustomerProfiles
1803
2760
  req.send_request(options)
1804
2761
  end
1805
2762
 
2763
+ # Get a specific Event Trigger from the domain.
2764
+ #
2765
+ # @option params [required, String] :domain_name
2766
+ # The unique name of the domain.
2767
+ #
2768
+ # @option params [required, String] :event_trigger_name
2769
+ # The unique name of the event trigger.
2770
+ #
2771
+ # @return [Types::GetEventTriggerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2772
+ #
2773
+ # * {Types::GetEventTriggerResponse#event_trigger_name #event_trigger_name} => String
2774
+ # * {Types::GetEventTriggerResponse#object_type_name #object_type_name} => String
2775
+ # * {Types::GetEventTriggerResponse#description #description} => String
2776
+ # * {Types::GetEventTriggerResponse#event_trigger_conditions #event_trigger_conditions} => Array&lt;Types::EventTriggerCondition&gt;
2777
+ # * {Types::GetEventTriggerResponse#segment_filter #segment_filter} => String
2778
+ # * {Types::GetEventTriggerResponse#event_trigger_limits #event_trigger_limits} => Types::EventTriggerLimits
2779
+ # * {Types::GetEventTriggerResponse#created_at #created_at} => Time
2780
+ # * {Types::GetEventTriggerResponse#last_updated_at #last_updated_at} => Time
2781
+ # * {Types::GetEventTriggerResponse#tags #tags} => Hash&lt;String,String&gt;
2782
+ #
2783
+ # @example Request syntax with placeholder values
2784
+ #
2785
+ # resp = client.get_event_trigger({
2786
+ # domain_name: "name", # required
2787
+ # event_trigger_name: "name", # required
2788
+ # })
2789
+ #
2790
+ # @example Response structure
2791
+ #
2792
+ # resp.event_trigger_name #=> String
2793
+ # resp.object_type_name #=> String
2794
+ # resp.description #=> String
2795
+ # resp.event_trigger_conditions #=> Array
2796
+ # resp.event_trigger_conditions[0].event_trigger_dimensions #=> Array
2797
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes #=> Array
2798
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].source #=> String
2799
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].field_name #=> String
2800
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].comparison_operator #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH", "GREATER_THAN", "LESS_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL", "EQUAL", "BEFORE", "AFTER", "ON", "BETWEEN", "NOT_BETWEEN"
2801
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].values #=> Array
2802
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].values[0] #=> String
2803
+ # resp.event_trigger_conditions[0].logical_operator #=> String, one of "ANY", "ALL", "NONE"
2804
+ # resp.segment_filter #=> String
2805
+ # resp.event_trigger_limits.event_expiration #=> Integer
2806
+ # resp.event_trigger_limits.periods #=> Array
2807
+ # resp.event_trigger_limits.periods[0].unit #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS"
2808
+ # resp.event_trigger_limits.periods[0].value #=> Integer
2809
+ # resp.event_trigger_limits.periods[0].max_invocations_per_profile #=> Integer
2810
+ # resp.event_trigger_limits.periods[0].unlimited #=> Boolean
2811
+ # resp.created_at #=> Time
2812
+ # resp.last_updated_at #=> Time
2813
+ # resp.tags #=> Hash
2814
+ # resp.tags["TagKey"] #=> String
2815
+ #
2816
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetEventTrigger AWS API Documentation
2817
+ #
2818
+ # @overload get_event_trigger(params = {})
2819
+ # @param [Hash] params ({})
2820
+ def get_event_trigger(params = {}, options = {})
2821
+ req = build_request(:get_event_trigger, params)
2822
+ req.send_request(options)
2823
+ end
2824
+
1806
2825
  # Returns information about an Identity Resolution Job in a specific
1807
2826
  # domain.
1808
2827
  #
@@ -1893,6 +2912,7 @@ module Aws::CustomerProfiles
1893
2912
  # * {Types::GetIntegrationResponse#workflow_id #workflow_id} => String
1894
2913
  # * {Types::GetIntegrationResponse#is_unstructured #is_unstructured} => Boolean
1895
2914
  # * {Types::GetIntegrationResponse#role_arn #role_arn} => String
2915
+ # * {Types::GetIntegrationResponse#event_trigger_names #event_trigger_names} => Array&lt;String&gt;
1896
2916
  #
1897
2917
  # @example Request syntax with placeholder values
1898
2918
  #
@@ -1915,6 +2935,8 @@ module Aws::CustomerProfiles
1915
2935
  # resp.workflow_id #=> String
1916
2936
  # resp.is_unstructured #=> Boolean
1917
2937
  # resp.role_arn #=> String
2938
+ # resp.event_trigger_names #=> Array
2939
+ # resp.event_trigger_names[0] #=> String
1918
2940
  #
1919
2941
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetIntegration AWS API Documentation
1920
2942
  #
@@ -2047,97 +3069,480 @@ module Aws::CustomerProfiles
2047
3069
  #
2048
3070
  # @example Request syntax with placeholder values
2049
3071
  #
2050
- # resp = client.get_profile_object_type({
3072
+ # resp = client.get_profile_object_type({
3073
+ # domain_name: "name", # required
3074
+ # object_type_name: "typeName", # required
3075
+ # })
3076
+ #
3077
+ # @example Response structure
3078
+ #
3079
+ # resp.object_type_name #=> String
3080
+ # resp.description #=> String
3081
+ # resp.template_id #=> String
3082
+ # resp.expiration_days #=> Integer
3083
+ # resp.encryption_key #=> String
3084
+ # resp.allow_profile_creation #=> Boolean
3085
+ # resp.source_last_updated_timestamp_format #=> String
3086
+ # resp.max_available_profile_object_count #=> Integer
3087
+ # resp.max_profile_object_count #=> Integer
3088
+ # resp.fields #=> Hash
3089
+ # resp.fields["name"].source #=> String
3090
+ # resp.fields["name"].target #=> String
3091
+ # resp.fields["name"].content_type #=> String, one of "STRING", "NUMBER", "PHONE_NUMBER", "EMAIL_ADDRESS", "NAME"
3092
+ # resp.keys #=> Hash
3093
+ # resp.keys["name"] #=> Array
3094
+ # resp.keys["name"][0].standard_identifiers #=> Array
3095
+ # resp.keys["name"][0].standard_identifiers[0] #=> String, one of "PROFILE", "ASSET", "CASE", "ORDER", "COMMUNICATION_RECORD", "UNIQUE", "SECONDARY", "LOOKUP_ONLY", "NEW_ONLY"
3096
+ # resp.keys["name"][0].field_names #=> Array
3097
+ # resp.keys["name"][0].field_names[0] #=> String
3098
+ # resp.created_at #=> Time
3099
+ # resp.last_updated_at #=> Time
3100
+ # resp.tags #=> Hash
3101
+ # resp.tags["TagKey"] #=> String
3102
+ #
3103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetProfileObjectType AWS API Documentation
3104
+ #
3105
+ # @overload get_profile_object_type(params = {})
3106
+ # @param [Hash] params ({})
3107
+ def get_profile_object_type(params = {}, options = {})
3108
+ req = build_request(:get_profile_object_type, params)
3109
+ req.send_request(options)
3110
+ end
3111
+
3112
+ # Returns the template information for a specific object type.
3113
+ #
3114
+ # A template is a predefined ProfileObjectType, such as
3115
+ # “Salesforce-Account” or “Salesforce-Contact.” When a user sends a
3116
+ # ProfileObject, using the PutProfileObject API, with an ObjectTypeName
3117
+ # that matches one of the TemplateIds, it uses the mappings from the
3118
+ # template.
3119
+ #
3120
+ # @option params [required, String] :template_id
3121
+ # A unique identifier for the object template.
3122
+ #
3123
+ # @return [Types::GetProfileObjectTypeTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3124
+ #
3125
+ # * {Types::GetProfileObjectTypeTemplateResponse#template_id #template_id} => String
3126
+ # * {Types::GetProfileObjectTypeTemplateResponse#source_name #source_name} => String
3127
+ # * {Types::GetProfileObjectTypeTemplateResponse#source_object #source_object} => String
3128
+ # * {Types::GetProfileObjectTypeTemplateResponse#allow_profile_creation #allow_profile_creation} => Boolean
3129
+ # * {Types::GetProfileObjectTypeTemplateResponse#source_last_updated_timestamp_format #source_last_updated_timestamp_format} => String
3130
+ # * {Types::GetProfileObjectTypeTemplateResponse#fields #fields} => Hash&lt;String,Types::ObjectTypeField&gt;
3131
+ # * {Types::GetProfileObjectTypeTemplateResponse#keys #keys} => Hash&lt;String,Array&lt;Types::ObjectTypeKey&gt;&gt;
3132
+ #
3133
+ # @example Request syntax with placeholder values
3134
+ #
3135
+ # resp = client.get_profile_object_type_template({
3136
+ # template_id: "name", # required
3137
+ # })
3138
+ #
3139
+ # @example Response structure
3140
+ #
3141
+ # resp.template_id #=> String
3142
+ # resp.source_name #=> String
3143
+ # resp.source_object #=> String
3144
+ # resp.allow_profile_creation #=> Boolean
3145
+ # resp.source_last_updated_timestamp_format #=> String
3146
+ # resp.fields #=> Hash
3147
+ # resp.fields["name"].source #=> String
3148
+ # resp.fields["name"].target #=> String
3149
+ # resp.fields["name"].content_type #=> String, one of "STRING", "NUMBER", "PHONE_NUMBER", "EMAIL_ADDRESS", "NAME"
3150
+ # resp.keys #=> Hash
3151
+ # resp.keys["name"] #=> Array
3152
+ # resp.keys["name"][0].standard_identifiers #=> Array
3153
+ # resp.keys["name"][0].standard_identifiers[0] #=> String, one of "PROFILE", "ASSET", "CASE", "ORDER", "COMMUNICATION_RECORD", "UNIQUE", "SECONDARY", "LOOKUP_ONLY", "NEW_ONLY"
3154
+ # resp.keys["name"][0].field_names #=> Array
3155
+ # resp.keys["name"][0].field_names[0] #=> String
3156
+ #
3157
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetProfileObjectTypeTemplate AWS API Documentation
3158
+ #
3159
+ # @overload get_profile_object_type_template(params = {})
3160
+ # @param [Hash] params ({})
3161
+ def get_profile_object_type_template(params = {}, options = {})
3162
+ req = build_request(:get_profile_object_type_template, params)
3163
+ req.send_request(options)
3164
+ end
3165
+
3166
+ # Gets a segment definition from the domain.
3167
+ #
3168
+ # @option params [required, String] :domain_name
3169
+ # The unique name of the domain.
3170
+ #
3171
+ # @option params [required, String] :segment_definition_name
3172
+ # The unique name of the segment definition.
3173
+ #
3174
+ # @return [Types::GetSegmentDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3175
+ #
3176
+ # * {Types::GetSegmentDefinitionResponse#segment_definition_name #segment_definition_name} => String
3177
+ # * {Types::GetSegmentDefinitionResponse#display_name #display_name} => String
3178
+ # * {Types::GetSegmentDefinitionResponse#description #description} => String
3179
+ # * {Types::GetSegmentDefinitionResponse#segment_groups #segment_groups} => Types::SegmentGroup
3180
+ # * {Types::GetSegmentDefinitionResponse#segment_definition_arn #segment_definition_arn} => String
3181
+ # * {Types::GetSegmentDefinitionResponse#created_at #created_at} => Time
3182
+ # * {Types::GetSegmentDefinitionResponse#tags #tags} => Hash&lt;String,String&gt;
3183
+ #
3184
+ # @example Request syntax with placeholder values
3185
+ #
3186
+ # resp = client.get_segment_definition({
3187
+ # domain_name: "name", # required
3188
+ # segment_definition_name: "name", # required
3189
+ # })
3190
+ #
3191
+ # @example Response structure
3192
+ #
3193
+ # resp.segment_definition_name #=> String
3194
+ # resp.display_name #=> String
3195
+ # resp.description #=> String
3196
+ # resp.segment_groups.groups #=> Array
3197
+ # resp.segment_groups.groups[0].dimensions #=> Array
3198
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.account_number.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3199
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.account_number.values #=> Array
3200
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.account_number.values[0] #=> String
3201
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.additional_information.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3202
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.additional_information.values #=> Array
3203
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.additional_information.values[0] #=> String
3204
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.first_name.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3205
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.first_name.values #=> Array
3206
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.first_name.values[0] #=> String
3207
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.last_name.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3208
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.last_name.values #=> Array
3209
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.last_name.values[0] #=> String
3210
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.middle_name.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3211
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.middle_name.values #=> Array
3212
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.middle_name.values[0] #=> String
3213
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.gender_string.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3214
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.gender_string.values #=> Array
3215
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.gender_string.values[0] #=> String
3216
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.party_type_string.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3217
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.party_type_string.values #=> Array
3218
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.party_type_string.values[0] #=> String
3219
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.birth_date.dimension_type #=> String, one of "BEFORE", "AFTER", "BETWEEN", "NOT_BETWEEN", "ON"
3220
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.birth_date.values #=> Array
3221
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.birth_date.values[0] #=> String
3222
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.phone_number.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3223
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.phone_number.values #=> Array
3224
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.phone_number.values[0] #=> String
3225
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_name.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3226
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_name.values #=> Array
3227
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_name.values[0] #=> String
3228
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_phone_number.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3229
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_phone_number.values #=> Array
3230
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_phone_number.values[0] #=> String
3231
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.home_phone_number.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3232
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.home_phone_number.values #=> Array
3233
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.home_phone_number.values[0] #=> String
3234
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mobile_phone_number.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3235
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mobile_phone_number.values #=> Array
3236
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mobile_phone_number.values[0] #=> String
3237
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.email_address.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3238
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.email_address.values #=> Array
3239
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.email_address.values[0] #=> String
3240
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.personal_email_address.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3241
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.personal_email_address.values #=> Array
3242
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.personal_email_address.values[0] #=> String
3243
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_email_address.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3244
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_email_address.values #=> Array
3245
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.business_email_address.values[0] #=> String
3246
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.city.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3247
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.city.values #=> Array
3248
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.city.values[0] #=> String
3249
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.country.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3250
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.country.values #=> Array
3251
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.country.values[0] #=> String
3252
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.county.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3253
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.county.values #=> Array
3254
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.county.values[0] #=> String
3255
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.postal_code.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3256
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.postal_code.values #=> Array
3257
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.postal_code.values[0] #=> String
3258
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.province.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3259
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.province.values #=> Array
3260
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.province.values[0] #=> String
3261
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.state.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3262
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.state.values #=> Array
3263
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.address.state.values[0] #=> String
3264
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.city.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3265
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.city.values #=> Array
3266
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.city.values[0] #=> String
3267
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.country.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3268
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.country.values #=> Array
3269
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.country.values[0] #=> String
3270
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.county.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3271
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.county.values #=> Array
3272
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.county.values[0] #=> String
3273
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.postal_code.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3274
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.postal_code.values #=> Array
3275
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.postal_code.values[0] #=> String
3276
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.province.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3277
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.province.values #=> Array
3278
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.province.values[0] #=> String
3279
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.state.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3280
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.state.values #=> Array
3281
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.shipping_address.state.values[0] #=> String
3282
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.city.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3283
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.city.values #=> Array
3284
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.city.values[0] #=> String
3285
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.country.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3286
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.country.values #=> Array
3287
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.country.values[0] #=> String
3288
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.county.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3289
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.county.values #=> Array
3290
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.county.values[0] #=> String
3291
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.postal_code.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3292
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.postal_code.values #=> Array
3293
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.postal_code.values[0] #=> String
3294
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.province.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3295
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.province.values #=> Array
3296
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.province.values[0] #=> String
3297
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.state.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3298
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.state.values #=> Array
3299
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.mailing_address.state.values[0] #=> String
3300
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.city.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3301
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.city.values #=> Array
3302
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.city.values[0] #=> String
3303
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.country.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3304
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.country.values #=> Array
3305
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.country.values[0] #=> String
3306
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.county.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3307
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.county.values #=> Array
3308
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.county.values[0] #=> String
3309
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.postal_code.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3310
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.postal_code.values #=> Array
3311
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.postal_code.values[0] #=> String
3312
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.province.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3313
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.province.values #=> Array
3314
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.province.values[0] #=> String
3315
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.state.dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH"
3316
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.state.values #=> Array
3317
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.billing_address.state.values[0] #=> String
3318
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.attributes #=> Hash
3319
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.attributes["typeName"].dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH", "BEFORE", "AFTER", "BETWEEN", "NOT_BETWEEN", "ON", "GREATER_THAN", "LESS_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL", "EQUAL"
3320
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.attributes["typeName"].values #=> Array
3321
+ # resp.segment_groups.groups[0].dimensions[0].profile_attributes.attributes["typeName"].values[0] #=> String
3322
+ # resp.segment_groups.groups[0].dimensions[0].calculated_attributes #=> Hash
3323
+ # resp.segment_groups.groups[0].dimensions[0].calculated_attributes["typeName"].dimension_type #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH", "BEFORE", "AFTER", "BETWEEN", "NOT_BETWEEN", "ON", "GREATER_THAN", "LESS_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL", "EQUAL"
3324
+ # resp.segment_groups.groups[0].dimensions[0].calculated_attributes["typeName"].values #=> Array
3325
+ # resp.segment_groups.groups[0].dimensions[0].calculated_attributes["typeName"].values[0] #=> String
3326
+ # resp.segment_groups.groups[0].dimensions[0].calculated_attributes["typeName"].condition_overrides.range.start #=> Integer
3327
+ # resp.segment_groups.groups[0].dimensions[0].calculated_attributes["typeName"].condition_overrides.range.end #=> Integer
3328
+ # resp.segment_groups.groups[0].dimensions[0].calculated_attributes["typeName"].condition_overrides.range.unit #=> String, one of "DAYS"
3329
+ # resp.segment_groups.groups[0].source_segments #=> Array
3330
+ # resp.segment_groups.groups[0].source_segments[0].segment_definition_name #=> String
3331
+ # resp.segment_groups.groups[0].source_type #=> String, one of "ALL", "ANY", "NONE"
3332
+ # resp.segment_groups.groups[0].type #=> String, one of "ALL", "ANY", "NONE"
3333
+ # resp.segment_groups.include #=> String, one of "ALL", "ANY", "NONE"
3334
+ # resp.segment_definition_arn #=> String
3335
+ # resp.created_at #=> Time
3336
+ # resp.tags #=> Hash
3337
+ # resp.tags["TagKey"] #=> String
3338
+ #
3339
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetSegmentDefinition AWS API Documentation
3340
+ #
3341
+ # @overload get_segment_definition(params = {})
3342
+ # @param [Hash] params ({})
3343
+ def get_segment_definition(params = {}, options = {})
3344
+ req = build_request(:get_segment_definition, params)
3345
+ req.send_request(options)
3346
+ end
3347
+
3348
+ # Gets the result of a segment estimate query.
3349
+ #
3350
+ # @option params [required, String] :domain_name
3351
+ # The unique name of the domain.
3352
+ #
3353
+ # @option params [required, String] :estimate_id
3354
+ # The query Id passed by a previous `CreateSegmentEstimate` operation.
3355
+ #
3356
+ # @return [Types::GetSegmentEstimateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3357
+ #
3358
+ # * {Types::GetSegmentEstimateResponse#domain_name #domain_name} => String
3359
+ # * {Types::GetSegmentEstimateResponse#estimate_id #estimate_id} => String
3360
+ # * {Types::GetSegmentEstimateResponse#status #status} => String
3361
+ # * {Types::GetSegmentEstimateResponse#estimate #estimate} => String
3362
+ # * {Types::GetSegmentEstimateResponse#message #message} => String
3363
+ # * {Types::GetSegmentEstimateResponse#status_code #status_code} => Integer
3364
+ #
3365
+ # @example Request syntax with placeholder values
3366
+ #
3367
+ # resp = client.get_segment_estimate({
3368
+ # domain_name: "name", # required
3369
+ # estimate_id: "string1To255", # required
3370
+ # })
3371
+ #
3372
+ # @example Response structure
3373
+ #
3374
+ # resp.domain_name #=> String
3375
+ # resp.estimate_id #=> String
3376
+ # resp.status #=> String, one of "RUNNING", "SUCCEEDED", "FAILED"
3377
+ # resp.estimate #=> String
3378
+ # resp.message #=> String
3379
+ # resp.status_code #=> Integer
3380
+ #
3381
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetSegmentEstimate AWS API Documentation
3382
+ #
3383
+ # @overload get_segment_estimate(params = {})
3384
+ # @param [Hash] params ({})
3385
+ def get_segment_estimate(params = {}, options = {})
3386
+ req = build_request(:get_segment_estimate, params)
3387
+ req.send_request(options)
3388
+ end
3389
+
3390
+ # Determines if the given profiles are within a segment.
3391
+ #
3392
+ # @option params [required, String] :domain_name
3393
+ # The unique name of the domain.
3394
+ #
3395
+ # @option params [required, String] :segment_definition_name
3396
+ # The Id of the wanted segment. Needs to be a valid, and existing
3397
+ # segment Id.
3398
+ #
3399
+ # @option params [required, Array<String>] :profile_ids
3400
+ # The list of profile IDs to query for.
3401
+ #
3402
+ # @return [Types::GetSegmentMembershipResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3403
+ #
3404
+ # * {Types::GetSegmentMembershipResponse#segment_definition_name #segment_definition_name} => String
3405
+ # * {Types::GetSegmentMembershipResponse#profiles #profiles} => Array&lt;Types::ProfileQueryResult&gt;
3406
+ # * {Types::GetSegmentMembershipResponse#failures #failures} => Array&lt;Types::ProfileQueryFailures&gt;
3407
+ #
3408
+ # @example Request syntax with placeholder values
3409
+ #
3410
+ # resp = client.get_segment_membership({
2051
3411
  # domain_name: "name", # required
2052
- # object_type_name: "typeName", # required
3412
+ # segment_definition_name: "name", # required
3413
+ # profile_ids: ["uuid"], # required
2053
3414
  # })
2054
3415
  #
2055
3416
  # @example Response structure
2056
3417
  #
2057
- # resp.object_type_name #=> String
2058
- # resp.description #=> String
2059
- # resp.template_id #=> String
2060
- # resp.expiration_days #=> Integer
2061
- # resp.encryption_key #=> String
2062
- # resp.allow_profile_creation #=> Boolean
2063
- # resp.source_last_updated_timestamp_format #=> String
2064
- # resp.max_available_profile_object_count #=> Integer
2065
- # resp.max_profile_object_count #=> Integer
2066
- # resp.fields #=> Hash
2067
- # resp.fields["name"].source #=> String
2068
- # resp.fields["name"].target #=> String
2069
- # resp.fields["name"].content_type #=> String, one of "STRING", "NUMBER", "PHONE_NUMBER", "EMAIL_ADDRESS", "NAME"
2070
- # resp.keys #=> Hash
2071
- # resp.keys["name"] #=> Array
2072
- # resp.keys["name"][0].standard_identifiers #=> Array
2073
- # resp.keys["name"][0].standard_identifiers[0] #=> String, one of "PROFILE", "ASSET", "CASE", "UNIQUE", "SECONDARY", "LOOKUP_ONLY", "NEW_ONLY", "ORDER"
2074
- # resp.keys["name"][0].field_names #=> Array
2075
- # resp.keys["name"][0].field_names[0] #=> String
2076
- # resp.created_at #=> Time
2077
- # resp.last_updated_at #=> Time
2078
- # resp.tags #=> Hash
2079
- # resp.tags["TagKey"] #=> String
2080
- #
2081
- # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetProfileObjectType AWS API Documentation
2082
- #
2083
- # @overload get_profile_object_type(params = {})
3418
+ # resp.segment_definition_name #=> String
3419
+ # resp.profiles #=> Array
3420
+ # resp.profiles[0].profile_id #=> String
3421
+ # resp.profiles[0].query_result #=> String, one of "PRESENT", "ABSENT"
3422
+ # resp.profiles[0].profile.profile_id #=> String
3423
+ # resp.profiles[0].profile.account_number #=> String
3424
+ # resp.profiles[0].profile.additional_information #=> String
3425
+ # resp.profiles[0].profile.party_type #=> String, one of "INDIVIDUAL", "BUSINESS", "OTHER"
3426
+ # resp.profiles[0].profile.business_name #=> String
3427
+ # resp.profiles[0].profile.first_name #=> String
3428
+ # resp.profiles[0].profile.middle_name #=> String
3429
+ # resp.profiles[0].profile.last_name #=> String
3430
+ # resp.profiles[0].profile.birth_date #=> String
3431
+ # resp.profiles[0].profile.gender #=> String, one of "MALE", "FEMALE", "UNSPECIFIED"
3432
+ # resp.profiles[0].profile.phone_number #=> String
3433
+ # resp.profiles[0].profile.mobile_phone_number #=> String
3434
+ # resp.profiles[0].profile.home_phone_number #=> String
3435
+ # resp.profiles[0].profile.business_phone_number #=> String
3436
+ # resp.profiles[0].profile.email_address #=> String
3437
+ # resp.profiles[0].profile.personal_email_address #=> String
3438
+ # resp.profiles[0].profile.business_email_address #=> String
3439
+ # resp.profiles[0].profile.address.address_1 #=> String
3440
+ # resp.profiles[0].profile.address.address_2 #=> String
3441
+ # resp.profiles[0].profile.address.address_3 #=> String
3442
+ # resp.profiles[0].profile.address.address_4 #=> String
3443
+ # resp.profiles[0].profile.address.city #=> String
3444
+ # resp.profiles[0].profile.address.county #=> String
3445
+ # resp.profiles[0].profile.address.state #=> String
3446
+ # resp.profiles[0].profile.address.province #=> String
3447
+ # resp.profiles[0].profile.address.country #=> String
3448
+ # resp.profiles[0].profile.address.postal_code #=> String
3449
+ # resp.profiles[0].profile.shipping_address.address_1 #=> String
3450
+ # resp.profiles[0].profile.shipping_address.address_2 #=> String
3451
+ # resp.profiles[0].profile.shipping_address.address_3 #=> String
3452
+ # resp.profiles[0].profile.shipping_address.address_4 #=> String
3453
+ # resp.profiles[0].profile.shipping_address.city #=> String
3454
+ # resp.profiles[0].profile.shipping_address.county #=> String
3455
+ # resp.profiles[0].profile.shipping_address.state #=> String
3456
+ # resp.profiles[0].profile.shipping_address.province #=> String
3457
+ # resp.profiles[0].profile.shipping_address.country #=> String
3458
+ # resp.profiles[0].profile.shipping_address.postal_code #=> String
3459
+ # resp.profiles[0].profile.mailing_address.address_1 #=> String
3460
+ # resp.profiles[0].profile.mailing_address.address_2 #=> String
3461
+ # resp.profiles[0].profile.mailing_address.address_3 #=> String
3462
+ # resp.profiles[0].profile.mailing_address.address_4 #=> String
3463
+ # resp.profiles[0].profile.mailing_address.city #=> String
3464
+ # resp.profiles[0].profile.mailing_address.county #=> String
3465
+ # resp.profiles[0].profile.mailing_address.state #=> String
3466
+ # resp.profiles[0].profile.mailing_address.province #=> String
3467
+ # resp.profiles[0].profile.mailing_address.country #=> String
3468
+ # resp.profiles[0].profile.mailing_address.postal_code #=> String
3469
+ # resp.profiles[0].profile.billing_address.address_1 #=> String
3470
+ # resp.profiles[0].profile.billing_address.address_2 #=> String
3471
+ # resp.profiles[0].profile.billing_address.address_3 #=> String
3472
+ # resp.profiles[0].profile.billing_address.address_4 #=> String
3473
+ # resp.profiles[0].profile.billing_address.city #=> String
3474
+ # resp.profiles[0].profile.billing_address.county #=> String
3475
+ # resp.profiles[0].profile.billing_address.state #=> String
3476
+ # resp.profiles[0].profile.billing_address.province #=> String
3477
+ # resp.profiles[0].profile.billing_address.country #=> String
3478
+ # resp.profiles[0].profile.billing_address.postal_code #=> String
3479
+ # resp.profiles[0].profile.attributes #=> Hash
3480
+ # resp.profiles[0].profile.attributes["string1To255"] #=> String
3481
+ # resp.profiles[0].profile.found_by_items #=> Array
3482
+ # resp.profiles[0].profile.found_by_items[0].key_name #=> String
3483
+ # resp.profiles[0].profile.found_by_items[0].values #=> Array
3484
+ # resp.profiles[0].profile.found_by_items[0].values[0] #=> String
3485
+ # resp.profiles[0].profile.party_type_string #=> String
3486
+ # resp.profiles[0].profile.gender_string #=> String
3487
+ # resp.failures #=> Array
3488
+ # resp.failures[0].profile_id #=> String
3489
+ # resp.failures[0].message #=> String
3490
+ # resp.failures[0].status #=> Integer
3491
+ #
3492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetSegmentMembership AWS API Documentation
3493
+ #
3494
+ # @overload get_segment_membership(params = {})
2084
3495
  # @param [Hash] params ({})
2085
- def get_profile_object_type(params = {}, options = {})
2086
- req = build_request(:get_profile_object_type, params)
3496
+ def get_segment_membership(params = {}, options = {})
3497
+ req = build_request(:get_segment_membership, params)
2087
3498
  req.send_request(options)
2088
3499
  end
2089
3500
 
2090
- # Returns the template information for a specific object type.
3501
+ # Retrieve the latest status of a segment snapshot.
2091
3502
  #
2092
- # A template is a predefined ProfileObjectType, such as
2093
- # “Salesforce-Account” or “Salesforce-Contact.” When a user sends a
2094
- # ProfileObject, using the PutProfileObject API, with an ObjectTypeName
2095
- # that matches one of the TemplateIds, it uses the mappings from the
2096
- # template.
3503
+ # @option params [required, String] :domain_name
3504
+ # The unique identifier of the domain.
2097
3505
  #
2098
- # @option params [required, String] :template_id
2099
- # A unique identifier for the object template.
3506
+ # @option params [required, String] :segment_definition_name
3507
+ # The unique name of the segment definition.
2100
3508
  #
2101
- # @return [Types::GetProfileObjectTypeTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3509
+ # @option params [required, String] :snapshot_id
3510
+ # The unique identifier of the segment snapshot.
2102
3511
  #
2103
- # * {Types::GetProfileObjectTypeTemplateResponse#template_id #template_id} => String
2104
- # * {Types::GetProfileObjectTypeTemplateResponse#source_name #source_name} => String
2105
- # * {Types::GetProfileObjectTypeTemplateResponse#source_object #source_object} => String
2106
- # * {Types::GetProfileObjectTypeTemplateResponse#allow_profile_creation #allow_profile_creation} => Boolean
2107
- # * {Types::GetProfileObjectTypeTemplateResponse#source_last_updated_timestamp_format #source_last_updated_timestamp_format} => String
2108
- # * {Types::GetProfileObjectTypeTemplateResponse#fields #fields} => Hash&lt;String,Types::ObjectTypeField&gt;
2109
- # * {Types::GetProfileObjectTypeTemplateResponse#keys #keys} => Hash&lt;String,Array&lt;Types::ObjectTypeKey&gt;&gt;
3512
+ # @return [Types::GetSegmentSnapshotResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3513
+ #
3514
+ # * {Types::GetSegmentSnapshotResponse#snapshot_id #snapshot_id} => String
3515
+ # * {Types::GetSegmentSnapshotResponse#status #status} => String
3516
+ # * {Types::GetSegmentSnapshotResponse#status_message #status_message} => String
3517
+ # * {Types::GetSegmentSnapshotResponse#data_format #data_format} => String
3518
+ # * {Types::GetSegmentSnapshotResponse#encryption_key #encryption_key} => String
3519
+ # * {Types::GetSegmentSnapshotResponse#role_arn #role_arn} => String
3520
+ # * {Types::GetSegmentSnapshotResponse#destination_uri #destination_uri} => String
2110
3521
  #
2111
3522
  # @example Request syntax with placeholder values
2112
3523
  #
2113
- # resp = client.get_profile_object_type_template({
2114
- # template_id: "name", # required
3524
+ # resp = client.get_segment_snapshot({
3525
+ # domain_name: "name", # required
3526
+ # segment_definition_name: "name", # required
3527
+ # snapshot_id: "uuid", # required
2115
3528
  # })
2116
3529
  #
2117
3530
  # @example Response structure
2118
3531
  #
2119
- # resp.template_id #=> String
2120
- # resp.source_name #=> String
2121
- # resp.source_object #=> String
2122
- # resp.allow_profile_creation #=> Boolean
2123
- # resp.source_last_updated_timestamp_format #=> String
2124
- # resp.fields #=> Hash
2125
- # resp.fields["name"].source #=> String
2126
- # resp.fields["name"].target #=> String
2127
- # resp.fields["name"].content_type #=> String, one of "STRING", "NUMBER", "PHONE_NUMBER", "EMAIL_ADDRESS", "NAME"
2128
- # resp.keys #=> Hash
2129
- # resp.keys["name"] #=> Array
2130
- # resp.keys["name"][0].standard_identifiers #=> Array
2131
- # resp.keys["name"][0].standard_identifiers[0] #=> String, one of "PROFILE", "ASSET", "CASE", "UNIQUE", "SECONDARY", "LOOKUP_ONLY", "NEW_ONLY", "ORDER"
2132
- # resp.keys["name"][0].field_names #=> Array
2133
- # resp.keys["name"][0].field_names[0] #=> String
3532
+ # resp.snapshot_id #=> String
3533
+ # resp.status #=> String, one of "COMPLETED", "IN_PROGRESS", "FAILED"
3534
+ # resp.status_message #=> String
3535
+ # resp.data_format #=> String, one of "CSV", "JSONL", "ORC"
3536
+ # resp.encryption_key #=> String
3537
+ # resp.role_arn #=> String
3538
+ # resp.destination_uri #=> String
2134
3539
  #
2135
- # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetProfileObjectTypeTemplate AWS API Documentation
3540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/GetSegmentSnapshot AWS API Documentation
2136
3541
  #
2137
- # @overload get_profile_object_type_template(params = {})
3542
+ # @overload get_segment_snapshot(params = {})
2138
3543
  # @param [Hash] params ({})
2139
- def get_profile_object_type_template(params = {}, options = {})
2140
- req = build_request(:get_profile_object_type_template, params)
3544
+ def get_segment_snapshot(params = {}, options = {})
3545
+ req = build_request(:get_segment_snapshot, params)
2141
3546
  req.send_request(options)
2142
3547
  end
2143
3548
 
@@ -2173,6 +3578,8 @@ module Aws::CustomerProfiles
2173
3578
  # * {Types::GetSimilarProfilesResponse#confidence_score #confidence_score} => Float
2174
3579
  # * {Types::GetSimilarProfilesResponse#next_token #next_token} => String
2175
3580
  #
3581
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3582
+ #
2176
3583
  # @example Request syntax with placeholder values
2177
3584
  #
2178
3585
  # resp = client.get_similar_profiles({
@@ -2355,6 +3762,8 @@ module Aws::CustomerProfiles
2355
3762
  # resp.items[0].workflow_id #=> String
2356
3763
  # resp.items[0].is_unstructured #=> Boolean
2357
3764
  # resp.items[0].role_arn #=> String
3765
+ # resp.items[0].event_trigger_names #=> Array
3766
+ # resp.items[0].event_trigger_names[0] #=> String
2358
3767
  # resp.next_token #=> String
2359
3768
  #
2360
3769
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListAccountIntegrations AWS API Documentation
@@ -2550,6 +3959,53 @@ module Aws::CustomerProfiles
2550
3959
  req.send_request(options)
2551
3960
  end
2552
3961
 
3962
+ # List all Event Triggers under a domain.
3963
+ #
3964
+ # @option params [required, String] :domain_name
3965
+ # The unique name of the domain.
3966
+ #
3967
+ # @option params [String] :next_token
3968
+ # The pagination token to use with ListEventTriggers.
3969
+ #
3970
+ # @option params [Integer] :max_results
3971
+ # The maximum number of results to return per page.
3972
+ #
3973
+ # @return [Types::ListEventTriggersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3974
+ #
3975
+ # * {Types::ListEventTriggersResponse#items #items} => Array&lt;Types::EventTriggerSummaryItem&gt;
3976
+ # * {Types::ListEventTriggersResponse#next_token #next_token} => String
3977
+ #
3978
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3979
+ #
3980
+ # @example Request syntax with placeholder values
3981
+ #
3982
+ # resp = client.list_event_triggers({
3983
+ # domain_name: "name", # required
3984
+ # next_token: "token",
3985
+ # max_results: 1,
3986
+ # })
3987
+ #
3988
+ # @example Response structure
3989
+ #
3990
+ # resp.items #=> Array
3991
+ # resp.items[0].object_type_name #=> String
3992
+ # resp.items[0].event_trigger_name #=> String
3993
+ # resp.items[0].description #=> String
3994
+ # resp.items[0].created_at #=> Time
3995
+ # resp.items[0].last_updated_at #=> Time
3996
+ # resp.items[0].tags #=> Hash
3997
+ # resp.items[0].tags["TagKey"] #=> String
3998
+ # resp.next_token #=> String
3999
+ #
4000
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListEventTriggers AWS API Documentation
4001
+ #
4002
+ # @overload list_event_triggers(params = {})
4003
+ # @param [Hash] params ({})
4004
+ def list_event_triggers(params = {}, options = {})
4005
+ req = build_request(:list_event_triggers, params)
4006
+ req.send_request(options)
4007
+ end
4008
+
2553
4009
  # Lists all of the Identity Resolution Jobs in your domain. The response
2554
4010
  # sorts the list by `JobStartTime`.
2555
4011
  #
@@ -2646,6 +4102,8 @@ module Aws::CustomerProfiles
2646
4102
  # resp.items[0].workflow_id #=> String
2647
4103
  # resp.items[0].is_unstructured #=> Boolean
2648
4104
  # resp.items[0].role_arn #=> String
4105
+ # resp.items[0].event_trigger_names #=> Array
4106
+ # resp.items[0].event_trigger_names[0] #=> String
2649
4107
  # resp.next_token #=> String
2650
4108
  #
2651
4109
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListIntegrations AWS API Documentation
@@ -2657,6 +4115,91 @@ module Aws::CustomerProfiles
2657
4115
  req.send_request(options)
2658
4116
  end
2659
4117
 
4118
+ # Fetch the possible attribute values given the attribute name.
4119
+ #
4120
+ # @option params [String] :next_token
4121
+ # The pagination token from the previous call.
4122
+ #
4123
+ # @option params [Integer] :max_results
4124
+ # The maximum number of objects returned per page.
4125
+ #
4126
+ # @option params [required, String] :domain_name
4127
+ # The unique identifier of the domain.
4128
+ #
4129
+ # @option params [required, String] :object_type_name
4130
+ # The name of the profile object type.
4131
+ #
4132
+ # @return [Types::ListObjectTypeAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4133
+ #
4134
+ # * {Types::ListObjectTypeAttributesResponse#items #items} => Array&lt;Types::ListObjectTypeAttributeItem&gt;
4135
+ # * {Types::ListObjectTypeAttributesResponse#next_token #next_token} => String
4136
+ #
4137
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4138
+ #
4139
+ # @example Request syntax with placeholder values
4140
+ #
4141
+ # resp = client.list_object_type_attributes({
4142
+ # next_token: "token",
4143
+ # max_results: 1,
4144
+ # domain_name: "name", # required
4145
+ # object_type_name: "typeName", # required
4146
+ # })
4147
+ #
4148
+ # @example Response structure
4149
+ #
4150
+ # resp.items #=> Array
4151
+ # resp.items[0].attribute_name #=> String
4152
+ # resp.items[0].last_updated_at #=> Time
4153
+ # resp.next_token #=> String
4154
+ #
4155
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListObjectTypeAttributes AWS API Documentation
4156
+ #
4157
+ # @overload list_object_type_attributes(params = {})
4158
+ # @param [Hash] params ({})
4159
+ def list_object_type_attributes(params = {}, options = {})
4160
+ req = build_request(:list_object_type_attributes, params)
4161
+ req.send_request(options)
4162
+ end
4163
+
4164
+ # Fetch the possible attribute values given the attribute name.
4165
+ #
4166
+ # @option params [required, String] :domain_name
4167
+ # The unique identifier of the domain.
4168
+ #
4169
+ # @option params [required, String] :attribute_name
4170
+ # The attribute name.
4171
+ #
4172
+ # @return [Types::ProfileAttributeValuesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4173
+ #
4174
+ # * {Types::ProfileAttributeValuesResponse#domain_name #domain_name} => String
4175
+ # * {Types::ProfileAttributeValuesResponse#attribute_name #attribute_name} => String
4176
+ # * {Types::ProfileAttributeValuesResponse#items #items} => Array&lt;Types::AttributeValueItem&gt;
4177
+ # * {Types::ProfileAttributeValuesResponse#status_code #status_code} => Integer
4178
+ #
4179
+ # @example Request syntax with placeholder values
4180
+ #
4181
+ # resp = client.list_profile_attribute_values({
4182
+ # domain_name: "name", # required
4183
+ # attribute_name: "string1To255", # required
4184
+ # })
4185
+ #
4186
+ # @example Response structure
4187
+ #
4188
+ # resp.domain_name #=> String
4189
+ # resp.attribute_name #=> String
4190
+ # resp.items #=> Array
4191
+ # resp.items[0].value #=> String
4192
+ # resp.status_code #=> Integer
4193
+ #
4194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListProfileAttributeValues AWS API Documentation
4195
+ #
4196
+ # @overload list_profile_attribute_values(params = {})
4197
+ # @param [Hash] params ({})
4198
+ def list_profile_attribute_values(params = {}, options = {})
4199
+ req = build_request(:list_profile_attribute_values, params)
4200
+ req.send_request(options)
4201
+ end
4202
+
2660
4203
  # Lists all of the template information for object types.
2661
4204
  #
2662
4205
  # @option params [String] :next_token
@@ -2816,6 +4359,8 @@ module Aws::CustomerProfiles
2816
4359
  # * {Types::ListRuleBasedMatchesResponse#match_ids #match_ids} => Array&lt;String&gt;
2817
4360
  # * {Types::ListRuleBasedMatchesResponse#next_token #next_token} => String
2818
4361
  #
4362
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4363
+ #
2819
4364
  # @example Request syntax with placeholder values
2820
4365
  #
2821
4366
  # resp = client.list_rule_based_matches({
@@ -2839,6 +4384,53 @@ module Aws::CustomerProfiles
2839
4384
  req.send_request(options)
2840
4385
  end
2841
4386
 
4387
+ # Lists all segment definitions under a domain.
4388
+ #
4389
+ # @option params [required, String] :domain_name
4390
+ # The unique identifier of the domain.
4391
+ #
4392
+ # @option params [Integer] :max_results
4393
+ # The maximum number of objects returned per page.
4394
+ #
4395
+ # @option params [String] :next_token
4396
+ # The pagination token from the previous call.
4397
+ #
4398
+ # @return [Types::ListSegmentDefinitionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4399
+ #
4400
+ # * {Types::ListSegmentDefinitionsResponse#next_token #next_token} => String
4401
+ # * {Types::ListSegmentDefinitionsResponse#items #items} => Array&lt;Types::SegmentDefinitionItem&gt;
4402
+ #
4403
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4404
+ #
4405
+ # @example Request syntax with placeholder values
4406
+ #
4407
+ # resp = client.list_segment_definitions({
4408
+ # domain_name: "name", # required
4409
+ # max_results: 1,
4410
+ # next_token: "token",
4411
+ # })
4412
+ #
4413
+ # @example Response structure
4414
+ #
4415
+ # resp.next_token #=> String
4416
+ # resp.items #=> Array
4417
+ # resp.items[0].segment_definition_name #=> String
4418
+ # resp.items[0].display_name #=> String
4419
+ # resp.items[0].description #=> String
4420
+ # resp.items[0].segment_definition_arn #=> String
4421
+ # resp.items[0].created_at #=> Time
4422
+ # resp.items[0].tags #=> Hash
4423
+ # resp.items[0].tags["TagKey"] #=> String
4424
+ #
4425
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ListSegmentDefinitions AWS API Documentation
4426
+ #
4427
+ # @overload list_segment_definitions(params = {})
4428
+ # @param [Hash] params ({})
4429
+ def list_segment_definitions(params = {}, options = {})
4430
+ req = build_request(:list_segment_definitions, params)
4431
+ req.send_request(options)
4432
+ end
4433
+
2842
4434
  # Displays the tags associated with an Amazon Connect Customer Profiles
2843
4435
  # resource. In Connect Customer Profiles, domains, profile object types,
2844
4436
  # and integrations can be tagged.
@@ -3075,6 +4667,10 @@ module Aws::CustomerProfiles
3075
4667
  # The Amazon Resource Name (ARN) of the IAM role. The Integration uses
3076
4668
  # this role to make Customer Profiles requests on your behalf.
3077
4669
  #
4670
+ # @option params [Array<String>] :event_trigger_names
4671
+ # A list of unique names for active event triggers associated with the
4672
+ # integration.
4673
+ #
3078
4674
  # @return [Types::PutIntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3079
4675
  #
3080
4676
  # * {Types::PutIntegrationResponse#domain_name #domain_name} => String
@@ -3087,6 +4683,7 @@ module Aws::CustomerProfiles
3087
4683
  # * {Types::PutIntegrationResponse#workflow_id #workflow_id} => String
3088
4684
  # * {Types::PutIntegrationResponse#is_unstructured #is_unstructured} => Boolean
3089
4685
  # * {Types::PutIntegrationResponse#role_arn #role_arn} => String
4686
+ # * {Types::PutIntegrationResponse#event_trigger_names #event_trigger_names} => Array&lt;String&gt;
3090
4687
  #
3091
4688
  # @example Request syntax with placeholder values
3092
4689
  #
@@ -3164,6 +4761,7 @@ module Aws::CustomerProfiles
3164
4761
  # "string1To255" => "typeName",
3165
4762
  # },
3166
4763
  # role_arn: "RoleArn",
4764
+ # event_trigger_names: ["name"],
3167
4765
  # })
3168
4766
  #
3169
4767
  # @example Response structure
@@ -3180,6 +4778,8 @@ module Aws::CustomerProfiles
3180
4778
  # resp.workflow_id #=> String
3181
4779
  # resp.is_unstructured #=> Boolean
3182
4780
  # resp.role_arn #=> String
4781
+ # resp.event_trigger_names #=> Array
4782
+ # resp.event_trigger_names[0] #=> String
3183
4783
  #
3184
4784
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/PutIntegration AWS API Documentation
3185
4785
  #
@@ -3338,7 +4938,7 @@ module Aws::CustomerProfiles
3338
4938
  # keys: {
3339
4939
  # "name" => [
3340
4940
  # {
3341
- # standard_identifiers: ["PROFILE"], # accepts PROFILE, ASSET, CASE, UNIQUE, SECONDARY, LOOKUP_ONLY, NEW_ONLY, ORDER
4941
+ # standard_identifiers: ["PROFILE"], # accepts PROFILE, ASSET, CASE, ORDER, COMMUNICATION_RECORD, UNIQUE, SECONDARY, LOOKUP_ONLY, NEW_ONLY
3342
4942
  # field_names: ["name"],
3343
4943
  # },
3344
4944
  # ],
@@ -3366,7 +4966,7 @@ module Aws::CustomerProfiles
3366
4966
  # resp.keys #=> Hash
3367
4967
  # resp.keys["name"] #=> Array
3368
4968
  # resp.keys["name"][0].standard_identifiers #=> Array
3369
- # resp.keys["name"][0].standard_identifiers[0] #=> String, one of "PROFILE", "ASSET", "CASE", "UNIQUE", "SECONDARY", "LOOKUP_ONLY", "NEW_ONLY", "ORDER"
4969
+ # resp.keys["name"][0].standard_identifiers[0] #=> String, one of "PROFILE", "ASSET", "CASE", "ORDER", "COMMUNICATION_RECORD", "UNIQUE", "SECONDARY", "LOOKUP_ONLY", "NEW_ONLY"
3370
4970
  # resp.keys["name"][0].field_names #=> Array
3371
4971
  # resp.keys["name"][0].field_names[0] #=> String
3372
4972
  # resp.created_at #=> Time
@@ -3893,6 +5493,118 @@ module Aws::CustomerProfiles
3893
5493
  req.send_request(options)
3894
5494
  end
3895
5495
 
5496
+ # Update the properties of an Event Trigger.
5497
+ #
5498
+ # @option params [required, String] :domain_name
5499
+ # The unique name of the domain.
5500
+ #
5501
+ # @option params [required, String] :event_trigger_name
5502
+ # The unique name of the event trigger.
5503
+ #
5504
+ # @option params [String] :object_type_name
5505
+ # The unique name of the object type.
5506
+ #
5507
+ # @option params [String] :description
5508
+ # The description of the event trigger.
5509
+ #
5510
+ # @option params [Array<Types::EventTriggerCondition>] :event_trigger_conditions
5511
+ # A list of conditions that determine when an event should trigger the
5512
+ # destination.
5513
+ #
5514
+ # @option params [String] :segment_filter
5515
+ # The destination is triggered only for profiles that meet the criteria
5516
+ # of a segment definition.
5517
+ #
5518
+ # @option params [Types::EventTriggerLimits] :event_trigger_limits
5519
+ # Defines limits controlling whether an event triggers the destination,
5520
+ # based on ingestion latency and the number of invocations per profile
5521
+ # over specific time periods.
5522
+ #
5523
+ # @return [Types::UpdateEventTriggerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5524
+ #
5525
+ # * {Types::UpdateEventTriggerResponse#event_trigger_name #event_trigger_name} => String
5526
+ # * {Types::UpdateEventTriggerResponse#object_type_name #object_type_name} => String
5527
+ # * {Types::UpdateEventTriggerResponse#description #description} => String
5528
+ # * {Types::UpdateEventTriggerResponse#event_trigger_conditions #event_trigger_conditions} => Array&lt;Types::EventTriggerCondition&gt;
5529
+ # * {Types::UpdateEventTriggerResponse#segment_filter #segment_filter} => String
5530
+ # * {Types::UpdateEventTriggerResponse#event_trigger_limits #event_trigger_limits} => Types::EventTriggerLimits
5531
+ # * {Types::UpdateEventTriggerResponse#created_at #created_at} => Time
5532
+ # * {Types::UpdateEventTriggerResponse#last_updated_at #last_updated_at} => Time
5533
+ # * {Types::UpdateEventTriggerResponse#tags #tags} => Hash&lt;String,String&gt;
5534
+ #
5535
+ # @example Request syntax with placeholder values
5536
+ #
5537
+ # resp = client.update_event_trigger({
5538
+ # domain_name: "name", # required
5539
+ # event_trigger_name: "name", # required
5540
+ # object_type_name: "typeName",
5541
+ # description: "sensitiveText",
5542
+ # event_trigger_conditions: [
5543
+ # {
5544
+ # event_trigger_dimensions: [ # required
5545
+ # {
5546
+ # object_attributes: [ # required
5547
+ # {
5548
+ # source: "text",
5549
+ # field_name: "fieldName",
5550
+ # comparison_operator: "INCLUSIVE", # required, accepts INCLUSIVE, EXCLUSIVE, CONTAINS, BEGINS_WITH, ENDS_WITH, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, EQUAL, BEFORE, AFTER, ON, BETWEEN, NOT_BETWEEN
5551
+ # values: ["string1To255"], # required
5552
+ # },
5553
+ # ],
5554
+ # },
5555
+ # ],
5556
+ # logical_operator: "ANY", # required, accepts ANY, ALL, NONE
5557
+ # },
5558
+ # ],
5559
+ # segment_filter: "name",
5560
+ # event_trigger_limits: {
5561
+ # event_expiration: 1,
5562
+ # periods: [
5563
+ # {
5564
+ # unit: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS
5565
+ # value: 1, # required
5566
+ # max_invocations_per_profile: 1,
5567
+ # unlimited: false,
5568
+ # },
5569
+ # ],
5570
+ # },
5571
+ # })
5572
+ #
5573
+ # @example Response structure
5574
+ #
5575
+ # resp.event_trigger_name #=> String
5576
+ # resp.object_type_name #=> String
5577
+ # resp.description #=> String
5578
+ # resp.event_trigger_conditions #=> Array
5579
+ # resp.event_trigger_conditions[0].event_trigger_dimensions #=> Array
5580
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes #=> Array
5581
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].source #=> String
5582
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].field_name #=> String
5583
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].comparison_operator #=> String, one of "INCLUSIVE", "EXCLUSIVE", "CONTAINS", "BEGINS_WITH", "ENDS_WITH", "GREATER_THAN", "LESS_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL", "EQUAL", "BEFORE", "AFTER", "ON", "BETWEEN", "NOT_BETWEEN"
5584
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].values #=> Array
5585
+ # resp.event_trigger_conditions[0].event_trigger_dimensions[0].object_attributes[0].values[0] #=> String
5586
+ # resp.event_trigger_conditions[0].logical_operator #=> String, one of "ANY", "ALL", "NONE"
5587
+ # resp.segment_filter #=> String
5588
+ # resp.event_trigger_limits.event_expiration #=> Integer
5589
+ # resp.event_trigger_limits.periods #=> Array
5590
+ # resp.event_trigger_limits.periods[0].unit #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS"
5591
+ # resp.event_trigger_limits.periods[0].value #=> Integer
5592
+ # resp.event_trigger_limits.periods[0].max_invocations_per_profile #=> Integer
5593
+ # resp.event_trigger_limits.periods[0].unlimited #=> Boolean
5594
+ # resp.created_at #=> Time
5595
+ # resp.last_updated_at #=> Time
5596
+ # resp.tags #=> Hash
5597
+ # resp.tags["TagKey"] #=> String
5598
+ #
5599
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/UpdateEventTrigger AWS API Documentation
5600
+ #
5601
+ # @overload update_event_trigger(params = {})
5602
+ # @param [Hash] params ({})
5603
+ def update_event_trigger(params = {}, options = {})
5604
+ req = build_request(:update_event_trigger, params)
5605
+ req.send_request(options)
5606
+ end
5607
+
3896
5608
  # Updates the properties of a profile. The ProfileId is required for
3897
5609
  # updating a customer profile.
3898
5610
  #
@@ -4089,7 +5801,7 @@ module Aws::CustomerProfiles
4089
5801
  tracer: tracer
4090
5802
  )
4091
5803
  context[:gem_name] = 'aws-sdk-customerprofiles'
4092
- context[:gem_version] = '1.56.0'
5804
+ context[:gem_version] = '1.58.0'
4093
5805
  Seahorse::Client::Request.new(handlers, context)
4094
5806
  end
4095
5807