amazonka-appflow-2.0: Amazon Appflow SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.AppFlow.Types.SalesforceSourceProperties

Description

 
Synopsis

Documentation

data SalesforceSourceProperties Source #

The properties that are applied when Salesforce is being used as a source.

See: newSalesforceSourceProperties smart constructor.

Constructors

SalesforceSourceProperties' 

Fields

  • dataTransferApi :: Maybe SalesforceDataTransferApi

    Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data from Salesforce.

    AUTOMATIC
    The default. Amazon AppFlow selects which API to use based on the number of records that your flow transfers from Salesforce. If your flow transfers fewer than 1,000,000 records, Amazon AppFlow uses Salesforce REST API. If your flow transfers 1,000,000 records or more, Amazon AppFlow uses Salesforce Bulk API 2.0.

    Each of these Salesforce APIs structures data differently. If Amazon AppFlow selects the API automatically, be aware that, for recurring flows, the data output might vary from one flow run to the next. For example, if a flow runs daily, it might use REST API on one day to transfer 900,000 records, and it might use Bulk API 2.0 on the next day to transfer 1,100,000 records. For each of these flow runs, the respective Salesforce API formats the data differently. Some of the differences include how dates are formatted and null values are represented. Also, Bulk API 2.0 doesn't transfer Salesforce compound fields.

    By choosing this option, you optimize flow performance for both small and large data transfers, but the tradeoff is inconsistent formatting in the output.

    BULKV2
    Amazon AppFlow uses only Salesforce Bulk API 2.0. This API runs asynchronous data transfers, and it's optimal for large sets of data. By choosing this option, you ensure that your flow writes consistent output, but you optimize performance only for large data transfers.

    Note that Bulk API 2.0 does not transfer Salesforce compound fields.

    REST_SYNC
    Amazon AppFlow uses only Salesforce REST API. By choosing this option, you ensure that your flow writes consistent output, but you decrease performance for large data transfers that are better suited for Bulk API 2.0. In some cases, if your flow attempts to transfer a vary large set of data, it might fail wituh a timed out error.
  • enableDynamicFieldUpdate :: Maybe Bool

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

  • includeDeletedRecords :: Maybe Bool

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

  • object' :: Text

    The object specified in the Salesforce flow source.

Instances

Instances details
FromJSON SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

ToJSON SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

Generic SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

Associated Types

type Rep SalesforceSourceProperties :: Type -> Type #

Read SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

Show SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

NFData SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

Eq SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

Hashable SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

type Rep SalesforceSourceProperties Source # 
Instance details

Defined in Amazonka.AppFlow.Types.SalesforceSourceProperties

type Rep SalesforceSourceProperties = D1 ('MetaData "SalesforceSourceProperties" "Amazonka.AppFlow.Types.SalesforceSourceProperties" "amazonka-appflow-2.0-3aJWKTszi6ZKDtrkFSqVAB" 'False) (C1 ('MetaCons "SalesforceSourceProperties'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dataTransferApi") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe SalesforceDataTransferApi)) :*: S1 ('MetaSel ('Just "enableDynamicFieldUpdate") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool))) :*: (S1 ('MetaSel ('Just "includeDeletedRecords") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "object'") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))))

newSalesforceSourceProperties Source #

Create a value of SalesforceSourceProperties with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:dataTransferApi:SalesforceSourceProperties', salesforceSourceProperties_dataTransferApi - Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data from Salesforce.

AUTOMATIC
The default. Amazon AppFlow selects which API to use based on the number of records that your flow transfers from Salesforce. If your flow transfers fewer than 1,000,000 records, Amazon AppFlow uses Salesforce REST API. If your flow transfers 1,000,000 records or more, Amazon AppFlow uses Salesforce Bulk API 2.0.

Each of these Salesforce APIs structures data differently. If Amazon AppFlow selects the API automatically, be aware that, for recurring flows, the data output might vary from one flow run to the next. For example, if a flow runs daily, it might use REST API on one day to transfer 900,000 records, and it might use Bulk API 2.0 on the next day to transfer 1,100,000 records. For each of these flow runs, the respective Salesforce API formats the data differently. Some of the differences include how dates are formatted and null values are represented. Also, Bulk API 2.0 doesn't transfer Salesforce compound fields.

By choosing this option, you optimize flow performance for both small and large data transfers, but the tradeoff is inconsistent formatting in the output.

BULKV2
Amazon AppFlow uses only Salesforce Bulk API 2.0. This API runs asynchronous data transfers, and it's optimal for large sets of data. By choosing this option, you ensure that your flow writes consistent output, but you optimize performance only for large data transfers.

Note that Bulk API 2.0 does not transfer Salesforce compound fields.

REST_SYNC
Amazon AppFlow uses only Salesforce REST API. By choosing this option, you ensure that your flow writes consistent output, but you decrease performance for large data transfers that are better suited for Bulk API 2.0. In some cases, if your flow attempts to transfer a vary large set of data, it might fail wituh a timed out error.

$sel:enableDynamicFieldUpdate:SalesforceSourceProperties', salesforceSourceProperties_enableDynamicFieldUpdate - The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.

$sel:includeDeletedRecords:SalesforceSourceProperties', salesforceSourceProperties_includeDeletedRecords - Indicates whether Amazon AppFlow includes deleted files in the flow run.

$sel:object':SalesforceSourceProperties', salesforceSourceProperties_object - The object specified in the Salesforce flow source.

salesforceSourceProperties_dataTransferApi :: Lens' SalesforceSourceProperties (Maybe SalesforceDataTransferApi) Source #

Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data from Salesforce.

AUTOMATIC
The default. Amazon AppFlow selects which API to use based on the number of records that your flow transfers from Salesforce. If your flow transfers fewer than 1,000,000 records, Amazon AppFlow uses Salesforce REST API. If your flow transfers 1,000,000 records or more, Amazon AppFlow uses Salesforce Bulk API 2.0.

Each of these Salesforce APIs structures data differently. If Amazon AppFlow selects the API automatically, be aware that, for recurring flows, the data output might vary from one flow run to the next. For example, if a flow runs daily, it might use REST API on one day to transfer 900,000 records, and it might use Bulk API 2.0 on the next day to transfer 1,100,000 records. For each of these flow runs, the respective Salesforce API formats the data differently. Some of the differences include how dates are formatted and null values are represented. Also, Bulk API 2.0 doesn't transfer Salesforce compound fields.

By choosing this option, you optimize flow performance for both small and large data transfers, but the tradeoff is inconsistent formatting in the output.

BULKV2
Amazon AppFlow uses only Salesforce Bulk API 2.0. This API runs asynchronous data transfers, and it's optimal for large sets of data. By choosing this option, you ensure that your flow writes consistent output, but you optimize performance only for large data transfers.

Note that Bulk API 2.0 does not transfer Salesforce compound fields.

REST_SYNC
Amazon AppFlow uses only Salesforce REST API. By choosing this option, you ensure that your flow writes consistent output, but you decrease performance for large data transfers that are better suited for Bulk API 2.0. In some cases, if your flow attempts to transfer a vary large set of data, it might fail wituh a timed out error.

salesforceSourceProperties_enableDynamicFieldUpdate :: Lens' SalesforceSourceProperties (Maybe Bool) Source #

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

salesforceSourceProperties_includeDeletedRecords :: Lens' SalesforceSourceProperties (Maybe Bool) Source #

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

salesforceSourceProperties_object :: Lens' SalesforceSourceProperties Text Source #

The object specified in the Salesforce flow source.