Class: Aws::Appflow::Types::UpdateFlowRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb

Overview

Note:

When making an API call, you may pass UpdateFlowRequest data as a hash:

{
  flow_name: "FlowName", # required
  description: "FlowDescription",
  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,
      },
    },
  },
  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
    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",
      },
      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",
      },
    },
    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
      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
            },
          },
        },
        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
        },
        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
        },
      },
    },
  ],
  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
      },
      destination_field: "DestinationField",
      task_type: "Arithmetic", # required, accepts Arithmetic, Filter, Map, Map_all, Mask, Merge, Truncate, Validate
      task_properties: {
        "VALUE" => "Property",
      },
    },
  ],
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#descriptionString

A description of the flow.

Returns:

  • (String)


5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 5755

class UpdateFlowRequest < Struct.new(
  :flow_name,
  :description,
  :trigger_config,
  :source_flow_config,
  :destination_flow_config_list,
  :tasks)
  SENSITIVE = []
  include Aws::Structure
end

#destination_flow_config_listArray<Types::DestinationFlowConfig>

The configuration that controls how Amazon AppFlow transfers data to the destination connector.

Returns:



5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 5755

class UpdateFlowRequest < Struct.new(
  :flow_name,
  :description,
  :trigger_config,
  :source_flow_config,
  :destination_flow_config_list,
  :tasks)
  SENSITIVE = []
  include Aws::Structure
end

#flow_nameString

The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.

Returns:

  • (String)


5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 5755

class UpdateFlowRequest < Struct.new(
  :flow_name,
  :description,
  :trigger_config,
  :source_flow_config,
  :destination_flow_config_list,
  :tasks)
  SENSITIVE = []
  include Aws::Structure
end

#source_flow_configTypes::SourceFlowConfig

Contains information about the configuration of the source connector used in the flow.



5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 5755

class UpdateFlowRequest < Struct.new(
  :flow_name,
  :description,
  :trigger_config,
  :source_flow_config,
  :destination_flow_config_list,
  :tasks)
  SENSITIVE = []
  include Aws::Structure
end

#tasksArray<Types::Task>

A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.

Returns:



5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 5755

class UpdateFlowRequest < Struct.new(
  :flow_name,
  :description,
  :trigger_config,
  :source_flow_config,
  :destination_flow_config_list,
  :tasks)
  SENSITIVE = []
  include Aws::Structure
end

#trigger_configTypes::TriggerConfig

The trigger settings that determine how and when the flow runs.



5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
# File 'gems/aws-sdk-appflow/lib/aws-sdk-appflow/types.rb', line 5755

class UpdateFlowRequest < Struct.new(
  :flow_name,
  :description,
  :trigger_config,
  :source_flow_config,
  :destination_flow_config_list,
  :tasks)
  SENSITIVE = []
  include Aws::Structure
end