aws-sdk-customerprofiles 1.1.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -166,6 +166,54 @@ module Aws::CustomerProfiles
166
166
  include Aws::Structure
167
167
  end
168
168
 
169
+ # The operation to be performed on the provided source fields.
170
+ #
171
+ # @note When making an API call, you may pass ConnectorOperator
172
+ # data as a hash:
173
+ #
174
+ # {
175
+ # marketo: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
176
+ # s3: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
177
+ # salesforce: "PROJECTION", # accepts PROJECTION, LESS_THAN, CONTAINS, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
178
+ # service_now: "PROJECTION", # accepts PROJECTION, CONTAINS, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
179
+ # zendesk: "PROJECTION", # accepts PROJECTION, GREATER_THAN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
180
+ # }
181
+ #
182
+ # @!attribute [rw] marketo
183
+ # The operation to be performed on the provided Marketo source fields.
184
+ # @return [String]
185
+ #
186
+ # @!attribute [rw] s3
187
+ # The operation to be performed on the provided Amazon S3 source
188
+ # fields.
189
+ # @return [String]
190
+ #
191
+ # @!attribute [rw] salesforce
192
+ # The operation to be performed on the provided Salesforce source
193
+ # fields.
194
+ # @return [String]
195
+ #
196
+ # @!attribute [rw] service_now
197
+ # The operation to be performed on the provided ServiceNow source
198
+ # fields.
199
+ # @return [String]
200
+ #
201
+ # @!attribute [rw] zendesk
202
+ # The operation to be performed on the provided Zendesk source fields.
203
+ # @return [String]
204
+ #
205
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ConnectorOperator AWS API Documentation
206
+ #
207
+ class ConnectorOperator < Struct.new(
208
+ :marketo,
209
+ :s3,
210
+ :salesforce,
211
+ :service_now,
212
+ :zendesk)
213
+ SENSITIVE = []
214
+ include Aws::Structure
215
+ end
216
+
169
217
  # @note When making an API call, you may pass CreateDomainRequest
170
218
  # data as a hash:
171
219
  #
@@ -508,7 +556,7 @@ module Aws::CustomerProfiles
508
556
  #
509
557
  # {
510
558
  # domain_name: "name", # required
511
- # uri: "string1To255",
559
+ # uri: "string1To255", # required
512
560
  # }
513
561
  #
514
562
  # @!attribute [rw] domain_name
@@ -745,6 +793,118 @@ module Aws::CustomerProfiles
745
793
  include Aws::Structure
746
794
  end
747
795
 
