Class: Aws::Appflow::Types::CreateFlowRequest
- Inherits:
-
Struct
- Object
- Struct
- Aws::Appflow::Types::CreateFlowRequest
- Defined in:
- gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb
Overview
When making an API call, you may pass CreateFlowRequest data as a hash:
{
flow_name: "FlowName", # required
description: "FlowDescription",
kms_arn: "KMSArn",
trigger_config: { # required
trigger_type: "Scheduled", # required, accepts Scheduled, Event, OnDemand
trigger_properties: {
scheduled: {
schedule_expression: "ScheduleExpression", # required
data_pull_mode: "Incremental", # accepts Incremental, Complete
schedule_start_time: Time.now,
schedule_end_time: Time.now,
timezone: "Timezone",
schedule_offset: 1,
first_execution_from: Time.now,
flow_error_deactivation_threshold: 1,
},
},
},
source_flow_config: { # required
connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector
api_version: "ApiVersion",
connector_profile_name: "ConnectorProfileName",
source_connector_properties: { # required
amplitude: {
object: "Object", # required
},
datadog: {
object: "Object", # required
},
dynatrace: {
object: "Object", # required
},
google_analytics: {
object: "Object", # required
},
infor_nexus: {
object: "Object", # required
},
marketo: {
object: "Object", # required
},
s3: {
bucket_name: "BucketName", # required
bucket_prefix: "BucketPrefix",
s3_input_format_config: {
s3_input_file_type: "CSV", # accepts CSV, JSON
},
},
salesforce: {
object: "Object", # required
enable_dynamic_field_update: false,
include_deleted_records: false,
},
service_now: {
object: "Object", # required
},
singular: {
object: "Object", # required
},
slack: {
object: "Object", # required
},
trendmicro: {
object: "Object", # required
},
veeva: {
object: "Object", # required
document_type: "DocumentType",
include_source_files: false,
include_renditions: false,
include_all_versions: false,
},
zendesk: {
object: "Object", # required
},
sapo_data: {
object_path: "Object",
},
custom_connector: {
entity_name: "EntityName", # required
custom_properties: {
"CustomPropertyKey" => "CustomPropertyValue",
},
},
},
incremental_pull_config: {
datetime_type_field_name: "DatetimeTypeFieldName",
},
},
destination_flow_config_list: [ # required
{
connector_type: "Salesforce", # required, accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector
api_version: "ApiVersion",
connector_profile_name: "ConnectorProfileName",
destination_connector_properties: { # required
redshift: {
object: "Object", # required
intermediate_bucket_name: "BucketName", # required
bucket_prefix: "BucketPrefix",
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
},
s3: {
bucket_name: "BucketName", # required
bucket_prefix: "BucketPrefix",
s3_output_format_config: {
file_type: "CSV", # accepts CSV, JSON, PARQUET
prefix_config: {
prefix_type: "FILENAME", # accepts FILENAME, PATH, PATH_AND_FILENAME
prefix_format: "YEAR", # accepts YEAR, MONTH, DAY, HOUR, MINUTE
},
aggregation_config: {
aggregation_type: "None", # accepts None, SingleFile
},
preserve_source_data_typing: false,
},
},
salesforce: {
object: "Object", # required
id_field_names: ["Name"],
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
},
snowflake: {
object: "Object", # required
intermediate_bucket_name: "BucketName", # required
bucket_prefix: "BucketPrefix",
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
},
event_bridge: {
object: "Object", # required
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
},
lookout_metrics: {
},
upsolver: {
bucket_name: "UpsolverBucketName", # required
bucket_prefix: "BucketPrefix",
s3_output_format_config: { # required
file_type: "CSV", # accepts CSV, JSON, PARQUET
prefix_config: { # required
prefix_type: "FILENAME", # accepts FILENAME, PATH, PATH_AND_FILENAME
prefix_format: "YEAR", # accepts YEAR, MONTH, DAY, HOUR, MINUTE
},
aggregation_config: {
aggregation_type: "None", # accepts None, SingleFile
},
},
},
honeycode: {
object: "Object", # required
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
},
customer_profiles: {
domain_name: "DomainName", # required
object_type_name: "ObjectTypeName",
},
zendesk: {
object: "Object", # required
id_field_names: ["Name"],
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
},
marketo: {
object: "Object", # required
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
},
custom_connector: {
entity_name: "EntityName", # required
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
id_field_names: ["Name"],
custom_properties: {
"CustomPropertyKey" => "CustomPropertyValue",
},
},
sapo_data: {
object_path: "Object", # required
success_response_handling_config: {
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
id_field_names: ["Name"],
error_handling_config: {
fail_on_first_destination_error: false,
bucket_prefix: "BucketPrefix",
bucket_name: "BucketName",
},
write_operation_type: "INSERT", # accepts INSERT, UPSERT, UPDATE, DELETE
},
},
},
],
tasks: [ # required
{
source_fields: ["String"], # required
connector_operator: {
amplitude: "BETWEEN", # accepts BETWEEN
datadog: "PROJECTION", # accepts PROJECTION, BETWEEN, 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
dynatrace: "PROJECTION", # accepts PROJECTION, BETWEEN, 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
google_analytics: "PROJECTION", # accepts PROJECTION, BETWEEN
infor_nexus: "PROJECTION", # accepts PROJECTION, BETWEEN, 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
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
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
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
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
singular: "PROJECTION", # accepts PROJECTION, 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
slack: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, BETWEEN, LESS_THAN_OR_EQUAL_TO, GREATER_THAN_OR_EQUAL_TO, 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
trendmicro: "PROJECTION", # accepts PROJECTION, 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
veeva: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, CONTAINS, 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
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
sapo_data: "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
custom_connector: "PROJECTION", # accepts PROJECTION, LESS_THAN, GREATER_THAN, CONTAINS, 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
},
destination_field: "DestinationField",
task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Map_all, Mask, Merge, Passthrough, Truncate, Validate
task_properties: {
"VALUE" => "Property",
},
},
],
tags: {
"TagKey" => "TagValue",
},
}
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#description ⇒ String
A description of the flow you want to create.
-
#destination_flow_config_list ⇒ Array<Types::DestinationFlowConfig>
The configuration that controls how Amazon AppFlow places data in the destination connector.
-
#flow_name ⇒ String
The specified name of the flow.
-
#kms_arn ⇒ String
The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption.
-
#source_flow_config ⇒ Types::SourceFlowConfig
The configuration that controls how Amazon AppFlow retrieves data from the source connector.
-
#tags ⇒ Hash<String,String>
The tags used to organize, track, or control access for your flow.
-
#tasks ⇒ Array<Types::Task>
A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.
-
#trigger_config ⇒ Types::TriggerConfig
The trigger settings that determine how and when the flow runs.
Instance Attribute Details
#description ⇒ String
A description of the flow you want to create.
2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 |
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 2270 class CreateFlowRequest < Struct.new( :flow_name, :description, :kms_arn, :trigger_config, :source_flow_config, :destination_flow_config_list, :tasks, :tags) SENSITIVE = [] include Aws::Structure end |
#destination_flow_config_list ⇒ Array<Types::DestinationFlowConfig>
The configuration that controls how Amazon AppFlow places data in the destination connector.
2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 |
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 2270 class CreateFlowRequest < Struct.new( :flow_name, :description, :kms_arn, :trigger_config, :source_flow_config, :destination_flow_config_list, :tasks, :tags) SENSITIVE = [] include Aws::Structure end |
#flow_name ⇒ String
The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 |
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 2270 class CreateFlowRequest < Struct.new( :flow_name, :description, :kms_arn, :trigger_config, :source_flow_config, :destination_flow_config_list, :tasks, :tags) SENSITIVE = [] include Aws::Structure end |
#kms_arn ⇒ String
The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption. This is required if you do not want to use the Amazon AppFlow-managed KMS key. If you don't provide anything here, Amazon AppFlow uses the Amazon AppFlow-managed KMS key.
2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 |
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 2270 class CreateFlowRequest < Struct.new( :flow_name, :description, :kms_arn, :trigger_config, :source_flow_config, :destination_flow_config_list, :tasks, :tags) SENSITIVE = [] include Aws::Structure end |
#source_flow_config ⇒ Types::SourceFlowConfig
The configuration that controls how Amazon AppFlow retrieves data from the source connector.
2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 |
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 2270 class CreateFlowRequest < Struct.new( :flow_name, :description, :kms_arn, :trigger_config, :source_flow_config, :destination_flow_config_list, :tasks, :tags) SENSITIVE = [] include Aws::Structure end |
#tags ⇒ Hash<String,String>
The tags used to organize, track, or control access for your flow.
2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 |
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 2270 class CreateFlowRequest < Struct.new( :flow_name, :description, :kms_arn, :trigger_config, :source_flow_config, :destination_flow_config_list, :tasks, :tags) SENSITIVE = [] include Aws::Structure end |
#tasks ⇒ Array<Types::Task>
A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.
2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 |
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 2270 class CreateFlowRequest < Struct.new( :flow_name, :description, :kms_arn, :trigger_config, :source_flow_config, :destination_flow_config_list, :tasks, :tags) SENSITIVE = [] include Aws::Structure end |
#trigger_config ⇒ Types::TriggerConfig
The trigger settings that determine how and when the flow runs.
2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 |
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 2270 class CreateFlowRequest < Struct.new( :flow_name, :description, :kms_arn, :trigger_config, :source_flow_config, :destination_flow_config_list, :tasks, :tags) SENSITIVE = [] include Aws::Structure end |