Amazon Appflow

2021/02/04 - Amazon Appflow - 4 updated api methods

Changes  Adding schedule offset as an input for scheduled flows in CreateFlow API. Also, adding data pull start time and data pull end time for DescribeFlowExecutionRecords API response.

CreateFlow (updated) Link ¶
Changes (request)
{'triggerConfig': {'triggerProperties': {'Scheduled': {'scheduleOffset': 'long'}}}}

Enables your application to create a new flow using Amazon AppFlow. You must create a connector profile before calling this API. Please note that the Request Syntax below shows syntax for multiple destinations, however, you can only transfer data to one item in this list at a time. Amazon AppFlow does not currently support flows to multiple destinations at once.

See also: AWS API Documentation

Request Syntax

client.create_flow(
    flowName='string',
    description='string',
    kmsArn='string',
    triggerConfig={
        'triggerType': 'Scheduled'|'Event'|'OnDemand',
        'triggerProperties': {
            'Scheduled': {
                'scheduleExpression': 'string',
                'dataPullMode': 'Incremental'|'Complete',
                'scheduleStartTime': datetime(2015, 1, 1),
                'scheduleEndTime': datetime(2015, 1, 1),
                'timezone': 'string',
                'scheduleOffset': 123
            }
        }
    },
    sourceFlowConfig={
        'connectorType': 'Salesforce'|'Singular'|'Slack'|'Redshift'|'S3'|'Marketo'|'Googleanalytics'|'Zendesk'|'Servicenow'|'Datadog'|'Trendmicro'|'Snowflake'|'Dynatrace'|'Infornexus'|'Amplitude'|'Veeva'|'EventBridge'|'Upsolver',
        'connectorProfileName': 'string',
        'sourceConnectorProperties': {
            'Amplitude': {
                'object': 'string'
            },
            'Datadog': {
                'object': 'string'
            },
            'Dynatrace': {
                'object': 'string'
            },
            'GoogleAnalytics': {
                'object': 'string'
            },
            'InforNexus': {
                'object': 'string'
            },
            'Marketo': {
                'object': 'string'
            },
            'S3': {
                'bucketName': 'string',
                'bucketPrefix': 'string'
            },
            'Salesforce': {
                'object': 'string',
                'enableDynamicFieldUpdate': True|False,
                'includeDeletedRecords': True|False
            },
            'ServiceNow': {
                'object': 'string'
            },
            'Singular': {
                'object': 'string'
            },
            'Slack': {
                'object': 'string'
            },
            'Trendmicro': {
                'object': 'string'
            },
            'Veeva': {
                'object': 'string'
            },
            'Zendesk': {
                'object': 'string'
            }
        },
        'incrementalPullConfig': {
            'datetimeTypeFieldName': 'string'
        }
    },
    destinationFlowConfigList=[
        {
            'connectorType': 'Salesforce'|'Singular'|'Slack'|'Redshift'|'S3'|'Marketo'|'Googleanalytics'|'Zendesk'|'Servicenow'|'Datadog'|'Trendmicro'|'Snowflake'|'Dynatrace'|'Infornexus'|'Amplitude'|'Veeva'|'EventBridge'|'Upsolver',
            'connectorProfileName': 'string',
            'destinationConnectorProperties': {
                'Redshift': {
                    'object': 'string',
                    'intermediateBucketName': 'string',
                    'bucketPrefix': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'S3': {
                    'bucketName': 'string',
                    'bucketPrefix': 'string',
                    's3OutputFormatConfig': {
                        'fileType': 'CSV'|'JSON'|'PARQUET',
                        'prefixConfig': {
                            'prefixType': 'FILENAME'|'PATH'|'PATH_AND_FILENAME',
                            'prefixFormat': 'YEAR'|'MONTH'|'DAY'|'HOUR'|'MINUTE'
                        },
                        'aggregationConfig': {
                            'aggregationType': 'None'|'SingleFile'
                        }
                    }
                },
                'Salesforce': {
                    'object': 'string',
                    'idFieldNames': [
                        'string',
                    ],
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    },
                    'writeOperationType': 'INSERT'|'UPSERT'|'UPDATE'
                },
                'Snowflake': {
                    'object': 'string',
                    'intermediateBucketName': 'string',
                    'bucketPrefix': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'EventBridge': {
                    'object': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'Upsolver': {
                    'bucketName': 'string',
                    'bucketPrefix': 'string',
                    's3OutputFormatConfig': {
                        'fileType': 'CSV'|'JSON'|'PARQUET',
                        'prefixConfig': {
                            'prefixType': 'FILENAME'|'PATH'|'PATH_AND_FILENAME',
                            'prefixFormat': 'YEAR'|'MONTH'|'DAY'|'HOUR'|'MINUTE'
                        },
                        'aggregationConfig': {
                            'aggregationType': 'None'|'SingleFile'
                        }
                    }
                }
            }
        },
    ],
    tasks=[
        {
            'sourceFields': [
                'string',
            ],
            'connectorOperator': {
                'Amplitude': 'BETWEEN',
                'Datadog': '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'|'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',
                'GoogleAnalytics': 'PROJECTION'|'BETWEEN',
                'InforNexus': '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'|'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'|'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'|'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',
                'ServiceNow': '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'|'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'|'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'|'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'|'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'|'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'
            },
            'destinationField': 'string',
            'taskType': 'Arithmetic'|'Filter'|'Map'|'Mask'|'Merge'|'Truncate'|'Validate',
            'taskProperties': {
                'string': 'string'
            }
        },
    ],
    tags={
        'string': 'string'
    }
)
type flowName

string

param flowName

[REQUIRED]

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

type description

string

param description

A description of the flow you want to create.

type kmsArn

string

param kmsArn

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.

type triggerConfig

dict

param triggerConfig

[REQUIRED]

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

  • triggerType (string) -- [REQUIRED]

    Specifies the type of flow trigger. This can be OnDemand , Scheduled , or Event .

  • triggerProperties (dict) --

    Specifies the configuration details of a schedule-triggered flow as defined by the user. Currently, these settings only apply to the Scheduled trigger type.

    • Scheduled (dict) --

      Specifies the configuration details of a schedule-triggered flow as defined by the user.

      • scheduleExpression (string) -- [REQUIRED]

        The scheduling expression that determines the rate at which the schedule will run, for example rate(5minutes) .

      • dataPullMode (string) --

        Specifies whether a scheduled flow has an incremental data transfer or a complete data transfer for each flow run.

      • scheduleStartTime (datetime) --

        Specifies the scheduled start time for a schedule-triggered flow.

      • scheduleEndTime (datetime) --

        Specifies the scheduled end time for a schedule-triggered flow.

      • timezone (string) --

        Specifies the time zone used when referring to the date and time of a scheduled-triggered flow, such as America/New_York .

      • scheduleOffset (integer) --

        Specifies the optional offset that is added to the time interval for a schedule-triggered flow.

type sourceFlowConfig

dict

param sourceFlowConfig

[REQUIRED]

The configuration that controls how Amazon AppFlow retrieves data from the source connector.

  • connectorType (string) -- [REQUIRED]

    The type of connector, such as Salesforce, Amplitude, and so on.

  • connectorProfileName (string) --

    The name of the connector profile. This name must be unique for each connector profile in the AWS account.

  • sourceConnectorProperties (dict) -- [REQUIRED]

    Specifies the information that is required to query a particular source connector.

    • Amplitude (dict) --

      Specifies the information that is required for querying Amplitude.

      • object (string) -- [REQUIRED]

        The object specified in the Amplitude flow source.

    • Datadog (dict) --

      Specifies the information that is required for querying Datadog.

      • object (string) -- [REQUIRED]

        The object specified in the Datadog flow source.

    • Dynatrace (dict) --

      Specifies the information that is required for querying Dynatrace.

      • object (string) -- [REQUIRED]

        The object specified in the Dynatrace flow source.

    • GoogleAnalytics (dict) --

      Specifies the information that is required for querying Google Analytics.

      • object (string) -- [REQUIRED]

        The object specified in the Google Analytics flow source.

    • InforNexus (dict) --

      Specifies the information that is required for querying Infor Nexus.

      • object (string) -- [REQUIRED]

        The object specified in the Infor Nexus flow source.

    • Marketo (dict) --

      Specifies the information that is required for querying Marketo.

      • object (string) -- [REQUIRED]

        The object specified in the Marketo flow source.

    • S3 (dict) --

      Specifies the information that is required for querying Amazon S3.

      • bucketName (string) -- [REQUIRED]

        The Amazon S3 bucket name where the source files are stored.

      • bucketPrefix (string) --

        The object key for the Amazon S3 bucket in which the source files are stored.

    • Salesforce (dict) --

      Specifies the information that is required for querying Salesforce.

      • object (string) -- [REQUIRED]

        The object specified in the Salesforce flow source.

      • enableDynamicFieldUpdate (boolean) --

        The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.

      • includeDeletedRecords (boolean) --

        Indicates whether Amazon AppFlow includes deleted files in the flow run.

    • ServiceNow (dict) --

      Specifies the information that is required for querying ServiceNow.

      • object (string) -- [REQUIRED]

        The object specified in the ServiceNow flow source.

    • Singular (dict) --

      Specifies the information that is required for querying Singular.

      • object (string) -- [REQUIRED]

        The object specified in the Singular flow source.

    • Slack (dict) --

      Specifies the information that is required for querying Slack.

      • object (string) -- [REQUIRED]

        The object specified in the Slack flow source.

    • Trendmicro (dict) --

      Specifies the information that is required for querying Trend Micro.

      • object (string) -- [REQUIRED]

        The object specified in the Trend Micro flow source.

    • Veeva (dict) --

      Specifies the information that is required for querying Veeva.

      • object (string) -- [REQUIRED]

        The object specified in the Veeva flow source.

    • Zendesk (dict) --

      Specifies the information that is required for querying Zendesk.

      • object (string) -- [REQUIRED]

        The object specified in the Zendesk flow source.

  • incrementalPullConfig (dict) --

    Defines the configuration for a scheduled incremental data pull. If a valid configuration is provided, the fields specified in the configuration are used when querying for the incremental data pull.

    • datetimeTypeFieldName (string) --

      A field that specifies the date time or timestamp field as the criteria to use when importing incremental records from the source.

type destinationFlowConfigList

list

param destinationFlowConfigList

[REQUIRED]

The configuration that controls how Amazon AppFlow places data in the destination connector.

  • (dict) --

    Contains information about the configuration of destination connectors present in the flow.

    • connectorType (string) -- [REQUIRED]

      The type of connector, such as Salesforce, Amplitude, and so on.

    • connectorProfileName (string) --

      The name of the connector profile. This name must be unique for each connector profile in the AWS account.

    • destinationConnectorProperties (dict) -- [REQUIRED]

      This stores the information that is required to query a particular connector.

      • Redshift (dict) --

        The properties required to query Amazon Redshift.

        • object (string) -- [REQUIRED]

          The object specified in the Amazon Redshift flow destination.

        • intermediateBucketName (string) -- [REQUIRED]

          The intermediate bucket that Amazon AppFlow uses when moving data into Amazon Redshift.

        • bucketPrefix (string) --

          The object key for the bucket in which Amazon AppFlow places the destination files.

        • errorHandlingConfig (dict) --

          The settings that determine how Amazon AppFlow handles an error when placing data in the Amazon Redshift destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

          • failOnFirstDestinationError (boolean) --

            Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

          • bucketPrefix (string) --

            Specifies the Amazon S3 bucket prefix.

          • bucketName (string) --

            Specifies the name of the Amazon S3 bucket.

      • S3 (dict) --

        The properties required to query Amazon S3.

        • bucketName (string) -- [REQUIRED]

          The Amazon S3 bucket name in which Amazon AppFlow places the transferred data.

        • bucketPrefix (string) --

          The object key for the destination bucket in which Amazon AppFlow places the files.

        • s3OutputFormatConfig (dict) --

          The configuration that determines how Amazon AppFlow should format the flow output data when Amazon S3 is used as the destination.

          • fileType (string) --

            Indicates the file type that Amazon AppFlow places in the Amazon S3 bucket.

          • prefixConfig (dict) --

            Determines the prefix that Amazon AppFlow applies to the folder name in the Amazon S3 bucket. You can name folders according to the flow frequency and date.

            • prefixType (string) --

              Determines the level of granularity that's included in the prefix.

            • prefixFormat (string) --

              Determines the format of the prefix, and whether it applies to the file name, file path, or both.

          • aggregationConfig (dict) --

            The aggregation settings that you can use to customize the output format of your flow data.

            • aggregationType (string) --

              Specifies whether Amazon AppFlow aggregates the flow records into a single file, or leave them unaggregated.

      • Salesforce (dict) --

        The properties required to query Salesforce.

        • object (string) -- [REQUIRED]

          The object specified in the Salesforce flow destination.

        • idFieldNames (list) --

          The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update or delete.

          • (string) --

        • errorHandlingConfig (dict) --

          The settings that determine how Amazon AppFlow handles an error when placing data in the Salesforce destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

          • failOnFirstDestinationError (boolean) --

            Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

          • bucketPrefix (string) --

            Specifies the Amazon S3 bucket prefix.

          • bucketName (string) --

            Specifies the name of the Amazon S3 bucket.

        • writeOperationType (string) --

          This specifies the type of write operation to be performed in Salesforce. When the value is UPSERT , then idFieldNames is required.

      • Snowflake (dict) --

        The properties required to query Snowflake.

        • object (string) -- [REQUIRED]

          The object specified in the Snowflake flow destination.

        • intermediateBucketName (string) -- [REQUIRED]

          The intermediate bucket that Amazon AppFlow uses when moving data into Snowflake.

        • bucketPrefix (string) --

          The object key for the destination bucket in which Amazon AppFlow places the files.

        • errorHandlingConfig (dict) --

          The settings that determine how Amazon AppFlow handles an error when placing data in the Snowflake destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

          • failOnFirstDestinationError (boolean) --

            Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

          • bucketPrefix (string) --

            Specifies the Amazon S3 bucket prefix.

          • bucketName (string) --

            Specifies the name of the Amazon S3 bucket.

      • EventBridge (dict) --

        The properties required to query Amazon EventBridge.

        • object (string) -- [REQUIRED]

          The object specified in the Amazon EventBridge flow destination.

        • errorHandlingConfig (dict) --

          The settings that determine how Amazon AppFlow handles an error when placing data in the destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

          • failOnFirstDestinationError (boolean) --

            Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

          • bucketPrefix (string) --

            Specifies the Amazon S3 bucket prefix.

          • bucketName (string) --

            Specifies the name of the Amazon S3 bucket.

      • Upsolver (dict) --

        The properties required to query Upsolver.

        • bucketName (string) -- [REQUIRED]

          The Upsolver Amazon S3 bucket name in which Amazon AppFlow places the transferred data.

        • bucketPrefix (string) --

          The object key for the destination Upsolver Amazon S3 bucket in which Amazon AppFlow places the files.

        • s3OutputFormatConfig (dict) -- [REQUIRED]

          The configuration that determines how data is formatted when Upsolver is used as the flow destination.

          • fileType (string) --

            Indicates the file type that Amazon AppFlow places in the Upsolver Amazon S3 bucket.

          • prefixConfig (dict) -- [REQUIRED]

            Determines the prefix that Amazon AppFlow applies to the destination folder name. You can name your destination folders according to the flow frequency and date.

            • prefixType (string) --

              Determines the level of granularity that's included in the prefix.

            • prefixFormat (string) --

              Determines the format of the prefix, and whether it applies to the file name, file path, or both.

          • aggregationConfig (dict) --

            The aggregation settings that you can use to customize the output format of your flow data.

            • aggregationType (string) --

              Specifies whether Amazon AppFlow aggregates the flow records into a single file, or leave them unaggregated.

type tasks

list

param tasks

[REQUIRED]

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

  • (dict) --

    A class for modeling different type of tasks. Task implementation varies based on the TaskType .

    • sourceFields (list) -- [REQUIRED]

      The source fields to which a particular task is applied.

      • (string) --

    • connectorOperator (dict) --

      The operation to be performed on the provided source fields.

      • Amplitude (string) --

        The operation to be performed on the provided Amplitude source fields.

      • Datadog (string) --

        The operation to be performed on the provided Datadog source fields.

      • Dynatrace (string) --

        The operation to be performed on the provided Dynatrace source fields.

      • GoogleAnalytics (string) --

        The operation to be performed on the provided Google Analytics source fields.

      • InforNexus (string) --

        The operation to be performed on the provided Infor Nexus source fields.

      • Marketo (string) --

        The operation to be performed on the provided Marketo source fields.

      • S3 (string) --

        The operation to be performed on the provided Amazon S3 source fields.

      • Salesforce (string) --

        The operation to be performed on the provided Salesforce source fields.

      • ServiceNow (string) --

        The operation to be performed on the provided ServiceNow source fields.

      • Singular (string) --

        The operation to be performed on the provided Singular source fields.

      • Slack (string) --

        The operation to be performed on the provided Slack source fields.

      • Trendmicro (string) --

        The operation to be performed on the provided Trend Micro source fields.

      • Veeva (string) --

        The operation to be performed on the provided Veeva source fields.

      • Zendesk (string) --

        The operation to be performed on the provided Zendesk source fields.

    • destinationField (string) --

      A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.

    • taskType (string) -- [REQUIRED]

      Specifies the particular task implementation that Amazon AppFlow performs.

    • taskProperties (dict) --

      A map used to store task-related information. The execution service looks for particular information based on the TaskType .

      • (string) --

        • (string) --

type tags

dict

param tags

The tags used to organize, track, or control access for your flow.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'flowArn': 'string',
    'flowStatus': 'Active'|'Deprecated'|'Deleted'|'Draft'|'Errored'|'Suspended'
}

Response Structure

  • (dict) --

    • flowArn (string) --

      The flow's Amazon Resource Name (ARN).

    • flowStatus (string) --

      Indicates the current status of the flow.

DescribeFlow (updated) Link ¶
Changes (response)
{'triggerConfig': {'triggerProperties': {'Scheduled': {'scheduleOffset': 'long'}}}}

Provides a description of the specified flow.

See also: AWS API Documentation

Request Syntax

client.describe_flow(
    flowName='string'
)
type flowName

string

param flowName

[REQUIRED]

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

rtype

dict

returns

Response Syntax

{
    'flowArn': 'string',
    'description': 'string',
    'flowName': 'string',
    'kmsArn': 'string',
    'flowStatus': 'Active'|'Deprecated'|'Deleted'|'Draft'|'Errored'|'Suspended',
    'flowStatusMessage': 'string',
    'sourceFlowConfig': {
        'connectorType': 'Salesforce'|'Singular'|'Slack'|'Redshift'|'S3'|'Marketo'|'Googleanalytics'|'Zendesk'|'Servicenow'|'Datadog'|'Trendmicro'|'Snowflake'|'Dynatrace'|'Infornexus'|'Amplitude'|'Veeva'|'EventBridge'|'Upsolver',
        'connectorProfileName': 'string',
        'sourceConnectorProperties': {
            'Amplitude': {
                'object': 'string'
            },
            'Datadog': {
                'object': 'string'
            },
            'Dynatrace': {
                'object': 'string'
            },
            'GoogleAnalytics': {
                'object': 'string'
            },
            'InforNexus': {
                'object': 'string'
            },
            'Marketo': {
                'object': 'string'
            },
            'S3': {
                'bucketName': 'string',
                'bucketPrefix': 'string'
            },
            'Salesforce': {
                'object': 'string',
                'enableDynamicFieldUpdate': True|False,
                'includeDeletedRecords': True|False
            },
            'ServiceNow': {
                'object': 'string'
            },
            'Singular': {
                'object': 'string'
            },
            'Slack': {
                'object': 'string'
            },
            'Trendmicro': {
                'object': 'string'
            },
            'Veeva': {
                'object': 'string'
            },
            'Zendesk': {
                'object': 'string'
            }
        },
        'incrementalPullConfig': {
            'datetimeTypeFieldName': 'string'
        }
    },
    'destinationFlowConfigList': [
        {
            'connectorType': 'Salesforce'|'Singular'|'Slack'|'Redshift'|'S3'|'Marketo'|'Googleanalytics'|'Zendesk'|'Servicenow'|'Datadog'|'Trendmicro'|'Snowflake'|'Dynatrace'|'Infornexus'|'Amplitude'|'Veeva'|'EventBridge'|'Upsolver',
            'connectorProfileName': 'string',
            'destinationConnectorProperties': {
                'Redshift': {
                    'object': 'string',
                    'intermediateBucketName': 'string',
                    'bucketPrefix': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'S3': {
                    'bucketName': 'string',
                    'bucketPrefix': 'string',
                    's3OutputFormatConfig': {
                        'fileType': 'CSV'|'JSON'|'PARQUET',
                        'prefixConfig': {
                            'prefixType': 'FILENAME'|'PATH'|'PATH_AND_FILENAME',
                            'prefixFormat': 'YEAR'|'MONTH'|'DAY'|'HOUR'|'MINUTE'
                        },
                        'aggregationConfig': {
                            'aggregationType': 'None'|'SingleFile'
                        }
                    }
                },
                'Salesforce': {
                    'object': 'string',
                    'idFieldNames': [
                        'string',
                    ],
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    },
                    'writeOperationType': 'INSERT'|'UPSERT'|'UPDATE'
                },
                'Snowflake': {
                    'object': 'string',
                    'intermediateBucketName': 'string',
                    'bucketPrefix': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'EventBridge': {
                    'object': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'Upsolver': {
                    'bucketName': 'string',
                    'bucketPrefix': 'string',
                    's3OutputFormatConfig': {
                        'fileType': 'CSV'|'JSON'|'PARQUET',
                        'prefixConfig': {
                            'prefixType': 'FILENAME'|'PATH'|'PATH_AND_FILENAME',
                            'prefixFormat': 'YEAR'|'MONTH'|'DAY'|'HOUR'|'MINUTE'
                        },
                        'aggregationConfig': {
                            'aggregationType': 'None'|'SingleFile'
                        }
                    }
                }
            }
        },
    ],
    'lastRunExecutionDetails': {
        'mostRecentExecutionMessage': 'string',
        'mostRecentExecutionTime': datetime(2015, 1, 1),
        'mostRecentExecutionStatus': 'InProgress'|'Successful'|'Error'
    },
    'triggerConfig': {
        'triggerType': 'Scheduled'|'Event'|'OnDemand',
        'triggerProperties': {
            'Scheduled': {
                'scheduleExpression': 'string',
                'dataPullMode': 'Incremental'|'Complete',
                'scheduleStartTime': datetime(2015, 1, 1),
                'scheduleEndTime': datetime(2015, 1, 1),
                'timezone': 'string',
                'scheduleOffset': 123
            }
        }
    },
    'tasks': [
        {
            'sourceFields': [
                'string',
            ],
            'connectorOperator': {
                'Amplitude': 'BETWEEN',
                'Datadog': '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'|'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',
                'GoogleAnalytics': 'PROJECTION'|'BETWEEN',
                'InforNexus': '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'|'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'|'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'|'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',
                'ServiceNow': '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'|'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'|'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'|'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'|'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'|'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'
            },
            'destinationField': 'string',
            'taskType': 'Arithmetic'|'Filter'|'Map'|'Mask'|'Merge'|'Truncate'|'Validate',
            'taskProperties': {
                'string': 'string'
            }
        },
    ],
    'createdAt': datetime(2015, 1, 1),
    'lastUpdatedAt': datetime(2015, 1, 1),
    'createdBy': 'string',
    'lastUpdatedBy': 'string',
    'tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • flowArn (string) --

      The flow's Amazon Resource Name (ARN).

    • description (string) --

      A description of the flow.

    • flowName (string) --

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

    • kmsArn (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.

    • flowStatus (string) --

      Indicates the current status of the flow.

    • flowStatusMessage (string) --

      Contains an error message if the flow status is in a suspended or error state. This applies only to scheduled or event-triggered flows.

    • sourceFlowConfig (dict) --

      The configuration that controls how Amazon AppFlow retrieves data from the source connector.

      • connectorType (string) --

        The type of connector, such as Salesforce, Amplitude, and so on.

      • connectorProfileName (string) --

        The name of the connector profile. This name must be unique for each connector profile in the AWS account.

      • sourceConnectorProperties (dict) --

        Specifies the information that is required to query a particular source connector.

        • Amplitude (dict) --

          Specifies the information that is required for querying Amplitude.

          • object (string) --

            The object specified in the Amplitude flow source.

        • Datadog (dict) --

          Specifies the information that is required for querying Datadog.

          • object (string) --

            The object specified in the Datadog flow source.

        • Dynatrace (dict) --

          Specifies the information that is required for querying Dynatrace.

          • object (string) --

            The object specified in the Dynatrace flow source.

        • GoogleAnalytics (dict) --

          Specifies the information that is required for querying Google Analytics.

          • object (string) --

            The object specified in the Google Analytics flow source.

        • InforNexus (dict) --

          Specifies the information that is required for querying Infor Nexus.

          • object (string) --

            The object specified in the Infor Nexus flow source.

        • Marketo (dict) --

          Specifies the information that is required for querying Marketo.

          • object (string) --

            The object specified in the Marketo flow source.

        • S3 (dict) --

          Specifies the information that is required for querying Amazon S3.

          • bucketName (string) --

            The Amazon S3 bucket name where the source files are stored.

          • bucketPrefix (string) --

            The object key for the Amazon S3 bucket in which the source files are stored.

        • Salesforce (dict) --

          Specifies the information that is required for querying Salesforce.

          • object (string) --

            The object specified in the Salesforce flow source.

          • enableDynamicFieldUpdate (boolean) --

            The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.

          • includeDeletedRecords (boolean) --

            Indicates whether Amazon AppFlow includes deleted files in the flow run.

        • ServiceNow (dict) --

          Specifies the information that is required for querying ServiceNow.

          • object (string) --

            The object specified in the ServiceNow flow source.

        • Singular (dict) --

          Specifies the information that is required for querying Singular.

          • object (string) --

            The object specified in the Singular flow source.

        • Slack (dict) --

          Specifies the information that is required for querying Slack.

          • object (string) --

            The object specified in the Slack flow source.

        • Trendmicro (dict) --

          Specifies the information that is required for querying Trend Micro.

          • object (string) --

            The object specified in the Trend Micro flow source.

        • Veeva (dict) --

          Specifies the information that is required for querying Veeva.

          • object (string) --

            The object specified in the Veeva flow source.

        • Zendesk (dict) --

          Specifies the information that is required for querying Zendesk.

          • object (string) --

            The object specified in the Zendesk flow source.

      • incrementalPullConfig (dict) --

        Defines the configuration for a scheduled incremental data pull. If a valid configuration is provided, the fields specified in the configuration are used when querying for the incremental data pull.

        • datetimeTypeFieldName (string) --

          A field that specifies the date time or timestamp field as the criteria to use when importing incremental records from the source.

    • destinationFlowConfigList (list) --

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

      • (dict) --

        Contains information about the configuration of destination connectors present in the flow.

        • connectorType (string) --

          The type of connector, such as Salesforce, Amplitude, and so on.

        • connectorProfileName (string) --

          The name of the connector profile. This name must be unique for each connector profile in the AWS account.

        • destinationConnectorProperties (dict) --

          This stores the information that is required to query a particular connector.

          • Redshift (dict) --

            The properties required to query Amazon Redshift.

            • object (string) --

              The object specified in the Amazon Redshift flow destination.

            • intermediateBucketName (string) --

              The intermediate bucket that Amazon AppFlow uses when moving data into Amazon Redshift.

            • bucketPrefix (string) --

              The object key for the bucket in which Amazon AppFlow places the destination files.

            • errorHandlingConfig (dict) --

              The settings that determine how Amazon AppFlow handles an error when placing data in the Amazon Redshift destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

              • failOnFirstDestinationError (boolean) --

                Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

              • bucketPrefix (string) --

                Specifies the Amazon S3 bucket prefix.

              • bucketName (string) --

                Specifies the name of the Amazon S3 bucket.

          • S3 (dict) --

            The properties required to query Amazon S3.

            • bucketName (string) --

              The Amazon S3 bucket name in which Amazon AppFlow places the transferred data.

            • bucketPrefix (string) --

              The object key for the destination bucket in which Amazon AppFlow places the files.

            • s3OutputFormatConfig (dict) --

              The configuration that determines how Amazon AppFlow should format the flow output data when Amazon S3 is used as the destination.

              • fileType (string) --

                Indicates the file type that Amazon AppFlow places in the Amazon S3 bucket.

              • prefixConfig (dict) --

                Determines the prefix that Amazon AppFlow applies to the folder name in the Amazon S3 bucket. You can name folders according to the flow frequency and date.

                • prefixType (string) --

                  Determines the level of granularity that's included in the prefix.

                • prefixFormat (string) --

                  Determines the format of the prefix, and whether it applies to the file name, file path, or both.

              • aggregationConfig (dict) --

                The aggregation settings that you can use to customize the output format of your flow data.

                • aggregationType (string) --

                  Specifies whether Amazon AppFlow aggregates the flow records into a single file, or leave them unaggregated.

          • Salesforce (dict) --

            The properties required to query Salesforce.

            • object (string) --

              The object specified in the Salesforce flow destination.

            • idFieldNames (list) --

              The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update or delete.

              • (string) --

            • errorHandlingConfig (dict) --

              The settings that determine how Amazon AppFlow handles an error when placing data in the Salesforce destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

              • failOnFirstDestinationError (boolean) --

                Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

              • bucketPrefix (string) --

                Specifies the Amazon S3 bucket prefix.

              • bucketName (string) --

                Specifies the name of the Amazon S3 bucket.

            • writeOperationType (string) --

              This specifies the type of write operation to be performed in Salesforce. When the value is UPSERT , then idFieldNames is required.

          • Snowflake (dict) --

            The properties required to query Snowflake.

            • object (string) --

              The object specified in the Snowflake flow destination.

            • intermediateBucketName (string) --

              The intermediate bucket that Amazon AppFlow uses when moving data into Snowflake.

            • bucketPrefix (string) --

              The object key for the destination bucket in which Amazon AppFlow places the files.

            • errorHandlingConfig (dict) --

              The settings that determine how Amazon AppFlow handles an error when placing data in the Snowflake destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

              • failOnFirstDestinationError (boolean) --

                Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

              • bucketPrefix (string) --

                Specifies the Amazon S3 bucket prefix.

              • bucketName (string) --

                Specifies the name of the Amazon S3 bucket.

          • EventBridge (dict) --

            The properties required to query Amazon EventBridge.

            • object (string) --

              The object specified in the Amazon EventBridge flow destination.

            • errorHandlingConfig (dict) --

              The settings that determine how Amazon AppFlow handles an error when placing data in the destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

              • failOnFirstDestinationError (boolean) --

                Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

              • bucketPrefix (string) --

                Specifies the Amazon S3 bucket prefix.

              • bucketName (string) --

                Specifies the name of the Amazon S3 bucket.

          • Upsolver (dict) --

            The properties required to query Upsolver.

            • bucketName (string) --

              The Upsolver Amazon S3 bucket name in which Amazon AppFlow places the transferred data.

            • bucketPrefix (string) --

              The object key for the destination Upsolver Amazon S3 bucket in which Amazon AppFlow places the files.

            • s3OutputFormatConfig (dict) --

              The configuration that determines how data is formatted when Upsolver is used as the flow destination.

              • fileType (string) --

                Indicates the file type that Amazon AppFlow places in the Upsolver Amazon S3 bucket.

              • prefixConfig (dict) --

                Determines the prefix that Amazon AppFlow applies to the destination folder name. You can name your destination folders according to the flow frequency and date.

                • prefixType (string) --

                  Determines the level of granularity that's included in the prefix.

                • prefixFormat (string) --

                  Determines the format of the prefix, and whether it applies to the file name, file path, or both.

              • aggregationConfig (dict) --

                The aggregation settings that you can use to customize the output format of your flow data.

                • aggregationType (string) --

                  Specifies whether Amazon AppFlow aggregates the flow records into a single file, or leave them unaggregated.

    • lastRunExecutionDetails (dict) --

      Describes the details of the most recent flow run.

      • mostRecentExecutionMessage (string) --

        Describes the details of the most recent flow run.

      • mostRecentExecutionTime (datetime) --

        Specifies the time of the most recent flow run.

      • mostRecentExecutionStatus (string) --

        Specifies the status of the most recent flow run.

    • triggerConfig (dict) --

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

      • triggerType (string) --

        Specifies the type of flow trigger. This can be OnDemand , Scheduled , or Event .

      • triggerProperties (dict) --

        Specifies the configuration details of a schedule-triggered flow as defined by the user. Currently, these settings only apply to the Scheduled trigger type.

        • Scheduled (dict) --

          Specifies the configuration details of a schedule-triggered flow as defined by the user.

          • scheduleExpression (string) --

            The scheduling expression that determines the rate at which the schedule will run, for example rate(5minutes) .

          • dataPullMode (string) --

            Specifies whether a scheduled flow has an incremental data transfer or a complete data transfer for each flow run.

          • scheduleStartTime (datetime) --

            Specifies the scheduled start time for a schedule-triggered flow.

          • scheduleEndTime (datetime) --

            Specifies the scheduled end time for a schedule-triggered flow.

          • timezone (string) --

            Specifies the time zone used when referring to the date and time of a scheduled-triggered flow, such as America/New_York .

          • scheduleOffset (integer) --

            Specifies the optional offset that is added to the time interval for a schedule-triggered flow.

    • tasks (list) --

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

      • (dict) --

        A class for modeling different type of tasks. Task implementation varies based on the TaskType .

        • sourceFields (list) --

          The source fields to which a particular task is applied.

          • (string) --

        • connectorOperator (dict) --

          The operation to be performed on the provided source fields.

          • Amplitude (string) --

            The operation to be performed on the provided Amplitude source fields.

          • Datadog (string) --

            The operation to be performed on the provided Datadog source fields.

          • Dynatrace (string) --

            The operation to be performed on the provided Dynatrace source fields.

          • GoogleAnalytics (string) --

            The operation to be performed on the provided Google Analytics source fields.

          • InforNexus (string) --

            The operation to be performed on the provided Infor Nexus source fields.

          • Marketo (string) --

            The operation to be performed on the provided Marketo source fields.

          • S3 (string) --

            The operation to be performed on the provided Amazon S3 source fields.

          • Salesforce (string) --

            The operation to be performed on the provided Salesforce source fields.

          • ServiceNow (string) --

            The operation to be performed on the provided ServiceNow source fields.

          • Singular (string) --

            The operation to be performed on the provided Singular source fields.

          • Slack (string) --

            The operation to be performed on the provided Slack source fields.

          • Trendmicro (string) --

            The operation to be performed on the provided Trend Micro source fields.

          • Veeva (string) --

            The operation to be performed on the provided Veeva source fields.

          • Zendesk (string) --

            The operation to be performed on the provided Zendesk source fields.

        • destinationField (string) --

          A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.

        • taskType (string) --

          Specifies the particular task implementation that Amazon AppFlow performs.

        • taskProperties (dict) --

          A map used to store task-related information. The execution service looks for particular information based on the TaskType .

          • (string) --

            • (string) --

    • createdAt (datetime) --

      Specifies when the flow was created.

    • lastUpdatedAt (datetime) --

      Specifies when the flow was last updated.

    • createdBy (string) --

      The ARN of the user who created the flow.

    • lastUpdatedBy (string) --

      Specifies the user name of the account that performed the most recent update.

    • tags (dict) --

      The tags used to organize, track, or control access for your flow.

      • (string) --

        • (string) --

DescribeFlowExecutionRecords (updated) Link ¶
Changes (response)
{'flowExecutions': {'dataPullEndTime': 'timestamp',
                    'dataPullStartTime': 'timestamp'}}

Fetches the execution history of the flow.

See also: AWS API Documentation

Request Syntax

client.describe_flow_execution_records(
    flowName='string',
    maxResults=123,
    nextToken='string'
)
type flowName

string

param flowName

[REQUIRED]

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

type maxResults

integer

param maxResults

Specifies the maximum number of items that should be returned in the result set. The default for maxResults is 20 (for all paginated API operations).

type nextToken

string

param nextToken

The pagination token for the next page of data.

rtype

dict

returns

Response Syntax

{
    'flowExecutions': [
        {
            'executionId': 'string',
            'executionStatus': 'InProgress'|'Successful'|'Error',
            'executionResult': {
                'errorInfo': {
                    'putFailuresCount': 123,
                    'executionMessage': 'string'
                },
                'bytesProcessed': 123,
                'bytesWritten': 123,
                'recordsProcessed': 123
            },
            'startedAt': datetime(2015, 1, 1),
            'lastUpdatedAt': datetime(2015, 1, 1),
            'dataPullStartTime': datetime(2015, 1, 1),
            'dataPullEndTime': datetime(2015, 1, 1)
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • flowExecutions (list) --

      Returns a list of all instances when this flow was run.

      • (dict) --

        Specifies information about the past flow run instances for a given flow.

        • executionId (string) --

          Specifies the identifier of the given flow run.

        • executionStatus (string) --

          Specifies the flow run status and whether it is in progress, has completed successfully, or has failed.

        • executionResult (dict) --

          Describes the result of the given flow run.

          • errorInfo (dict) --

            Provides any error message information related to the flow run.

            • putFailuresCount (integer) --

              Specifies the failure count for the attempted flow.

            • executionMessage (string) --

              Specifies the error message that appears if a flow fails.

          • bytesProcessed (integer) --

            The total number of bytes processed by the flow run.

          • bytesWritten (integer) --

            The total number of bytes written as a result of the flow run.

          • recordsProcessed (integer) --

            The number of records processed in the flow run.

        • startedAt (datetime) --

          Specifies the start time of the flow run.

        • lastUpdatedAt (datetime) --

          Specifies the time of the most recent update.

        • dataPullStartTime (datetime) --

          The timestamp that determines the first new or updated record to be transferred in the flow run.

        • dataPullEndTime (datetime) --

          The timestamp that indicates the last new or updated record to be transferred in the flow run.

    • nextToken (string) --

      The pagination token for the next page of data.

UpdateFlow (updated) Link ¶
Changes (request)
{'triggerConfig': {'triggerProperties': {'Scheduled': {'scheduleOffset': 'long'}}}}

Updates an existing flow.

See also: AWS API Documentation

Request Syntax

client.update_flow(
    flowName='string',
    description='string',
    triggerConfig={
        'triggerType': 'Scheduled'|'Event'|'OnDemand',
        'triggerProperties': {
            'Scheduled': {
                'scheduleExpression': 'string',
                'dataPullMode': 'Incremental'|'Complete',
                'scheduleStartTime': datetime(2015, 1, 1),
                'scheduleEndTime': datetime(2015, 1, 1),
                'timezone': 'string',
                'scheduleOffset': 123
            }
        }
    },
    sourceFlowConfig={
        'connectorType': 'Salesforce'|'Singular'|'Slack'|'Redshift'|'S3'|'Marketo'|'Googleanalytics'|'Zendesk'|'Servicenow'|'Datadog'|'Trendmicro'|'Snowflake'|'Dynatrace'|'Infornexus'|'Amplitude'|'Veeva'|'EventBridge'|'Upsolver',
        'connectorProfileName': 'string',
        'sourceConnectorProperties': {
            'Amplitude': {
                'object': 'string'
            },
            'Datadog': {
                'object': 'string'
            },
            'Dynatrace': {
                'object': 'string'
            },
            'GoogleAnalytics': {
                'object': 'string'
            },
            'InforNexus': {
                'object': 'string'
            },
            'Marketo': {
                'object': 'string'
            },
            'S3': {
                'bucketName': 'string',
                'bucketPrefix': 'string'
            },
            'Salesforce': {
                'object': 'string',
                'enableDynamicFieldUpdate': True|False,
                'includeDeletedRecords': True|False
            },
            'ServiceNow': {
                'object': 'string'
            },
            'Singular': {
                'object': 'string'
            },
            'Slack': {
                'object': 'string'
            },
            'Trendmicro': {
                'object': 'string'
            },
            'Veeva': {
                'object': 'string'
            },
            'Zendesk': {
                'object': 'string'
            }
        },
        'incrementalPullConfig': {
            'datetimeTypeFieldName': 'string'
        }
    },
    destinationFlowConfigList=[
        {
            'connectorType': 'Salesforce'|'Singular'|'Slack'|'Redshift'|'S3'|'Marketo'|'Googleanalytics'|'Zendesk'|'Servicenow'|'Datadog'|'Trendmicro'|'Snowflake'|'Dynatrace'|'Infornexus'|'Amplitude'|'Veeva'|'EventBridge'|'Upsolver',
            'connectorProfileName': 'string',
            'destinationConnectorProperties': {
                'Redshift': {
                    'object': 'string',
                    'intermediateBucketName': 'string',
                    'bucketPrefix': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'S3': {
                    'bucketName': 'string',
                    'bucketPrefix': 'string',
                    's3OutputFormatConfig': {
                        'fileType': 'CSV'|'JSON'|'PARQUET',
                        'prefixConfig': {
                            'prefixType': 'FILENAME'|'PATH'|'PATH_AND_FILENAME',
                            'prefixFormat': 'YEAR'|'MONTH'|'DAY'|'HOUR'|'MINUTE'
                        },
                        'aggregationConfig': {
                            'aggregationType': 'None'|'SingleFile'
                        }
                    }
                },
                'Salesforce': {
                    'object': 'string',
                    'idFieldNames': [
                        'string',
                    ],
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    },
                    'writeOperationType': 'INSERT'|'UPSERT'|'UPDATE'
                },
                'Snowflake': {
                    'object': 'string',
                    'intermediateBucketName': 'string',
                    'bucketPrefix': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'EventBridge': {
                    'object': 'string',
                    'errorHandlingConfig': {
                        'failOnFirstDestinationError': True|False,
                        'bucketPrefix': 'string',
                        'bucketName': 'string'
                    }
                },
                'Upsolver': {
                    'bucketName': 'string',
                    'bucketPrefix': 'string',
                    's3OutputFormatConfig': {
                        'fileType': 'CSV'|'JSON'|'PARQUET',
                        'prefixConfig': {
                            'prefixType': 'FILENAME'|'PATH'|'PATH_AND_FILENAME',
                            'prefixFormat': 'YEAR'|'MONTH'|'DAY'|'HOUR'|'MINUTE'
                        },
                        'aggregationConfig': {
                            'aggregationType': 'None'|'SingleFile'
                        }
                    }
                }
            }
        },
    ],
    tasks=[
        {
            'sourceFields': [
                'string',
            ],
            'connectorOperator': {
                'Amplitude': 'BETWEEN',
                'Datadog': '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'|'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',
                'GoogleAnalytics': 'PROJECTION'|'BETWEEN',
                'InforNexus': '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'|'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'|'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'|'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',
                'ServiceNow': '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'|'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'|'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'|'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'|'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'|'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'
            },
            'destinationField': 'string',
            'taskType': 'Arithmetic'|'Filter'|'Map'|'Mask'|'Merge'|'Truncate'|'Validate',
            'taskProperties': {
                'string': 'string'
            }
        },
    ]
)
type flowName

string

param flowName

[REQUIRED]

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

type description

string

param description

A description of the flow.

type triggerConfig

dict

param triggerConfig

[REQUIRED]

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

  • triggerType (string) -- [REQUIRED]

    Specifies the type of flow trigger. This can be OnDemand , Scheduled , or Event .

  • triggerProperties (dict) --

    Specifies the configuration details of a schedule-triggered flow as defined by the user. Currently, these settings only apply to the Scheduled trigger type.

    • Scheduled (dict) --

      Specifies the configuration details of a schedule-triggered flow as defined by the user.

      • scheduleExpression (string) -- [REQUIRED]

        The scheduling expression that determines the rate at which the schedule will run, for example rate(5minutes) .

      • dataPullMode (string) --

        Specifies whether a scheduled flow has an incremental data transfer or a complete data transfer for each flow run.

      • scheduleStartTime (datetime) --

        Specifies the scheduled start time for a schedule-triggered flow.

      • scheduleEndTime (datetime) --

        Specifies the scheduled end time for a schedule-triggered flow.

      • timezone (string) --

        Specifies the time zone used when referring to the date and time of a scheduled-triggered flow, such as America/New_York .

      • scheduleOffset (integer) --

        Specifies the optional offset that is added to the time interval for a schedule-triggered flow.

type sourceFlowConfig

dict

param sourceFlowConfig

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

  • connectorType (string) -- [REQUIRED]

    The type of connector, such as Salesforce, Amplitude, and so on.

  • connectorProfileName (string) --

    The name of the connector profile. This name must be unique for each connector profile in the AWS account.

  • sourceConnectorProperties (dict) -- [REQUIRED]

    Specifies the information that is required to query a particular source connector.

    • Amplitude (dict) --

      Specifies the information that is required for querying Amplitude.

      • object (string) -- [REQUIRED]

        The object specified in the Amplitude flow source.

    • Datadog (dict) --

      Specifies the information that is required for querying Datadog.

      • object (string) -- [REQUIRED]

        The object specified in the Datadog flow source.

    • Dynatrace (dict) --

      Specifies the information that is required for querying Dynatrace.

      • object (string) -- [REQUIRED]

        The object specified in the Dynatrace flow source.

    • GoogleAnalytics (dict) --

      Specifies the information that is required for querying Google Analytics.

      • object (string) -- [REQUIRED]

        The object specified in the Google Analytics flow source.

    • InforNexus (dict) --

      Specifies the information that is required for querying Infor Nexus.

      • object (string) -- [REQUIRED]

        The object specified in the Infor Nexus flow source.

    • Marketo (dict) --

      Specifies the information that is required for querying Marketo.

      • object (string) -- [REQUIRED]

        The object specified in the Marketo flow source.

    • S3 (dict) --

      Specifies the information that is required for querying Amazon S3.

      • bucketName (string) -- [REQUIRED]

        The Amazon S3 bucket name where the source files are stored.

      • bucketPrefix (string) --

        The object key for the Amazon S3 bucket in which the source files are stored.

    • Salesforce (dict) --

      Specifies the information that is required for querying Salesforce.

      • object (string) -- [REQUIRED]

        The object specified in the Salesforce flow source.

      • enableDynamicFieldUpdate (boolean) --

        The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.

      • includeDeletedRecords (boolean) --

        Indicates whether Amazon AppFlow includes deleted files in the flow run.

    • ServiceNow (dict) --

      Specifies the information that is required for querying ServiceNow.

      • object (string) -- [REQUIRED]

        The object specified in the ServiceNow flow source.

    • Singular (dict) --

      Specifies the information that is required for querying Singular.

      • object (string) -- [REQUIRED]

        The object specified in the Singular flow source.

    • Slack (dict) --

      Specifies the information that is required for querying Slack.

      • object (string) -- [REQUIRED]

        The object specified in the Slack flow source.

    • Trendmicro (dict) --

      Specifies the information that is required for querying Trend Micro.

      • object (string) -- [REQUIRED]

        The object specified in the Trend Micro flow source.

    • Veeva (dict) --

      Specifies the information that is required for querying Veeva.

      • object (string) -- [REQUIRED]

        The object specified in the Veeva flow source.

    • Zendesk (dict) --

      Specifies the information that is required for querying Zendesk.

      • object (string) -- [REQUIRED]

        The object specified in the Zendesk flow source.

  • incrementalPullConfig (dict) --

    Defines the configuration for a scheduled incremental data pull. If a valid configuration is provided, the fields specified in the configuration are used when querying for the incremental data pull.

    • datetimeTypeFieldName (string) --

      A field that specifies the date time or timestamp field as the criteria to use when importing incremental records from the source.

type destinationFlowConfigList

list

param destinationFlowConfigList

[REQUIRED]

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

  • (dict) --

    Contains information about the configuration of destination connectors present in the flow.

    • connectorType (string) -- [REQUIRED]

      The type of connector, such as Salesforce, Amplitude, and so on.

    • connectorProfileName (string) --

      The name of the connector profile. This name must be unique for each connector profile in the AWS account.

    • destinationConnectorProperties (dict) -- [REQUIRED]

      This stores the information that is required to query a particular connector.

      • Redshift (dict) --

        The properties required to query Amazon Redshift.

        • object (string) -- [REQUIRED]

          The object specified in the Amazon Redshift flow destination.

        • intermediateBucketName (string) -- [REQUIRED]

          The intermediate bucket that Amazon AppFlow uses when moving data into Amazon Redshift.

        • bucketPrefix (string) --

          The object key for the bucket in which Amazon AppFlow places the destination files.

        • errorHandlingConfig (dict) --

          The settings that determine how Amazon AppFlow handles an error when placing data in the Amazon Redshift destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

          • failOnFirstDestinationError (boolean) --

            Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

          • bucketPrefix (string) --

            Specifies the Amazon S3 bucket prefix.

          • bucketName (string) --

            Specifies the name of the Amazon S3 bucket.

      • S3 (dict) --

        The properties required to query Amazon S3.

        • bucketName (string) -- [REQUIRED]

          The Amazon S3 bucket name in which Amazon AppFlow places the transferred data.

        • bucketPrefix (string) --

          The object key for the destination bucket in which Amazon AppFlow places the files.

        • s3OutputFormatConfig (dict) --

          The configuration that determines how Amazon AppFlow should format the flow output data when Amazon S3 is used as the destination.

          • fileType (string) --

            Indicates the file type that Amazon AppFlow places in the Amazon S3 bucket.

          • prefixConfig (dict) --

            Determines the prefix that Amazon AppFlow applies to the folder name in the Amazon S3 bucket. You can name folders according to the flow frequency and date.

            • prefixType (string) --

              Determines the level of granularity that's included in the prefix.

            • prefixFormat (string) --

              Determines the format of the prefix, and whether it applies to the file name, file path, or both.

          • aggregationConfig (dict) --

            The aggregation settings that you can use to customize the output format of your flow data.

            • aggregationType (string) --

              Specifies whether Amazon AppFlow aggregates the flow records into a single file, or leave them unaggregated.

      • Salesforce (dict) --

        The properties required to query Salesforce.

        • object (string) -- [REQUIRED]

          The object specified in the Salesforce flow destination.

        • idFieldNames (list) --

          The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update or delete.

          • (string) --

        • errorHandlingConfig (dict) --

          The settings that determine how Amazon AppFlow handles an error when placing data in the Salesforce destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

          • failOnFirstDestinationError (boolean) --

            Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

          • bucketPrefix (string) --

            Specifies the Amazon S3 bucket prefix.

          • bucketName (string) --

            Specifies the name of the Amazon S3 bucket.

        • writeOperationType (string) --

          This specifies the type of write operation to be performed in Salesforce. When the value is UPSERT , then idFieldNames is required.

      • Snowflake (dict) --

        The properties required to query Snowflake.

        • object (string) -- [REQUIRED]

          The object specified in the Snowflake flow destination.

        • intermediateBucketName (string) -- [REQUIRED]

          The intermediate bucket that Amazon AppFlow uses when moving data into Snowflake.

        • bucketPrefix (string) --

          The object key for the destination bucket in which Amazon AppFlow places the files.

        • errorHandlingConfig (dict) --

          The settings that determine how Amazon AppFlow handles an error when placing data in the Snowflake destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

          • failOnFirstDestinationError (boolean) --

            Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

          • bucketPrefix (string) --

            Specifies the Amazon S3 bucket prefix.

          • bucketName (string) --

            Specifies the name of the Amazon S3 bucket.

      • EventBridge (dict) --

        The properties required to query Amazon EventBridge.

        • object (string) -- [REQUIRED]

          The object specified in the Amazon EventBridge flow destination.

        • errorHandlingConfig (dict) --

          The settings that determine how Amazon AppFlow handles an error when placing data in the destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig is a part of the destination connector details.

          • failOnFirstDestinationError (boolean) --

            Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.

          • bucketPrefix (string) --

            Specifies the Amazon S3 bucket prefix.

          • bucketName (string) --

            Specifies the name of the Amazon S3 bucket.

      • Upsolver (dict) --

        The properties required to query Upsolver.

        • bucketName (string) -- [REQUIRED]

          The Upsolver Amazon S3 bucket name in which Amazon AppFlow places the transferred data.

        • bucketPrefix (string) --

          The object key for the destination Upsolver Amazon S3 bucket in which Amazon AppFlow places the files.

        • s3OutputFormatConfig (dict) -- [REQUIRED]

          The configuration that determines how data is formatted when Upsolver is used as the flow destination.

          • fileType (string) --

            Indicates the file type that Amazon AppFlow places in the Upsolver Amazon S3 bucket.

          • prefixConfig (dict) -- [REQUIRED]

            Determines the prefix that Amazon AppFlow applies to the destination folder name. You can name your destination folders according to the flow frequency and date.

            • prefixType (string) --

              Determines the level of granularity that's included in the prefix.

            • prefixFormat (string) --

              Determines the format of the prefix, and whether it applies to the file name, file path, or both.

          • aggregationConfig (dict) --

            The aggregation settings that you can use to customize the output format of your flow data.

            • aggregationType (string) --

              Specifies whether Amazon AppFlow aggregates the flow records into a single file, or leave them unaggregated.

type tasks

list

param tasks

[REQUIRED]

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

  • (dict) --

    A class for modeling different type of tasks. Task implementation varies based on the TaskType .

    • sourceFields (list) -- [REQUIRED]

      The source fields to which a particular task is applied.

      • (string) --

    • connectorOperator (dict) --

      The operation to be performed on the provided source fields.

      • Amplitude (string) --

        The operation to be performed on the provided Amplitude source fields.

      • Datadog (string) --

        The operation to be performed on the provided Datadog source fields.

      • Dynatrace (string) --

        The operation to be performed on the provided Dynatrace source fields.

      • GoogleAnalytics (string) --

        The operation to be performed on the provided Google Analytics source fields.

      • InforNexus (string) --

        The operation to be performed on the provided Infor Nexus source fields.

      • Marketo (string) --

        The operation to be performed on the provided Marketo source fields.

      • S3 (string) --

        The operation to be performed on the provided Amazon S3 source fields.

      • Salesforce (string) --

        The operation to be performed on the provided Salesforce source fields.

      • ServiceNow (string) --

        The operation to be performed on the provided ServiceNow source fields.

      • Singular (string) --

        The operation to be performed on the provided Singular source fields.

      • Slack (string) --

        The operation to be performed on the provided Slack source fields.

      • Trendmicro (string) --

        The operation to be performed on the provided Trend Micro source fields.

      • Veeva (string) --

        The operation to be performed on the provided Veeva source fields.

      • Zendesk (string) --

        The operation to be performed on the provided Zendesk source fields.

    • destinationField (string) --

      A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.

    • taskType (string) -- [REQUIRED]

      Specifies the particular task implementation that Amazon AppFlow performs.

    • taskProperties (dict) --

      A map used to store task-related information. The execution service looks for particular information based on the TaskType .

      • (string) --

        • (string) --

rtype

dict

returns

Response Syntax

{
    'flowStatus': 'Active'|'Deprecated'|'Deleted'|'Draft'|'Errored'|'Suspended'
}

Response Structure

  • (dict) --

    • flowStatus (string) --

      Indicates the current status of the flow.