796
+ # The configurations that control how Customer Profiles retrieves data
797
+ # from the source, Amazon AppFlow. Customer Profiles uses this
798
+ # information to create an AppFlow flow on behalf of customers.
799
+ #
800
+ # @note When making an API call, you may pass FlowDefinition
801
+ # data as a hash:
802
+ #
803
+ # {
804
+ # description: "FlowDescription",
805
+ # flow_name: "FlowName", # required
806
+ # kms_arn: "KmsArn", # required
807
+ # source_flow_config: { # required
808
+ # connector_profile_name: "ConnectorProfileName",
809
+ # connector_type: "Salesforce", # required, accepts Salesforce, Marketo, Zendesk, Servicenow, S3
810
+ # incremental_pull_config: {
811
+ # datetime_type_field_name: "DatetimeTypeFieldName",
812
+ # },
813
+ # source_connector_properties: { # required
814
+ # marketo: {
815
+ # object: "Object", # required
816
+ # },
817
+ # s3: {
818
+ # bucket_name: "BucketName", # required
819
+ # bucket_prefix: "BucketPrefix",
820
+ # },
821
+ # salesforce: {
822
+ # object: "Object", # required
823
+ # enable_dynamic_field_update: false,
824
+ # include_deleted_records: false,
825
+ # },
826
+ # service_now: {
827
+ # object: "Object", # required
828
+ # },
829
+ # zendesk: {
830
+ # object: "Object", # required
831
+ # },
832
+ # },
833
+ # },
834
+ # tasks: [ # required
835
+ # {
836
+ # connector_operator: {
837
+ # marketo: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
838
+ # s3: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
839
+ # salesforce: "PROJECTION", # accepts PROJECTION, LESS_THAN, CONTAINS, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
840
+ # service_now: "PROJECTION", # accepts PROJECTION, CONTAINS, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
841
+ # zendesk: "PROJECTION", # accepts PROJECTION, GREATER_THAN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
842
+ # },
843
+ # destination_field: "DestinationField",
844
+ # source_fields: ["stringTo2048"], # required
845
+ # task_properties: {
846
+ # "VALUE" => "Property",
847
+ # },
848
+ # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Mask, Merge, Truncate, Validate
849
+ # },
850
+ # ],
851
+ # trigger_config: { # required
852
+ # trigger_type: "Scheduled", # required, accepts Scheduled, Event, OnDemand
853
+ # trigger_properties: {
854
+ # scheduled: {
855
+ # schedule_expression: "ScheduleExpression", # required
856
+ # data_pull_mode: "Incremental", # accepts Incremental, Complete
857
+ # schedule_start_time: Time.now,
858
+ # schedule_end_time: Time.now,
859
+ # timezone: "Timezone",
860
+ # schedule_offset: 1,
861
+ # first_execution_from: Time.now,
862
+ # },
863
+ # },
864
+ # },
865
+ # }
866
+ #
867
+ # @!attribute [rw] description
868
+ # A description of the flow you want to create.
869
+ # @return [String]
870
+ #
871
+ # @!attribute [rw] flow_name
872
+ # The specified name of the flow. Use underscores (\_) or hyphens (-)
873
+ # only. Spaces are not allowed.
874
+ # @return [String]
875
+ #
876
+ # @!attribute [rw] kms_arn
877
+ # The Amazon Resource Name of the AWS Key Management Service (KMS) key
878
+ # you provide for encryption.
879
+ # @return [String]
880
+ #
881
+ # @!attribute [rw] source_flow_config
882
+ # The configuration that controls how Customer Profiles retrieves data
883
+ # from the source.
884
+ # @return [Types::SourceFlowConfig]
885
+ #
886
+ # @!attribute [rw] tasks
887
+ # A list of tasks that Customer Profiles performs while transferring
888
+ # the data in the flow run.
889
+ # @return [Array<Types::Task>]
890
+ #
891
+ # @!attribute [rw] trigger_config
892
+ # The trigger settings that determine how and when the flow runs.
893
+ # @return [Types::TriggerConfig]
894
+ #
895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/FlowDefinition AWS API Documentation
896
+ #
897
+ class FlowDefinition < Struct.new(
898
+ :description,
899
+ :flow_name,
900
+ :kms_arn,
901
+ :source_flow_config,
902
+ :tasks,
903
+ :trigger_config)
904
+ SENSITIVE = []
905
+ include Aws::Structure
906
+ end
907
+
748
908
  # @note When making an API call, you may pass GetDomainRequest
749
909
  # data as a hash:
750
910
  #
@@ -821,7 +981,7 @@ module Aws::CustomerProfiles
821
981
  #
822
982
  # {
823
983
  # domain_name: "name", # required
824
- # uri: "string1To255",
984
+ # uri: "string1To255", # required
825
985
  # }
826
986
  #
827
987
  # @!attribute [rw] domain_name
@@ -1034,6 +1194,29 @@ module Aws::CustomerProfiles
1034
1194
  include Aws::Structure
1035
1195
  end
1036
1196
 
1197
+ # Specifies the configuration used when importing incremental records
1198
+ # from the source.
1199
+ #
1200
+ # @note When making an API call, you may pass IncrementalPullConfig
1201
+ # data as a hash:
1202
+ #
1203
+ # {
1204
+ # datetime_type_field_name: "DatetimeTypeFieldName",
1205
+ # }
1206
+ #
1207
+ # @!attribute [rw] datetime_type_field_name
1208
+ # A field that specifies the date time or timestamp field as the
1209
+ # criteria to use when importing incremental records from the source.
1210
+ # @return [String]
1211
+ #
1212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/IncrementalPullConfig AWS API Documentation
1213
+ #
1214
+ class IncrementalPullConfig < Struct.new(
1215
+ :datetime_type_field_name)
1216
+ SENSITIVE = []
1217
+ include Aws::Structure
1218
+ end
1219
+
1037
1220
  # An internal service error occurred.
1038
1221
  #
1039
1222
  # @!attribute [rw] message
@@ -1525,6 +1708,28 @@ module Aws::CustomerProfiles
1525
1708
  include Aws::Structure
1526
1709
  end
1527
1710
 
1711
+ # The properties that are applied when Marketo is being used as a
1712
+ # source.
1713
+ #
1714
+ # @note When making an API call, you may pass MarketoSourceProperties
1715
+ # data as a hash:
1716
+ #
1717
+ # {
1718
+ # object: "Object", # required
1719
+ # }
1720
+ #
1721
+ # @!attribute [rw] object
1722
+ # The object specified in the Marketo flow source.
1723
+ # @return [String]
1724
+ #
1725
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/MarketoSourceProperties AWS API Documentation
1726
+ #
1727
+ class MarketoSourceProperties < Struct.new(
1728
+ :object)
1729
+ SENSITIVE = []
1730
+ include Aws::Structure
1731
+ end
1732
+
1528
1733
  # Represents a field in a ProfileObjectType.
1529
1734
  #
1530
1735
  # @note When making an API call, you may pass ObjectTypeField
@@ -1726,11 +1931,74 @@ module Aws::CustomerProfiles
1726
1931
  #
1727
1932
  # {
1728
1933
  # domain_name: "name", # required
1729
- # uri: "string1To255", # required
1934
+ # uri: "string1To255",
1730
1935
  # object_type_name: "typeName", # required
1731
1936
  # tags: {
1732
1937
  # "TagKey" => "TagValue",
1733
1938
  # },
1939
+ # flow_definition: {
1940
+ # description: "FlowDescription",
1941
+ # flow_name: "FlowName", # required
1942
+ # kms_arn: "KmsArn", # required
1943
+ # source_flow_config: { # required
1944
+ # connector_profile_name: "ConnectorProfileName",
1945
+ # connector_type: "Salesforce", # required, accepts Salesforce, Marketo, Zendesk, Servicenow, S3
1946
+ # incremental_pull_config: {
1947
+ # datetime_type_field_name: "DatetimeTypeFieldName",
1948
+ # },
1949
+ # source_connector_properties: { # required
1950
+ # marketo: {
1951
+ # object: "Object", # required
1952
+ # },
1953
+ # s3: {
1954
+ # bucket_name: "BucketName", # required
1955
+ # bucket_prefix: "BucketPrefix",
1956
+ # },
1957
+ # salesforce: {
1958
+ # object: "Object", # required
1959
+ # enable_dynamic_field_update: false,
1960
+ # include_deleted_records: false,
1961
+ # },
1962
+ # service_now: {
1963
+ # object: "Object", # required
1964
+ # },
1965
+ # zendesk: {
1966
+ # object: "Object", # required
1967
+ # },
1968
+ # },
1969
+ # },
1970
+ # tasks: [ # required
1971
+ # {
1972
+ # connector_operator: {
1973
+ # marketo: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
1974
+ # s3: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
1975
+ # salesforce: "PROJECTION", # accepts PROJECTION, LESS_THAN, CONTAINS, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
1976
+ # service_now: "PROJECTION", # accepts PROJECTION, CONTAINS, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
1977
+ # zendesk: "PROJECTION", # accepts PROJECTION, GREATER_THAN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
1978
+ # },
1979
+ # destination_field: "DestinationField",
1980
+ # source_fields: ["stringTo2048"], # required
1981
+ # task_properties: {
1982
+ # "VALUE" => "Property",
1983
+ # },
1984
+ # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Mask, Merge, Truncate, Validate
1985
+ # },
1986
+ # ],
1987
+ # trigger_config: { # required
1988
+ # trigger_type: "Scheduled", # required, accepts Scheduled, Event, OnDemand
1989
+ # trigger_properties: {
1990
+ # scheduled: {
1991
+ # schedule_expression: "ScheduleExpression", # required
1992
+ # data_pull_mode: "Incremental", # accepts Incremental, Complete
1993
+ # schedule_start_time: Time.now,
1994
+ # schedule_end_time: Time.now,
1995
+ # timezone: "Timezone",
1996
+ # schedule_offset: 1,
1997
+ # first_execution_from: Time.now,
1998
+ # },
1999
+ # },
2000
+ # },
2001
+ # },
1734
2002
  # }
1735
2003
  #
1736
2004
  # @!attribute [rw] domain_name
@@ -1750,13 +2018,19 @@ module Aws::CustomerProfiles
1750
2018
  # resource.
1751
2019
  # @return [Hash<String,String>]
1752
2020
  #
2021
+ # @!attribute [rw] flow_definition
2022
+ # The configuration that controls how Customer Profiles retrieves data
2023
+ # from the source.
2024
+ # @return [Types::FlowDefinition]
2025
+ #
1753
2026
  # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/PutIntegrationRequest AWS API Documentation
1754
2027
  #
1755
2028
  class PutIntegrationRequest < Struct.new(
1756
2029
  :domain_name,
1757
2030
  :uri,
1758
2031
  :object_type_name,
1759
- :tags)
2032
+ :tags,
2033
+ :flow_definition)
1760
2034
  SENSITIVE = []
1761
2035
  include Aws::Structure
1762
2036
  end
@@ -2020,6 +2294,135 @@ module Aws::CustomerProfiles
2020
2294
  include Aws::Structure
2021
2295
  end
2022
2296
 
2297
+ # The properties that are applied when Amazon S3 is being used as the
2298
+ # flow source.
2299
+ #
2300
+ # @note When making an API call, you may pass S3SourceProperties
2301
+ # data as a hash:
2302
+ #
2303
+ # {
2304
+ # bucket_name: "BucketName", # required
2305
+ # bucket_prefix: "BucketPrefix",
2306
+ # }
2307
+ #
2308
+ # @!attribute [rw] bucket_name
2309
+ # The Amazon S3 bucket name where the source files are stored.
2310
+ # @return [String]
2311
+ #
2312
+ # @!attribute [rw] bucket_prefix
2313
+ # The object key for the Amazon S3 bucket in which the source files
2314
+ # are stored.
2315
+ # @return [String]
2316
+ #
2317
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/S3SourceProperties AWS API Documentation
2318
+ #
2319
+ class S3SourceProperties < Struct.new(
2320
+ :bucket_name,
2321
+ :bucket_prefix)
2322
+ SENSITIVE = []
2323
+ include Aws::Structure
2324
+ end
2325
+
2326
+ # The properties that are applied when Salesforce is being used as a
2327
+ # source.
2328
+ #
2329
+ # @note When making an API call, you may pass SalesforceSourceProperties
2330
+ # data as a hash:
2331
+ #
2332
+ # {
2333
+ # object: "Object", # required
2334
+ # enable_dynamic_field_update: false,
2335
+ # include_deleted_records: false,
2336
+ # }
2337
+ #
2338
+ # @!attribute [rw] object
2339
+ # The object specified in the Salesforce flow source.
2340
+ # @return [String]
2341
+ #
2342
+ # @!attribute [rw] enable_dynamic_field_update
2343
+ # The flag that enables dynamic fetching of new (recently added)
2344
+ # fields in the Salesforce objects while running a flow.
2345
+ # @return [Boolean]
2346
+ #
2347
+ # @!attribute [rw] include_deleted_records
2348
+ # Indicates whether Amazon AppFlow includes deleted files in the flow
2349
+ # run.
2350
+ # @return [Boolean]
2351
+ #
2352
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/SalesforceSourceProperties AWS API Documentation
2353
+ #
2354
+ class SalesforceSourceProperties < Struct.new(
2355
+ :object,
2356
+ :enable_dynamic_field_update,
2357
+ :include_deleted_records)
2358
+ SENSITIVE = []
2359
+ include Aws::Structure
2360
+ end
2361
+
2362
+ # Specifies the configuration details of a scheduled-trigger flow that
2363
+ # you define. Currently, these settings only apply to the
2364
+ # scheduled-trigger type.
2365
+ #
2366
+ # @note When making an API call, you may pass ScheduledTriggerProperties
2367
+ # data as a hash:
2368
+ #
2369
+ # {
2370
+ # schedule_expression: "ScheduleExpression", # required
2371
+ # data_pull_mode: "Incremental", # accepts Incremental, Complete
2372
+ # schedule_start_time: Time.now,
2373
+ # schedule_end_time: Time.now,
2374
+ # timezone: "Timezone",
2375
+ # schedule_offset: 1,
2376
+ # first_execution_from: Time.now,
2377
+ # }
2378
+ #
2379
+ # @!attribute [rw] schedule_expression
2380
+ # The scheduling expression that determines the rate at which the
2381
+ # schedule will run, for example rate (5 minutes).
2382
+ # @return [String]
2383
+ #
2384
+ # @!attribute [rw] data_pull_mode
2385
+ # Specifies whether a scheduled flow has an incremental data transfer
2386
+ # or a complete data transfer for each flow run.
2387
+ # @return [String]
2388
+ #
2389
+ # @!attribute [rw] schedule_start_time
2390
+ # Specifies the scheduled start time for a scheduled-trigger flow.
2391
+ # @return [Time]
2392
+ #
2393
+ # @!attribute [rw] schedule_end_time
2394
+ # Specifies the scheduled end time for a scheduled-trigger flow.
2395
+ # @return [Time]
2396
+ #
2397
+ # @!attribute [rw] timezone
2398
+ # Specifies the time zone used when referring to the date and time of
2399
+ # a scheduled-triggered flow, such as America/New\_York.
2400
+ # @return [String]
2401
+ #
2402
+ # @!attribute [rw] schedule_offset
2403
+ # Specifies the optional offset that is added to the time interval for
2404
+ # a schedule-triggered flow.
2405
+ # @return [Integer]
2406
+ #
2407
+ # @!attribute [rw] first_execution_from
2408
+ # Specifies the date range for the records to import from the
2409
+ # connector in the first flow run.
2410
+ # @return [Time]
2411
+ #
2412
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ScheduledTriggerProperties AWS API Documentation
2413
+ #
2414
+ class ScheduledTriggerProperties < Struct.new(
2415
+ :schedule_expression,
2416
+ :data_pull_mode,
2417
+ :schedule_start_time,
2418
+ :schedule_end_time,
2419
+ :timezone,
2420
+ :schedule_offset,
2421
+ :first_execution_from)
2422
+ SENSITIVE = []
2423
+ include Aws::Structure
2424
+ end
2425
+
2023
2426
  # @note When making an API call, you may pass SearchProfilesRequest
2024
2427
  # data as a hash:
2025
2428
  #
@@ -2084,6 +2487,157 @@ module Aws::CustomerProfiles
2084
2487
  include Aws::Structure
2085
2488
  end
2086
2489
 
2490
+ # The properties that are applied when ServiceNow is being used as a
2491
+ # source.
2492
+ #
2493
+ # @note When making an API call, you may pass ServiceNowSourceProperties
2494
+ # data as a hash:
2495
+ #
2496
+ # {
2497
+ # object: "Object", # required
2498
+ # }
2499
+ #
2500
+ # @!attribute [rw] object
2501
+ # The object specified in the ServiceNow flow source.
2502
+ # @return [String]
2503
+ #
2504
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ServiceNowSourceProperties AWS API Documentation
2505
+ #
2506
+ class ServiceNowSourceProperties < Struct.new(
2507
+ :object)
2508
+ SENSITIVE = []
2509
+ include Aws::Structure
2510
+ end
2511
+
2512
+ # Specifies the information that is required to query a particular
2513
+ # Amazon AppFlow connector. Customer Profiles supports Salesforce,
2514
+ # Zendesk, Marketo, ServiceNow and Amazon S3.
2515
+ #
2516
+ # @note When making an API call, you may pass SourceConnectorProperties
2517
+ # data as a hash:
2518
+ #
2519
+ # {
2520
+ # marketo: {
2521
+ # object: "Object", # required
2522
+ # },
2523
+ # s3: {
2524
+ # bucket_name: "BucketName", # required
2525
+ # bucket_prefix: "BucketPrefix",
2526
+ # },
2527
+ # salesforce: {
2528
+ # object: "Object", # required
2529
+ # enable_dynamic_field_update: false,
2530
+ # include_deleted_records: false,
2531
+ # },
2532
+ # service_now: {
2533
+ # object: "Object", # required
2534
+ # },
2535
+ # zendesk: {
2536
+ # object: "Object", # required
2537
+ # },
2538
+ # }
2539
+ #
2540
+ # @!attribute [rw] marketo
2541
+ # The properties that are applied when Marketo is being used as a
2542
+ # source.
2543
+ # @return [Types::MarketoSourceProperties]
2544
+ #
2545
+ # @!attribute [rw] s3
2546
+ # The properties that are applied when Amazon S3 is being used as the
2547
+ # flow source.
2548
+ # @return [Types::S3SourceProperties]
2549
+ #
2550
+ # @!attribute [rw] salesforce
2551
+ # The properties that are applied when Salesforce is being used as a
2552
+ # source.
2553
+ # @return [Types::SalesforceSourceProperties]
2554
+ #
2555
+ # @!attribute [rw] service_now
2556
+ # The properties that are applied when ServiceNow is being used as a
2557
+ # source.
2558
+ # @return [Types::ServiceNowSourceProperties]
2559
+ #
2560
+ # @!attribute [rw] zendesk
2561
+ # The properties that are applied when using Zendesk as a flow source.
2562
+ # @return [Types::ZendeskSourceProperties]
2563
+ #
2564
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/SourceConnectorProperties AWS API Documentation
2565
+ #
2566
+ class SourceConnectorProperties < Struct.new(
2567
+ :marketo,
2568
+ :s3,
2569
+ :salesforce,
2570
+ :service_now,
2571
+ :zendesk)
2572
+ SENSITIVE = []
2573
+ include Aws::Structure
2574
+ end
2575
+
2576
+ # Contains information about the configuration of the source connector
2577
+ # used in the flow.
2578
+ #
2579
+ # @note When making an API call, you may pass SourceFlowConfig
2580
+ # data as a hash:
2581
+ #
2582
+ # {
2583
+ # connector_profile_name: "ConnectorProfileName",
2584
+ # connector_type: "Salesforce", # required, accepts Salesforce, Marketo, Zendesk, Servicenow, S3
2585
+ # incremental_pull_config: {
2586
+ # datetime_type_field_name: "DatetimeTypeFieldName",
2587
+ # },
2588
+ # source_connector_properties: { # required
2589
+ # marketo: {
2590
+ # object: "Object", # required
2591
+ # },
2592
+ # s3: {
2593
+ # bucket_name: "BucketName", # required
2594
+ # bucket_prefix: "BucketPrefix",
2595
+ # },
2596
+ # salesforce: {
2597
+ # object: "Object", # required
2598
+ # enable_dynamic_field_update: false,
2599
+ # include_deleted_records: false,
2600
+ # },
2601
+ # service_now: {
2602
+ # object: "Object", # required
2603
+ # },
2604
+ # zendesk: {
2605
+ # object: "Object", # required
2606
+ # },
2607
+ # },
2608
+ # }
2609
+ #
2610
+ # @!attribute [rw] connector_profile_name
2611
+ # The name of the AppFlow connector profile. This name must be unique
2612
+ # for each connector profile in the AWS account.
2613
+ # @return [String]
2614
+ #
2615
+ # @!attribute [rw] connector_type
2616
+ # The type of connector, such as Salesforce, Marketo, and so on.
2617
+ # @return [String]
2618
+ #
2619
+ # @!attribute [rw] incremental_pull_config
2620
+ # Defines the configuration for a scheduled incremental data pull. If
2621
+ # a valid configuration is provided, the fields specified in the
2622
+ # configuration are used when querying for the incremental data pull.
2623
+ # @return [Types::IncrementalPullConfig]
2624
+ #
2625
+ # @!attribute [rw] source_connector_properties
2626
+ # Specifies the information that is required to query a particular
2627
+ # source connector.
2628
+ # @return [Types::SourceConnectorProperties]
2629
+ #
2630
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/SourceFlowConfig AWS API Documentation
2631
+ #
2632
+ class SourceFlowConfig < Struct.new(
2633
+ :connector_profile_name,
2634
+ :connector_type,
2635
+ :incremental_pull_config,
2636
+ :source_connector_properties)
2637
+ SENSITIVE = []
2638
+ include Aws::Structure
2639
+ end
2640
+
2087
2641
  # @note When making an API call, you may pass TagResourceRequest
2088
2642
  # data as a hash:
2089
2643
  #
@@ -2116,6 +2670,63 @@ module Aws::CustomerProfiles
2116
2670
  #
2117
2671
  class TagResourceResponse < Aws::EmptyStructure; end
2118
2672
 
2673
+ # A class for modeling different type of tasks. Task implementation
2674
+ # varies based on the TaskType.
2675
+ #
2676
+ # @note When making an API call, you may pass Task
2677
+ # data as a hash:
2678
+ #
2679
+ # {
2680
+ # connector_operator: {
2681
+ # marketo: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
2682
+ # s3: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
2683
+ # salesforce: "PROJECTION", # accepts PROJECTION, LESS_THAN, CONTAINS, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
2684
+ # service_now: "PROJECTION", # accepts PROJECTION, CONTAINS, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, EQUAL_TO, NOT_EQUAL_TO, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
2685
+ # zendesk: "PROJECTION", # accepts PROJECTION, GREATER_THAN, ADDITION, MULTIPLICATION, DIVISION, SUBTRACTION, MASK_ALL, MASK_FIRST_N, MASK_LAST_N, VALIDATE_NON_NULL, VALIDATE_NON_ZERO, VALIDATE_NON_NEGATIVE, VALIDATE_NUMERIC, NO_OP
2686
+ # },
2687
+ # destination_field: "DestinationField",
2688
+ # source_fields: ["stringTo2048"], # required
2689
+ # task_properties: {
2690
+ # "VALUE" => "Property",
2691
+ # },
2692
+ # task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Mask, Merge, Truncate, Validate
2693
+ # }
2694
+ #
2695
+ # @!attribute [rw] connector_operator
2696
+ # The operation to be performed on the provided source fields.
2697
+ # @return [Types::ConnectorOperator]
2698
+ #
2699
+ # @!attribute [rw] destination_field
2700
+ # A field in a destination connector, or a field value against which
2701
+ # Amazon AppFlow validates a source field.
2702
+ # @return [String]
2703
+ #
2704
+ # @!attribute [rw] source_fields
2705
+ # The source fields to which a particular task is applied.
2706
+ # @return [Array<String>]
2707
+ #
2708
+ # @!attribute [rw] task_properties
2709
+ # A map used to store task-related information. The service looks for
2710
+ # particular information based on the TaskType.
2711
+ # @return [Hash<String,String>]
2712
+ #
2713
+ # @!attribute [rw] task_type
2714
+ # Specifies the particular task implementation that Amazon AppFlow
2715
+ # performs.
2716
+ # @return [String]
2717
+ #
2718
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/Task AWS API Documentation
2719
+ #
2720
+ class Task < Struct.new(
2721
+ :connector_operator,
2722
+ :destination_field,
2723
+ :source_fields,
2724
+ :task_properties,
2725
+ :task_type)
2726
+ SENSITIVE = []
2727
+ include Aws::Structure
2728
+ end
2729
+
2119
2730
  # You exceeded the maximum number of requests.
2120
2731
  #
2121
2732
  # @!attribute [rw] message
@@ -2129,6 +2740,79 @@ module Aws::CustomerProfiles
2129
2740
  include Aws::Structure
2130
2741
  end
2131
2742
 
2743
+ # The trigger settings that determine how and when Amazon AppFlow runs
2744
+ # the specified flow.
2745
+ #
2746
+ # @note When making an API call, you may pass TriggerConfig
2747
+ # data as a hash:
2748
+ #
2749
+ # {
2750
+ # trigger_type: "Scheduled", # required, accepts Scheduled, Event, OnDemand
2751
+ # trigger_properties: {
2752
+ # scheduled: {
2753
+ # schedule_expression: "ScheduleExpression", # required
2754
+ # data_pull_mode: "Incremental", # accepts Incremental, Complete
2755
+ # schedule_start_time: Time.now,
2756
+ # schedule_end_time: Time.now,
2757
+ # timezone: "Timezone",
2758
+ # schedule_offset: 1,
2759
+ # first_execution_from: Time.now,
2760
+ # },
2761
+ # },
2762
+ # }
2763
+ #
2764
+ # @!attribute [rw] trigger_type
2765
+ # Specifies the type of flow trigger. It can be OnDemand, Scheduled,
2766
+ # or Event.
2767
+ # @return [String]
2768
+ #
2769
+ # @!attribute [rw] trigger_properties
2770
+ # Specifies the configuration details of a schedule-triggered flow
2771
+ # that you define. Currently, these settings only apply to the
2772
+ # Scheduled trigger type.
2773
+ # @return [Types::TriggerProperties]
2774
+ #
2775
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/TriggerConfig AWS API Documentation
2776
+ #
2777
+ class TriggerConfig < Struct.new(
2778
+ :trigger_type,
2779
+ :trigger_properties)
2780
+ SENSITIVE = []
2781
+ include Aws::Structure
2782
+ end
2783
+
2784
+ # Specifies the configuration details that control the trigger for a
2785
+ # flow. Currently, these settings only apply to the Scheduled trigger
2786
+ # type.
2787
+ #
2788
+ # @note When making an API call, you may pass TriggerProperties
2789
+ # data as a hash:
2790
+ #
2791
+ # {
2792
+ # scheduled: {
2793
+ # schedule_expression: "ScheduleExpression", # required
2794
+ # data_pull_mode: "Incremental", # accepts Incremental, Complete
2795
+ # schedule_start_time: Time.now,
2796
+ # schedule_end_time: Time.now,
2797
+ # timezone: "Timezone",
2798
+ # schedule_offset: 1,
2799
+ # first_execution_from: Time.now,
2800
+ # },
2801
+ # }
2802
+ #
2803
+ # @!attribute [rw] scheduled
2804
+ # Specifies the configuration details of a schedule-triggered flow
2805
+ # that you define.
2806
+ # @return [Types::ScheduledTriggerProperties]
2807
+ #
2808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/TriggerProperties AWS API Documentation
2809
+ #
2810
+ class TriggerProperties < Struct.new(
2811
+ :scheduled)
2812
+ SENSITIVE = []
2813
+ include Aws::Structure
2814
+ end
2815
+
2132
2816
  # @note When making an API call, you may pass UntagResourceRequest
2133
2817
  # data as a hash:
2134
2818
  #
@@ -2547,5 +3231,26 @@ module Aws::CustomerProfiles
2547
3231
  include Aws::Structure
2548
3232
  end
2549
3233
 
3234
+ # The properties that are applied when using Zendesk as a flow source.
3235
+ #
3236
+ # @note When making an API call, you may pass ZendeskSourceProperties
3237
+ # data as a hash:
3238
+ #
3239
+ # {
3240
+ # object: "Object", # required
3241
+ # }
3242
+ #
3243
+ # @!attribute [rw] object
3244
+ # The object specified in the Zendesk flow source.
3245
+ # @return [String]
3246
+ #
3247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/customer-profiles-2020-08-15/ZendeskSourceProperties AWS API Documentation
3248
+ #
3249
+ class ZendeskSourceProperties < Struct.new(
3250
+ :object)
3251
+ SENSITIVE = []
3252
+ include Aws::Structure
3253
+ end
3254
+
2550
3255
  end
2551
3256
  end