Class: AWS.Appflow
- Inherits:
-
AWS.Service
- Object
- AWS.Service
- AWS.Appflow
- Identifier:
- appflow
- API Version:
- 2020-08-23
- Defined in:
- (unknown)
Overview
Constructs a service interface object. Each API operation is exposed as a function on service.
Service Description
Welcome to the Amazon AppFlow API reference. This guide is for developers who need detailed information about the Amazon AppFlow API operations, data types, and errors.
Amazon AppFlow is a fully managed integration service that enables you to securely transfer data between software as a service (SaaS) applications like Salesforce, Marketo, Slack, and ServiceNow, and Amazon Web Services like Amazon S3 and Amazon Redshift.
Use the following links to get started on the Amazon AppFlow API:
-
Actions: An alphabetical list of all Amazon AppFlow API operations.
-
Data types: An alphabetical list of all Amazon AppFlow data types.
-
Common parameters: Parameters that all Query operations can use.
-
Common errors: Client and server errors that all operations can return.
If you're new to Amazon AppFlow, we recommend that you review the Amazon AppFlow User Guide.
Amazon AppFlow API users can use vendor-specific mechanisms for OAuth, and include applicable OAuth attributes (such as auth-code
and redirecturi
) with the connector-specific ConnectorProfileProperties
when creating a new connector profile using Amazon AppFlow API operations. For example, Salesforce users can refer to the Authorize Apps with OAuth documentation.
Sending a Request Using Appflow
var appflow = new AWS.Appflow();
appflow.cancelFlowExecutions(params, function (err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Locking the API Version
In order to ensure that the Appflow object uses this specific API, you can
construct the object by passing the apiVersion
option to the constructor:
var appflow = new AWS.Appflow({apiVersion: '2020-08-23'});
You can also set the API version globally in AWS.config.apiVersions
using
the appflow service identifier:
AWS.config.apiVersions = {
appflow: '2020-08-23',
// other service API versions
};
var appflow = new AWS.Appflow();
Version:
-
2020-08-23
Constructor Summary collapse
-
new AWS.Appflow(options = {}) ⇒ Object
constructor
Constructs a service object.
Property Summary collapse
-
endpoint ⇒ AWS.Endpoint
readwrite
An Endpoint object representing the endpoint URL for service requests.
Properties inherited from AWS.Service
Method Summary collapse
-
cancelFlowExecutions(params = {}, callback) ⇒ AWS.Request
Cancels active runs for a flow.
You can cancel all of the active runs for a flow, or you can cancel specific runs by providing their IDs.
You can cancel a flow run only when the run is in progress.
-
createConnectorProfile(params = {}, callback) ⇒ AWS.Request
Creates a new connector profile associated with your Amazon Web Services account.
-
createFlow(params = {}, callback) ⇒ AWS.Request
Enables your application to create a new flow using Amazon AppFlow.
-
deleteConnectorProfile(params = {}, callback) ⇒ AWS.Request
Enables you to delete an existing connector profile.
-
deleteFlow(params = {}, callback) ⇒ AWS.Request
Enables your application to delete an existing flow.
-
describeConnector(params = {}, callback) ⇒ AWS.Request
Describes the given custom connector registered in your Amazon Web Services account.
-
describeConnectorEntity(params = {}, callback) ⇒ AWS.Request
Provides details regarding the entity used with the connector, with a description of the data model for each field in that entity.
-
describeConnectorProfiles(params = {}, callback) ⇒ AWS.Request
Returns a list of
connector-profile
details matching the providedconnector-profile
names andconnector-types
. -
describeConnectors(params = {}, callback) ⇒ AWS.Request
Describes the connectors vended by Amazon AppFlow for specified connector types.
-
describeFlow(params = {}, callback) ⇒ AWS.Request
Provides a description of the specified flow.
-
describeFlowExecutionRecords(params = {}, callback) ⇒ AWS.Request
Fetches the execution history of the flow.
-
listConnectorEntities(params = {}, callback) ⇒ AWS.Request
Returns the list of available connector entities supported by Amazon AppFlow.
-
listConnectors(params = {}, callback) ⇒ AWS.Request
Returns the list of all registered custom connectors in your Amazon Web Services account.
-
listFlows(params = {}, callback) ⇒ AWS.Request
Lists all of the flows associated with your account.
-
listTagsForResource(params = {}, callback) ⇒ AWS.Request
Retrieves the tags that are associated with a specified flow.
-
registerConnector(params = {}, callback) ⇒ AWS.Request
Registers a new custom connector with your Amazon Web Services account.
-
resetConnectorMetadataCache(params = {}, callback) ⇒ AWS.Request
Resets metadata about your connector entities that Amazon AppFlow stored in its cache.
-
startFlow(params = {}, callback) ⇒ AWS.Request
Activates an existing flow.
-
stopFlow(params = {}, callback) ⇒ AWS.Request
Deactivates the existing flow.
-
tagResource(params = {}, callback) ⇒ AWS.Request
Applies a tag to the specified flow.
-
unregisterConnector(params = {}, callback) ⇒ AWS.Request
Unregisters the custom connector registered in your account that matches the connector label provided in the request.
.
-
untagResource(params = {}, callback) ⇒ AWS.Request
Removes a tag from the specified flow.
-
updateConnectorProfile(params = {}, callback) ⇒ AWS.Request
Updates a given connector profile associated with your account.
-
updateConnectorRegistration(params = {}, callback) ⇒ AWS.Request
Updates a custom connector that you've previously registered.
-
updateFlow(params = {}, callback) ⇒ AWS.Request
Updates an existing flow.
Methods inherited from AWS.Service
makeRequest, makeUnauthenticatedRequest, waitFor, setupRequestListeners, defineService
Constructor Details
new AWS.Appflow(options = {}) ⇒ Object
Constructs a service object. This object has one method for each API operation.
Examples:
Constructing a Appflow object
var appflow = new AWS.Appflow({apiVersion: '2020-08-23'});
Options Hash (options):
-
params
(map)
—
An optional map of parameters to bind to every request sent by this service object. For more information on bound parameters, see "Working with Services" in the Getting Started Guide.
-
endpoint
(String|AWS.Endpoint)
—
The endpoint URI to send requests to. The default endpoint is built from the configured
region
. The endpoint should be a string like'https://{service}.{region}.amazonaws.com'
or an Endpoint object. -
accessKeyId
(String)
—
your AWS access key ID.
-
secretAccessKey
(String)
—
your AWS secret access key.
-
sessionToken
(AWS.Credentials)
—
the optional AWS session token to sign requests with.
-
credentials
(AWS.Credentials)
—
the AWS credentials to sign requests with. You can either specify this object, or specify the accessKeyId and secretAccessKey options directly.
-
credentialProvider
(AWS.CredentialProviderChain)
—
the provider chain used to resolve credentials if no static
credentials
property is set. -
region
(String)
—
the region to send service requests to. See AWS.Appflow.region for more information.
-
maxRetries
(Integer)
—
the maximum amount of retries to attempt with a request. See AWS.Appflow.maxRetries for more information.
-
maxRedirects
(Integer)
—
the maximum amount of redirects to follow with a request. See AWS.Appflow.maxRedirects for more information.
-
sslEnabled
(Boolean)
—
whether to enable SSL for requests.
-
paramValidation
(Boolean|map)
—
whether input parameters should be validated against the operation description before sending the request. Defaults to true. Pass a map to enable any of the following specific validation features:
- min [Boolean] — Validates that a value meets the min
constraint. This is enabled by default when paramValidation is set
to
true
. - max [Boolean] — Validates that a value meets the max constraint.
- pattern [Boolean] — Validates that a string value matches a regular expression.
- enum [Boolean] — Validates that a string value matches one of the allowable enum values.
- min [Boolean] — Validates that a value meets the min
constraint. This is enabled by default when paramValidation is set
to
-
computeChecksums
(Boolean)
—
whether to compute checksums for payload bodies when the service accepts it (currently supported in S3 only)
-
convertResponseTypes
(Boolean)
—
whether types are converted when parsing response data. Currently only supported for JSON based services. Turning this off may improve performance on large response payloads. Defaults to
true
. -
correctClockSkew
(Boolean)
—
whether to apply a clock skew correction and retry requests that fail because of an skewed client clock. Defaults to
false
. -
s3ForcePathStyle
(Boolean)
—
whether to force path style URLs for S3 objects.
-
s3BucketEndpoint
(Boolean)
—
whether the provided endpoint addresses an individual bucket (false if it addresses the root API endpoint). Note that setting this configuration option requires an
endpoint
to be provided explicitly to the service constructor. -
s3DisableBodySigning
(Boolean)
—
whether S3 body signing should be disabled when using signature version
v4
. Body signing can only be disabled when using https. Defaults totrue
. -
s3UsEast1RegionalEndpoint
('legacy'|'regional')
—
when region is set to 'us-east-1', whether to send s3 request to global endpoints or 'us-east-1' regional endpoints. This config is only applicable to S3 client. Defaults to
legacy
-
s3UseArnRegion
(Boolean)
—
whether to override the request region with the region inferred from requested resource's ARN. Only available for S3 buckets Defaults to
true
-
retryDelayOptions
(map)
—
A set of options to configure the retry delay on retryable errors. Currently supported options are:
- base [Integer] — The base number of milliseconds to use in the exponential backoff for operation retries. Defaults to 100 ms for all services except DynamoDB, where it defaults to 50ms.
- customBackoff [function] — A custom function that accepts a
retry count and error and returns the amount of time to delay in
milliseconds. If the result is a non-zero negative value, no further
retry attempts will be made. The
base
option will be ignored if this option is supplied. The function is only called for retryable errors.
-
httpOptions
(map)
—
A set of options to pass to the low-level HTTP request. Currently supported options are:
- proxy [String] — the URL to proxy requests through
- agent [http.Agent, https.Agent] — the Agent object to perform
HTTP requests with. Used for connection pooling. Defaults to the global
agent (
http.globalAgent
) for non-SSL connections. Note that for SSL connections, a special Agent object is used in order to enable peer certificate verification. This feature is only available in the Node.js environment. - connectTimeout [Integer] — Sets the socket to timeout after
failing to establish a connection with the server after
connectTimeout
milliseconds. This timeout has no effect once a socket connection has been established. - timeout [Integer] — Sets the socket to timeout after timeout milliseconds of inactivity on the socket. Defaults to two minutes (120000).
- xhrAsync [Boolean] — Whether the SDK will send asynchronous HTTP requests. Used in the browser environment only. Set to false to send requests synchronously. Defaults to true (async on).
- xhrWithCredentials [Boolean] — Sets the "withCredentials" property of an XMLHttpRequest object. Used in the browser environment only. Defaults to false.
-
apiVersion
(String, Date)
—
a String in YYYY-MM-DD format (or a date) that represents the latest possible API version that can be used in all services (unless overridden by
apiVersions
). Specify 'latest' to use the latest possible version. -
apiVersions
(map<String, String|Date>)
—
a map of service identifiers (the lowercase service class name) with the API version to use when instantiating a service. Specify 'latest' for each individual that can use the latest available version.
-
logger
(#write, #log)
—
an object that responds to .write() (like a stream) or .log() (like the console object) in order to log information about requests
-
systemClockOffset
(Number)
—
an offset value in milliseconds to apply to all signing times. Use this to compensate for clock skew when your system may be out of sync with the service time. Note that this configuration option can only be applied to the global
AWS.config
object and cannot be overridden in service-specific configuration. Defaults to 0 milliseconds. -
signatureVersion
(String)
—
the signature version to sign requests with (overriding the API configuration). Possible values are: 'v2', 'v3', 'v4'.
-
signatureCache
(Boolean)
—
whether the signature to sign requests with (overriding the API configuration) is cached. Only applies to the signature version 'v4'. Defaults to
true
. -
dynamoDbCrc32
(Boolean)
—
whether to validate the CRC32 checksum of HTTP response bodies returned by DynamoDB. Default:
true
. -
useAccelerateEndpoint
(Boolean)
—
Whether to use the S3 Transfer Acceleration endpoint with the S3 service. Default:
false
. -
clientSideMonitoring
(Boolean)
—
whether to collect and publish this client's performance metrics of all its API requests.
-
endpointDiscoveryEnabled
(Boolean|undefined)
—
whether to call operations with endpoints given by service dynamically. Setting this
-
endpointCacheSize
(Number)
—
the size of the global cache storing endpoints from endpoint discovery operations. Once endpoint cache is created, updating this setting cannot change existing cache size. Defaults to 1000
-
hostPrefixEnabled
(Boolean)
—
whether to marshal request parameters to the prefix of hostname. Defaults to
true
. -
stsRegionalEndpoints
('legacy'|'regional')
—
whether to send sts request to global endpoints or regional endpoints. Defaults to 'legacy'.
-
useFipsEndpoint
(Boolean)
—
Enables FIPS compatible endpoints. Defaults to
false
. -
useDualstackEndpoint
(Boolean)
—
Enables IPv6 dualstack endpoint. Defaults to
false
.
Property Details
Method Details
cancelFlowExecutions(params = {}, callback) ⇒ AWS.Request
Cancels active runs for a flow.
You can cancel all of the active runs for a flow, or you can cancel specific runs by providing their IDs.
You can cancel a flow run only when the run is in progress. You can't cancel a run that has already completed or failed. You also can't cancel a run that's scheduled to occur but hasn't started yet. To prevent a scheduled run, you can deactivate the flow with the StopFlow
action.
You cannot resume a run after you cancel it.
When you send your request, the status for each run becomes CancelStarted
. When the cancellation completes, the status becomes Canceled
.
Service Reference:
Examples:
Calling the cancelFlowExecutions operation
var params = {
flowName: 'STRING_VALUE', /* required */
executionIds: [
'STRING_VALUE',
/* more items */
]
};
appflow.cancelFlowExecutions(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
flowName
— (String
)The name of a flow with active runs that you want to cancel.
executionIds
— (Array<String>
)The ID of each active run to cancel. These runs must belong to the flow you specify in your request.
If you omit this parameter, your request ends all active runs that belong to the flow.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:invalidExecutions
— (Array<String>
)The IDs of runs that Amazon AppFlow couldn't cancel. These runs might be ineligible for canceling because they haven't started yet or have already completed.
-
(AWS.Response)
—
Returns:
createConnectorProfile(params = {}, callback) ⇒ AWS.Request
Creates a new connector profile associated with your Amazon Web Services account. There is a soft quota of 100 connector profiles per Amazon Web Services account. If you need more connector profiles than this quota allows, you can submit a request to the Amazon AppFlow team through the Amazon AppFlow support channel. In each connector profile that you create, you can provide the credentials and properties for only one connector.
Service Reference:
Examples:
Calling the createConnectorProfile operation
var params = {
connectionMode: Public | Private, /* required */
connectorProfileConfig: { /* required */
connectorProfileProperties: { /* required */
Amplitude: {
},
CustomConnector: {
oAuth2Properties: {
oAuth2GrantType: CLIENT_CREDENTIALS | AUTHORIZATION_CODE | JWT_BEARER, /* required */
tokenUrl: 'STRING_VALUE', /* required */
tokenUrlCustomProperties: {
'<CustomPropertyKey>': 'STRING_VALUE',
/* '<CustomPropertyKey>': ... */
}
},
profileProperties: {
'<ProfilePropertyKey>': 'STRING_VALUE',
/* '<ProfilePropertyKey>': ... */
}
},
Datadog: {
instanceUrl: 'STRING_VALUE' /* required */
},
Dynatrace: {
instanceUrl: 'STRING_VALUE' /* required */
},
GoogleAnalytics: {
},
Honeycode: {
},
InforNexus: {
instanceUrl: 'STRING_VALUE' /* required */
},
Marketo: {
instanceUrl: 'STRING_VALUE' /* required */
},
Pardot: {
businessUnitId: 'STRING_VALUE',
instanceUrl: 'STRING_VALUE',
isSandboxEnvironment: true || false
},
Redshift: {
bucketName: 'STRING_VALUE', /* required */
roleArn: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
clusterIdentifier: 'STRING_VALUE',
dataApiRoleArn: 'STRING_VALUE',
databaseName: 'STRING_VALUE',
databaseUrl: 'STRING_VALUE',
isRedshiftServerless: true || false,
workgroupName: 'STRING_VALUE'
},
SAPOData: {
applicationHostUrl: 'STRING_VALUE', /* required */
applicationServicePath: 'STRING_VALUE', /* required */
clientNumber: 'STRING_VALUE', /* required */
portNumber: 'NUMBER_VALUE', /* required */
disableSSO: true || false,
logonLanguage: 'STRING_VALUE',
oAuthProperties: {
authCodeUrl: 'STRING_VALUE', /* required */
oAuthScopes: [ /* required */
'STRING_VALUE',
/* more items */
],
tokenUrl: 'STRING_VALUE' /* required */
},
privateLinkServiceName: 'STRING_VALUE'
},
Salesforce: {
instanceUrl: 'STRING_VALUE',
isSandboxEnvironment: true || false,
usePrivateLinkForMetadataAndAuthorization: true || false
},
ServiceNow: {
instanceUrl: 'STRING_VALUE' /* required */
},
Singular: {
},
Slack: {
instanceUrl: 'STRING_VALUE' /* required */
},
Snowflake: {
bucketName: 'STRING_VALUE', /* required */
stage: 'STRING_VALUE', /* required */
warehouse: 'STRING_VALUE', /* required */
accountName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
privateLinkServiceName: 'STRING_VALUE',
region: 'STRING_VALUE'
},
Trendmicro: {
},
Veeva: {
instanceUrl: 'STRING_VALUE' /* required */
},
Zendesk: {
instanceUrl: 'STRING_VALUE' /* required */
}
},
connectorProfileCredentials: {
Amplitude: {
apiKey: 'STRING_VALUE', /* required */
secretKey: 'STRING_VALUE' /* required */
},
CustomConnector: {
authenticationType: OAUTH2 | APIKEY | BASIC | CUSTOM, /* required */
apiKey: {
apiKey: 'STRING_VALUE', /* required */
apiSecretKey: 'STRING_VALUE'
},
basic: {
password: 'STRING_VALUE', /* required */
username: 'STRING_VALUE' /* required */
},
custom: {
customAuthenticationType: 'STRING_VALUE', /* required */
credentialsMap: {
'<CredentialsMapKey>': 'STRING_VALUE',
/* '<CredentialsMapKey>': ... */
}
},
oauth2: {
accessToken: 'STRING_VALUE',
clientId: 'STRING_VALUE',
clientSecret: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
}
},
Datadog: {
apiKey: 'STRING_VALUE', /* required */
applicationKey: 'STRING_VALUE' /* required */
},
Dynatrace: {
apiToken: 'STRING_VALUE' /* required */
},
GoogleAnalytics: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
Honeycode: {
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
InforNexus: {
accessKeyId: 'STRING_VALUE', /* required */
datakey: 'STRING_VALUE', /* required */
secretAccessKey: 'STRING_VALUE', /* required */
userId: 'STRING_VALUE' /* required */
},
Marketo: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
}
},
Pardot: {
accessToken: 'STRING_VALUE',
clientCredentialsArn: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
Redshift: {
password: 'STRING_VALUE',
username: 'STRING_VALUE'
},
SAPOData: {
basicAuthCredentials: {
password: 'STRING_VALUE', /* required */
username: 'STRING_VALUE' /* required */
},
oAuthCredentials: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
}
},
Salesforce: {
accessToken: 'STRING_VALUE',
clientCredentialsArn: 'STRING_VALUE',
jwtToken: 'STRING_VALUE',
oAuth2GrantType: CLIENT_CREDENTIALS | AUTHORIZATION_CODE | JWT_BEARER,
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
ServiceNow: {
oAuth2Credentials: {
accessToken: 'STRING_VALUE',
clientId: 'STRING_VALUE',
clientSecret: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
password: 'STRING_VALUE',
username: 'STRING_VALUE'
},
Singular: {
apiKey: 'STRING_VALUE' /* required */
},
Slack: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
}
},
Snowflake: {
password: 'STRING_VALUE', /* required */
username: 'STRING_VALUE' /* required */
},
Trendmicro: {
apiSecretKey: 'STRING_VALUE' /* required */
},
Veeva: {
password: 'STRING_VALUE', /* required */
username: 'STRING_VALUE' /* required */
},
Zendesk: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
}
}
}
},
connectorProfileName: 'STRING_VALUE', /* required */
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot, /* required */
clientToken: 'STRING_VALUE',
connectorLabel: 'STRING_VALUE',
kmsArn: 'STRING_VALUE'
};
appflow.createConnectorProfile(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorProfileName
— (String
)The name of the connector profile. The name is unique for each
ConnectorProfile
in your Amazon Web Services account.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.
connectorType
— (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorLabel
— (String
)The label of the connector. The label is unique for each
ConnectorRegistration
in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR connector type/.connectionMode
— (String
)Indicates the connection mode and specifies whether it is public or private. Private flows use Amazon Web Services PrivateLink to route data over Amazon Web Services infrastructure without exposing it to the public internet.
Possible values include:"Public"
"Private"
connectorProfileConfig
— (map
)Defines the connector-specific configuration and credentials.
connectorProfileProperties
— required — (map
)The connector-specific properties of the profile configuration.
Amplitude
— (map
)The connector-specific properties required by Amplitude.
Datadog
— (map
)The connector-specific properties required by Datadog.
instanceUrl
— required — (String
)The location of the Datadog resource.
Dynatrace
— (map
)The connector-specific properties required by Dynatrace.
instanceUrl
— required — (String
)The location of the Dynatrace resource.
GoogleAnalytics
— (map
)The connector-specific properties required Google Analytics.
Honeycode
— (map
)The connector-specific properties required by Amazon Honeycode.
InforNexus
— (map
)The connector-specific properties required by Infor Nexus.
instanceUrl
— required — (String
)The location of the Infor Nexus resource.
Marketo
— (map
)The connector-specific properties required by Marketo.
instanceUrl
— required — (String
)The location of the Marketo resource.
Redshift
— (map
)The connector-specific properties required by Amazon Redshift.
databaseUrl
— (String
)The JDBC URL of the Amazon Redshift cluster.
bucketName
— required — (String
)A name for the associated Amazon S3 bucket.
bucketPrefix
— (String
)The object key for the destination bucket in which Amazon AppFlow places the files.
roleArn
— required — (String
)The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift read-only access to Amazon S3. For more information, and for the polices that you attach to this role, see Allow Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
dataApiRoleArn
— (String
)The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to access your Amazon Redshift database through the Data API. For more information, and for the polices that you attach to this role, see Allow Amazon AppFlow to access Amazon Redshift databases with the Data API.
isRedshiftServerless
— (Boolean
)Indicates whether the connector profile defines a connection to an Amazon Redshift Serverless data warehouse.
clusterIdentifier
— (String
)The unique ID that's assigned to an Amazon Redshift cluster.
workgroupName
— (String
)The name of an Amazon Redshift workgroup.
databaseName
— (String
)The name of an Amazon Redshift database.
Salesforce
— (map
)The connector-specific properties required by Salesforce.
instanceUrl
— (String
)The location of the Salesforce resource.
isSandboxEnvironment
— (Boolean
)Indicates whether the connector profile applies to a sandbox or production environment.
usePrivateLinkForMetadataAndAuthorization
— (Boolean
)If the connection mode for the connector profile is private, this parameter sets whether Amazon AppFlow uses the private network to send metadata and authorization calls to Salesforce. Amazon AppFlow sends private calls through Amazon Web Services PrivateLink. These calls travel through Amazon Web Services infrastructure without being exposed to the public internet.
Set either of the following values:
- true
-
Amazon AppFlow sends all calls to Salesforce over the private network.
These private calls are:
-
Calls to get metadata about your Salesforce records. This metadata describes your Salesforce objects and their fields.
-
Calls to get or refresh access tokens that allow Amazon AppFlow to access your Salesforce records.
-
Calls to transfer your Salesforce records as part of a flow run.
-
- false
-
The default value. Amazon AppFlow sends some calls to Salesforce privately and other calls over the public internet.
The public calls are:
-
Calls to get metadata about your Salesforce records.
-
Calls to get or refresh access tokens.
The private calls are:
-
Calls to transfer your Salesforce records as part of a flow run.
-
ServiceNow
— (map
)The connector-specific properties required by serviceNow.
instanceUrl
— required — (String
)The location of the ServiceNow resource.
Singular
— (map
)The connector-specific properties required by Singular.
Slack
— (map
)The connector-specific properties required by Slack.
instanceUrl
— required — (String
)The location of the Slack resource.
Snowflake
— (map
)The connector-specific properties required by Snowflake.
warehouse
— required — (String
)The name of the Snowflake warehouse.
stage
— required — (String
)The name of the Amazon S3 stage that was created while setting up an Amazon S3 stage in the Snowflake account. This is written in the following format: < Database>< Schema><Stage Name>.
bucketName
— required — (String
)The name of the Amazon S3 bucket associated with Snowflake.
bucketPrefix
— (String
)The bucket path that refers to the Amazon S3 bucket associated with Snowflake.
privateLinkServiceName
— (String
)The Snowflake Private Link service name to be used for private data transfers.
accountName
— (String
)The name of the account.
region
— (String
)The Amazon Web Services Region of the Snowflake account.
Trendmicro
— (map
)The connector-specific properties required by Trend Micro.
Veeva
— (map
)The connector-specific properties required by Veeva.
instanceUrl
— required — (String
)The location of the Veeva resource.
Zendesk
— (map
)The connector-specific properties required by Zendesk.
instanceUrl
— required — (String
)The location of the Zendesk resource.
SAPOData
— (map
)The connector-specific profile properties required when using SAPOData.
applicationHostUrl
— required — (String
)The location of the SAPOData resource.
applicationServicePath
— required — (String
)The application path to catalog service.
portNumber
— required — (Integer
)The port number of the SAPOData instance.
clientNumber
— required — (String
)The client number for the client creating the connection.
logonLanguage
— (String
)The logon language of SAPOData instance.
privateLinkServiceName
— (String
)The SAPOData Private Link service name to be used for private data transfers.
oAuthProperties
— (map
)The SAPOData OAuth properties required for OAuth type authentication.
tokenUrl
— required — (String
)The token url required to fetch access/refresh tokens using authorization code and also to refresh expired access token using refresh token.
authCodeUrl
— required — (String
)The authorization code url required to redirect to SAP Login Page to fetch authorization code for OAuth type authentication.
oAuthScopes
— required — (Array<String>
)The OAuth scopes required for OAuth type authentication.
disableSSO
— (Boolean
)If you set this parameter to
true
, Amazon AppFlow bypasses the single sign-on (SSO) settings in your SAP account when it accesses your SAP OData instance.Whether you need this option depends on the types of credentials that you applied to your SAP OData connection profile. If your profile uses basic authentication credentials, SAP SSO can prevent Amazon AppFlow from connecting to your account with your username and password. In this case, bypassing SSO makes it possible for Amazon AppFlow to connect successfully. However, if your profile uses OAuth credentials, this parameter has no affect.
CustomConnector
— (map
)The properties required by the custom connector.
profileProperties
— (map<String>
)A map of properties that are required to create a profile for the custom connector.
oAuth2Properties
— (map
)The OAuth 2.0 properties required for OAuth 2.0 authentication.
tokenUrl
— required — (String
)The token URL required for OAuth 2.0 authentication.
oAuth2GrantType
— required — (String
)The OAuth 2.0 grant type used by connector for OAuth 2.0 authentication.
Possible values include:"CLIENT_CREDENTIALS"
"AUTHORIZATION_CODE"
"JWT_BEARER"
tokenUrlCustomProperties
— (map<String>
)Associates your token URL with a map of properties that you define. Use this parameter to provide any additional details that the connector requires to authenticate your request.
Pardot
— (map
)The connector-specific properties required by Salesforce Pardot.
instanceUrl
— (String
)The location of the Salesforce Pardot resource.
isSandboxEnvironment
— (Boolean
)Indicates whether the connector profile applies to a sandbox or production environment.
businessUnitId
— (String
)The business unit id of Salesforce Pardot instance.
connectorProfileCredentials
— (map
)The connector-specific credentials required by each connector.
Amplitude
— (map
)The connector-specific credentials required when using Amplitude.
apiKey
— required — (String
)A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
secretKey
— required — (String
)The Secret Access Key portion of the credentials.
Datadog
— (map
)The connector-specific credentials required when using Datadog.
apiKey
— required — (String
)A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
applicationKey
— required — (String
)Application keys, in conjunction with your API key, give you full access to Datadog’s programmatic API. Application keys are associated with the user account that created them. The application key is used to log all requests made to the API.
Dynatrace
— (map
)The connector-specific credentials required when using Dynatrace.
apiToken
— required — (String
)The API tokens used by Dynatrace API to authenticate various API calls.
GoogleAnalytics
— (map
)The connector-specific credentials required when using Google Analytics.
clientId
— required — (String
)The identifier for the desired client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The credentials used to access protected Google Analytics resources.
refreshToken
— (String
)The credentials used to acquire new access tokens. This is required only for OAuth2 access tokens, and is not required for OAuth1 access tokens.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
Honeycode
— (map
)The connector-specific credentials required when using Amazon Honeycode.
accessToken
— (String
)The credentials used to access protected Amazon Honeycode resources.
refreshToken
— (String
)The credentials used to acquire new access tokens.
oAuthRequest
— (map
)Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
InforNexus
— (map
)The connector-specific credentials required when using Infor Nexus.
accessKeyId
— required — (String
)The Access Key portion of the credentials.
userId
— required — (String
)The identifier for the user.
secretAccessKey
— required — (String
)The secret key used to sign requests.
datakey
— required — (String
)The encryption keys used to encrypt data.
Marketo
— (map
)The connector-specific credentials required when using Marketo.
clientId
— required — (String
)The identifier for the desired client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The credentials used to access protected Marketo resources.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
Redshift
— (map
)The connector-specific credentials required when using Amazon Redshift.
username
— (String
)The name of the user.
password
— (String
)The password that corresponds to the user name.
Salesforce
— (map
)The connector-specific credentials required when using Salesforce.
accessToken
— (String
)The credentials used to access protected Salesforce resources.
refreshToken
— (String
)The credentials used to acquire new access tokens.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
clientCredentialsArn
— (String
)The secret manager ARN, which contains the client ID and client secret of the connected app.
oAuth2GrantType
— (String
)Specifies the OAuth 2.0 grant type that Amazon AppFlow uses when it requests an access token from Salesforce. Amazon AppFlow requires an access token each time it attempts to access your Salesforce records.
You can specify one of the following values:
- AUTHORIZATION_CODE
-
Amazon AppFlow passes an authorization code when it requests the access token from Salesforce. Amazon AppFlow receives the authorization code from Salesforce after you log in to your Salesforce account and authorize Amazon AppFlow to access your records.
- CLIENT_CREDENTIALS
-
Amazon AppFlow passes client credentials (a client ID and client secret) when it requests the access token from Salesforce. You provide these credentials to Amazon AppFlow when you define the connection to your Salesforce account.
- JWT_BEARER
-
Amazon AppFlow passes a JSON web token (JWT) when it requests the access token from Salesforce. You provide the JWT to Amazon AppFlow when you define the connection to your Salesforce account. When you use this grant type, you don't need to log in to your Salesforce account to authorize Amazon AppFlow to access your records.
"CLIENT_CREDENTIALS"
"AUTHORIZATION_CODE"
"JWT_BEARER"
jwtToken
— (String
)A JSON web token (JWT) that authorizes Amazon AppFlow to access your Salesforce records.
ServiceNow
— (map
)The connector-specific credentials required when using ServiceNow.
username
— (String
)The name of the user.
password
— (String
)The password that corresponds to the user name.
oAuth2Credentials
— (map
)The OAuth 2.0 credentials required to authenticate the user.
clientId
— (String
)The identifier for the desired client.
clientSecret
— (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The access token used to access the connector on your behalf.
refreshToken
— (String
)The refresh token used to refresh an expired access token.
oAuthRequest
— (map
)Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
Singular
— (map
)The connector-specific credentials required when using Singular.
apiKey
— required — (String
)A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
Slack
— (map
)The connector-specific credentials required when using Slack.
clientId
— required — (String
)The identifier for the client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The credentials used to access protected Slack resources.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
Snowflake
— (map
)The connector-specific credentials required when using Snowflake.
username
— required — (String
)The name of the user.
password
— required — (String
)The password that corresponds to the user name.
Trendmicro
— (map
)The connector-specific credentials required when using Trend Micro.
apiSecretKey
— required — (String
)The Secret Access Key portion of the credentials.
Veeva
— (map
)The connector-specific credentials required when using Veeva.
username
— required — (String
)The name of the user.
password
— required — (String
)The password that corresponds to the user name.
Zendesk
— (map
)The connector-specific credentials required when using Zendesk.
clientId
— required — (String
)The identifier for the desired client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The credentials used to access protected Zendesk resources.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
SAPOData
— (map
)The connector-specific profile credentials required when using SAPOData.
basicAuthCredentials
— (map
)The SAPOData basic authentication credentials.
username
— required — (String
)The username to use to connect to a resource.
password
— required — (String
)The password to use to connect to a resource.
oAuthCredentials
— (map
)The SAPOData OAuth type authentication credentials.
clientId
— required — (String
)The identifier for the desired client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The access token used to access protected SAPOData resources.
refreshToken
— (String
)The refresh token used to refresh expired access token.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
CustomConnector
— (map
)The connector-specific profile credentials that are required when using the custom connector.
authenticationType
— required — (String
)The authentication type that the custom connector uses for authenticating while creating a connector profile.
Possible values include:"OAUTH2"
"APIKEY"
"BASIC"
"CUSTOM"
basic
— (map
)The basic credentials that are required for the authentication of the user.
username
— required — (String
)The username to use to connect to a resource.
password
— required — (String
)The password to use to connect to a resource.
oauth2
— (map
)The OAuth 2.0 credentials required for the authentication of the user.
clientId
— (String
)The identifier for the desired client.
clientSecret
— (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The access token used to access the connector on your behalf.
refreshToken
— (String
)The refresh token used to refresh an expired access token.
oAuthRequest
— (map
)Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
apiKey
— (map
)The API keys required for the authentication of the user.
apiKey
— required — (String
)The API key required for API key authentication.
apiSecretKey
— (String
)The API secret key required for API key authentication.
custom
— (map
)If the connector uses the custom authentication mechanism, this holds the required credentials.
customAuthenticationType
— required — (String
)The custom authentication type that the connector uses.
credentialsMap
— (map<String>
)A map that holds custom authentication credentials.
Pardot
— (map
)The connector-specific credentials required when using Salesforce Pardot.
accessToken
— (String
)The credentials used to access protected Salesforce Pardot resources.
refreshToken
— (String
)The credentials used to acquire new access tokens.
oAuthRequest
— (map
)Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
clientCredentialsArn
— (String
)The secret manager ARN, which contains the client ID and client secret of the connected app.
clientToken
— (String
)The
clientToken
parameter is an idempotency token. It ensures that yourCreateConnectorProfile
request completes only once. You choose the value to pass. For example, if you don't receive a response from your request, you can safely retry the request with the sameclientToken
parameter value.If you omit a
clientToken
value, the Amazon Web Services SDK that you are using inserts a value for you. This way, the SDK can safely retry requests multiple times after a network error. You must provide your own value for other use cases.If you specify input parameters that differ from your first request, an error occurs. If you use a different value for
If a token is not provided, the SDK will use a version 4 UUID.clientToken
, Amazon AppFlow considers it a new call toCreateConnectorProfile
. The token is active for 8 hours.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorProfileArn
— (String
)The Amazon Resource Name (ARN) of the connector profile.
-
(AWS.Response)
—
Returns:
createFlow(params = {}, callback) ⇒ AWS.Request
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.
Service Reference:
Examples:
Calling the createFlow operation
var params = {
destinationFlowConfigList: [ /* required */
{
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot, /* required */
destinationConnectorProperties: { /* required */
CustomConnector: {
entityName: 'STRING_VALUE', /* required */
customProperties: {
'<CustomPropertyKey>': 'STRING_VALUE',
/* '<CustomPropertyKey>': ... */
},
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
},
idFieldNames: [
'STRING_VALUE',
/* more items */
],
writeOperationType: INSERT | UPSERT | UPDATE | DELETE
},
CustomerProfiles: {
domainName: 'STRING_VALUE', /* required */
objectTypeName: 'STRING_VALUE'
},
EventBridge: {
object: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
Honeycode: {
object: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
LookoutMetrics: {
},
Marketo: {
object: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
Redshift: {
intermediateBucketName: 'STRING_VALUE', /* required */
object: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
S3: {
bucketName: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
s3OutputFormatConfig: {
aggregationConfig: {
aggregationType: None | SingleFile,
targetFileSize: 'NUMBER_VALUE'
},
fileType: CSV | JSON | PARQUET,
prefixConfig: {
pathPrefixHierarchy: [
EXECUTION_ID | SCHEMA_VERSION,
/* more items */
],
prefixFormat: YEAR | MONTH | DAY | HOUR | MINUTE,
prefixType: FILENAME | PATH | PATH_AND_FILENAME
},
preserveSourceDataTyping: true || false
}
},
SAPOData: {
objectPath: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
},
idFieldNames: [
'STRING_VALUE',
/* more items */
],
successResponseHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE'
},
writeOperationType: INSERT | UPSERT | UPDATE | DELETE
},
Salesforce: {
object: 'STRING_VALUE', /* required */
dataTransferApi: AUTOMATIC | BULKV2 | REST_SYNC,
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
},
idFieldNames: [
'STRING_VALUE',
/* more items */
],
writeOperationType: INSERT | UPSERT | UPDATE | DELETE
},
Snowflake: {
intermediateBucketName: 'STRING_VALUE', /* required */
object: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
Upsolver: {
bucketName: 'STRING_VALUE', /* required */
s3OutputFormatConfig: { /* required */
prefixConfig: { /* required */
pathPrefixHierarchy: [
EXECUTION_ID | SCHEMA_VERSION,
/* more items */
],
prefixFormat: YEAR | MONTH | DAY | HOUR | MINUTE,
prefixType: FILENAME | PATH | PATH_AND_FILENAME
},
aggregationConfig: {
aggregationType: None | SingleFile,
targetFileSize: 'NUMBER_VALUE'
},
fileType: CSV | JSON | PARQUET
},
bucketPrefix: 'STRING_VALUE'
},
Zendesk: {
object: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
},
idFieldNames: [
'STRING_VALUE',
/* more items */
],
writeOperationType: INSERT | UPSERT | UPDATE | DELETE
}
},
apiVersion: 'STRING_VALUE',
connectorProfileName: 'STRING_VALUE'
},
/* more items */
],
flowName: 'STRING_VALUE', /* required */
sourceFlowConfig: { /* required */
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot, /* required */
sourceConnectorProperties: { /* required */
Amplitude: {
object: 'STRING_VALUE' /* required */
},
CustomConnector: {
entityName: 'STRING_VALUE', /* required */
customProperties: {
'<CustomPropertyKey>': 'STRING_VALUE',
/* '<CustomPropertyKey>': ... */
},
dataTransferApi: {
Name: 'STRING_VALUE',
Type: SYNC | ASYNC | AUTOMATIC
}
},
Datadog: {
object: 'STRING_VALUE' /* required */
},
Dynatrace: {
object: 'STRING_VALUE' /* required */
},
GoogleAnalytics: {
object: 'STRING_VALUE' /* required */
},
InforNexus: {
object: 'STRING_VALUE' /* required */
},
Marketo: {
object: 'STRING_VALUE' /* required */
},
Pardot: {
object: 'STRING_VALUE' /* required */
},
S3: {
bucketName: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
s3InputFormatConfig: {
s3InputFileType: CSV | JSON
}
},
SAPOData: {
objectPath: 'STRING_VALUE',
paginationConfig: {
maxPageSize: 'NUMBER_VALUE' /* required */
},
parallelismConfig: {
maxParallelism: 'NUMBER_VALUE' /* required */
}
},
Salesforce: {
object: 'STRING_VALUE', /* required */
dataTransferApi: AUTOMATIC | BULKV2 | REST_SYNC,
enableDynamicFieldUpdate: true || false,
includeDeletedRecords: true || false
},
ServiceNow: {
object: 'STRING_VALUE' /* required */
},
Singular: {
object: 'STRING_VALUE' /* required */
},
Slack: {
object: 'STRING_VALUE' /* required */
},
Trendmicro: {
object: 'STRING_VALUE' /* required */
},
Veeva: {
object: 'STRING_VALUE', /* required */
documentType: 'STRING_VALUE',
includeAllVersions: true || false,
includeRenditions: true || false,
includeSourceFiles: true || false
},
Zendesk: {
object: 'STRING_VALUE' /* required */
}
},
apiVersion: 'STRING_VALUE',
connectorProfileName: 'STRING_VALUE',
incrementalPullConfig: {
datetimeTypeFieldName: 'STRING_VALUE'
}
},
tasks: [ /* required */
{
sourceFields: [ /* required */
'STRING_VALUE',
/* more items */
],
taskType: Arithmetic | Filter | Map | Map_all | Mask | Merge | Passthrough | Truncate | Validate | Partition, /* required */
connectorOperator: {
Amplitude: BETWEEN,
CustomConnector: 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,
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,
Pardot: PROJECTION | EQUAL_TO | NO_OP | ADDITION | MULTIPLICATION | DIVISION | SUBTRACTION | MASK_ALL | MASK_FIRST_N | MASK_LAST_N | VALIDATE_NON_NULL | VALIDATE_NON_ZERO | VALIDATE_NON_NEGATIVE | VALIDATE_NUMERIC,
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,
SAPOData: 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,
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_VALUE',
taskProperties: {
'<OperatorPropertiesKeys>': 'STRING_VALUE',
/* '<OperatorPropertiesKeys>': ... */
}
},
/* more items */
],
triggerConfig: { /* required */
triggerType: Scheduled | Event | OnDemand, /* required */
triggerProperties: {
Scheduled: {
scheduleExpression: 'STRING_VALUE', /* required */
dataPullMode: Incremental | Complete,
firstExecutionFrom: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
flowErrorDeactivationThreshold: 'NUMBER_VALUE',
scheduleEndTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
scheduleOffset: 'NUMBER_VALUE',
scheduleStartTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
timezone: 'STRING_VALUE'
}
}
},
clientToken: 'STRING_VALUE',
description: 'STRING_VALUE',
kmsArn: 'STRING_VALUE',
metadataCatalogConfig: {
glueDataCatalog: {
databaseName: 'STRING_VALUE', /* required */
roleArn: 'STRING_VALUE', /* required */
tablePrefix: 'STRING_VALUE' /* required */
}
},
tags: {
'<TagKey>': 'STRING_VALUE',
/* '<TagKey>': ... */
}
};
appflow.createFlow(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
flowName
— (String
)The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
description
— (String
)A description of the flow you want to create.
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.
triggerConfig
— (map
)The trigger settings that determine how and when the flow runs.
triggerType
— required — (String
)Specifies the type of flow trigger. This can be
Possible values include:OnDemand
,Scheduled
, orEvent
."Scheduled"
"Event"
"OnDemand"
triggerProperties
— (map
)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
— (map
)Specifies the configuration details of a schedule-triggered flow as defined by the user.
scheduleExpression
— required — (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.
Possible values include:"Incremental"
"Complete"
scheduleStartTime
— (Date
)The time at which the scheduled flow starts. The time is formatted as a timestamp that follows the ISO 8601 standard, such as
2022-04-26T13:00:00-07:00
.scheduleEndTime
— (Date
)The time at which the scheduled flow ends. The time is formatted as a timestamp that follows the ISO 8601 standard, such as
2022-04-27T13:00:00-07:00
.timezone
— (String
)Specifies the time zone used when referring to the dates and times of a scheduled flow, such as
America/New_York
. This time zone is only a descriptive label. It doesn't affect how Amazon AppFlow interprets the timestamps that you specify to schedule the flow.If you want to schedule a flow by using times in a particular time zone, indicate the time zone as a UTC offset in your timestamps. For example, the UTC offsets for the
America/New_York
timezone are-04:00
EDT and-05:00 EST
.scheduleOffset
— (Integer
)Specifies the optional offset that is added to the time interval for a schedule-triggered flow.
firstExecutionFrom
— (Date
)Specifies the date range for the records to import from the connector in the first flow run.
flowErrorDeactivationThreshold
— (Integer
)Defines how many times a scheduled flow fails consecutively before Amazon AppFlow deactivates it.
sourceFlowConfig
— (map
)The configuration that controls how Amazon AppFlow retrieves data from the source connector.
connectorType
— required — (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
apiVersion
— (String
)The API version of the connector when it's used as a source in the flow.
connectorProfileName
— (String
)The name of the connector profile. This name must be unique for each connector profile in the Amazon Web Services account.
sourceConnectorProperties
— required — (map
)Specifies the information that is required to query a particular source connector.
Amplitude
— (map
)Specifies the information that is required for querying Amplitude.
object
— required — (String
)The object specified in the Amplitude flow source.
Datadog
— (map
)Specifies the information that is required for querying Datadog.
object
— required — (String
)The object specified in the Datadog flow source.
Dynatrace
— (map
)Specifies the information that is required for querying Dynatrace.
object
— required — (String
)The object specified in the Dynatrace flow source.
GoogleAnalytics
— (map
)Specifies the information that is required for querying Google Analytics.
object
— required — (String
)The object specified in the Google Analytics flow source.
InforNexus
— (map
)Specifies the information that is required for querying Infor Nexus.
object
— required — (String
)The object specified in the Infor Nexus flow source.
Marketo
— (map
)Specifies the information that is required for querying Marketo.
object
— required — (String
)The object specified in the Marketo flow source.
S3
— (map
)Specifies the information that is required for querying Amazon S3.
bucketName
— required — (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.
s3InputFormatConfig
— (map
)When you use Amazon S3 as the source, the configuration format that you provide the flow input data.
s3InputFileType
— (String
)The file type that Amazon AppFlow gets from your Amazon S3 bucket.
Possible values include:"CSV"
"JSON"
Salesforce
— (map
)Specifies the information that is required for querying Salesforce.
object
— required — (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.
dataTransferApi
— (String
)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.
"AUTOMATIC"
"BULKV2"
"REST_SYNC"
ServiceNow
— (map
)Specifies the information that is required for querying ServiceNow.
object
— required — (String
)The object specified in the ServiceNow flow source.
Singular
— (map
)Specifies the information that is required for querying Singular.
object
— required — (String
)The object specified in the Singular flow source.
Slack
— (map
)Specifies the information that is required for querying Slack.
object
— required — (String
)The object specified in the Slack flow source.
Trendmicro
— (map
)Specifies the information that is required for querying Trend Micro.
object
— required — (String
)The object specified in the Trend Micro flow source.
Veeva
— (map
)Specifies the information that is required for querying Veeva.
object
— required — (String
)The object specified in the Veeva flow source.
documentType
— (String
)The document type specified in the Veeva document extract flow.
includeSourceFiles
— (Boolean
)Boolean value to include source files in Veeva document extract flow.
includeRenditions
— (Boolean
)Boolean value to include file renditions in Veeva document extract flow.
includeAllVersions
— (Boolean
)Boolean value to include All Versions of files in Veeva document extract flow.
Zendesk
— (map
)Specifies the information that is required for querying Zendesk.
object
— required — (String
)The object specified in the Zendesk flow source.
SAPOData
— (map
)The properties that are applied when using SAPOData as a flow source.
objectPath
— (String
)The object path specified in the SAPOData flow source.
parallelismConfig
— (map
)Sets the number of concurrent processes that transfers OData records from your SAP instance.
maxParallelism
— required — (Integer
)The maximum number of processes that Amazon AppFlow runs at the same time when it retrieves your data from your SAP application.
paginationConfig
— (map
)Sets the page size for each concurrent process that transfers OData records from your SAP instance.
maxPageSize
— required — (Integer
)The maximum number of records that Amazon AppFlow receives in each page of the response from your SAP application. For transfers of OData records, the maximum page size is 3,000. For transfers of data that comes from an ODP provider, the maximum page size is 10,000.
CustomConnector
— (map
)The properties that are applied when the custom connector is being used as a source.
entityName
— required — (String
)The entity specified in the custom connector as a source in the flow.
customProperties
— (map<String>
)Custom properties that are required to use the custom connector as a source.
dataTransferApi
— (map
)The API of the connector application that Amazon AppFlow uses to transfer your data.
Name
— (String
)The name of the connector application API.
Type
— (String
)You can specify one of the following types:
- AUTOMATIC
-
The default. Optimizes a flow for datasets that fluctuate in size from small to large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type based on the amount of data that the run transfers.
- SYNC
-
A synchronous API. This type of API optimizes a flow for small to medium-sized datasets.
- ASYNC
-
An asynchronous API. This type of API optimizes a flow for large datasets.
"SYNC"
"ASYNC"
"AUTOMATIC"
Pardot
— (map
)Specifies the information that is required for querying Salesforce Pardot.
object
— required — (String
)The object specified in the Salesforce Pardot flow source.
incrementalPullConfig
— (map
)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
— (Array<map>
)The configuration that controls how Amazon AppFlow places data in the destination connector.
connectorType
— required — (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
apiVersion
— (String
)The API version that the destination connector uses.
connectorProfileName
— (String
)The name of the connector profile. This name must be unique for each connector profile in the Amazon Web Services account.
destinationConnectorProperties
— required — (map
)This stores the information that is required to query a particular connector.
Redshift
— (map
)The properties required to query Amazon Redshift.
object
— required — (String
)The object specified in the Amazon Redshift flow destination.
intermediateBucketName
— required — (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
— (map
)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
— (map
)The properties required to query Amazon S3.
bucketName
— required — (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
— (map
)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.
Possible values include:"CSV"
"JSON"
"PARQUET"
prefixConfig
— (map
)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 format of the prefix, and whether it applies to the file name, file path, or both.
Possible values include:"FILENAME"
"PATH"
"PATH_AND_FILENAME"
prefixFormat
— (String
)Determines the level of granularity for the date and time that's included in the prefix.
Possible values include:"YEAR"
"MONTH"
"DAY"
"HOUR"
"MINUTE"
pathPrefixHierarchy
— (Array<String>
)Specifies whether the destination file path includes either or both of the following elements:
- EXECUTION_ID
-
The ID that Amazon AppFlow assigns to the flow run.
- SCHEMA_VERSION
-
The version number of your data schema. Amazon AppFlow assigns this version number. The version number increases by one when you change any of the following settings in your flow configuration:
-
Source-to-destination field mappings
-
Field data types
-
Partition keys
-
aggregationConfig
— (map
)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.
Possible values include:"None"
"SingleFile"
targetFileSize
— (Integer
)The desired file size, in MB, for each output file that Amazon AppFlow writes to the flow destination. For each file, Amazon AppFlow attempts to achieve the size that you specify. The actual file sizes might differ from this target based on the number and size of the records that each file contains.
preserveSourceDataTyping
— (Boolean
)If your file output format is Parquet, use this parameter to set whether Amazon AppFlow preserves the data types in your source data when it writes the output to Amazon S3.
-
true
: Amazon AppFlow preserves the data types when it writes to Amazon S3. For example, an integer or1
in your source data is still an integer in your output. -
false
: Amazon AppFlow converts all of the source data into strings when it writes to Amazon S3. For example, an integer of1
in your source data becomes the string"1"
in the output.
-
Salesforce
— (map
)The properties required to query Salesforce.
object
— required — (String
)The object specified in the Salesforce flow destination.
idFieldNames
— (Array<String>
)The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update or delete.
errorHandlingConfig
— (map
)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
Possible values include:UPSERT
, thenidFieldNames
is required."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
dataTransferApi
— (String
)Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce.
- AUTOMATIC
-
The default. Amazon AppFlow selects which API to use based on the number of records that your flow transfers to Salesforce. If your flow transfers fewer than 1,000 records, Amazon AppFlow uses Salesforce REST API. If your flow transfers 1,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 records, and it might use Bulk API 2.0 on the next day to transfer 1,100 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 with a timed out error.
"AUTOMATIC"
"BULKV2"
"REST_SYNC"
Snowflake
— (map
)The properties required to query Snowflake.
object
— required — (String
)The object specified in the Snowflake flow destination.
intermediateBucketName
— required — (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
— (map
)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
— (map
)The properties required to query Amazon EventBridge.
object
— required — (String
)The object specified in the Amazon EventBridge flow destination.
errorHandlingConfig
— (map
)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.
LookoutMetrics
— (map
)The properties required to query Amazon Lookout for Metrics.
Upsolver
— (map
)The properties required to query Upsolver.
bucketName
— required — (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
— required — (map
)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.
Possible values include:"CSV"
"JSON"
"PARQUET"
prefixConfig
— required — (map
)Specifies elements that Amazon AppFlow includes in the file and folder names in the flow destination.
prefixType
— (String
)Determines the format of the prefix, and whether it applies to the file name, file path, or both.
Possible values include:"FILENAME"
"PATH"
"PATH_AND_FILENAME"
prefixFormat
— (String
)Determines the level of granularity for the date and time that's included in the prefix.
Possible values include:"YEAR"
"MONTH"
"DAY"
"HOUR"
"MINUTE"
pathPrefixHierarchy
— (Array<String>
)Specifies whether the destination file path includes either or both of the following elements:
- EXECUTION_ID
-
The ID that Amazon AppFlow assigns to the flow run.
- SCHEMA_VERSION
-
The version number of your data schema. Amazon AppFlow assigns this version number. The version number increases by one when you change any of the following settings in your flow configuration:
-
Source-to-destination field mappings
-
Field data types
-
Partition keys
-
aggregationConfig
— (map
)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.
Possible values include:"None"
"SingleFile"
targetFileSize
— (Integer
)The desired file size, in MB, for each output file that Amazon AppFlow writes to the flow destination. For each file, Amazon AppFlow attempts to achieve the size that you specify. The actual file sizes might differ from this target based on the number and size of the records that each file contains.
Honeycode
— (map
)The properties required to query Amazon Honeycode.
object
— required — (String
)The object specified in the Amazon Honeycode flow destination.
errorHandlingConfig
— (map
)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.
CustomerProfiles
— (map
)The properties required to query Amazon Connect Customer Profiles.
domainName
— required — (String
)The unique name of the Amazon Connect Customer Profiles domain.
objectTypeName
— (String
)The object specified in the Amazon Connect Customer Profiles flow destination.
Zendesk
— (map
)The properties required to query Zendesk.
object
— required — (String
)The object specified in the Zendesk flow destination.
idFieldNames
— (Array<String>
)A list of field names that can be used as an ID field when performing a write operation.
errorHandlingConfig
— (map
)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.
writeOperationType
— (String
)The possible write operations in the destination connector. When this value is not provided, this defaults to the
Possible values include:INSERT
operation."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
Marketo
— (map
)The properties required to query Marketo.
object
— required — (String
)The object specified in the Marketo flow destination.
errorHandlingConfig
— (map
)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.
CustomConnector
— (map
)The properties that are required to query the custom Connector.
entityName
— required — (String
)The entity specified in the custom connector as a destination in the flow.
errorHandlingConfig
— (map
)The settings that determine how Amazon AppFlow handles an error when placing data in the custom connector as destination.
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
)Specifies the type of write operation to be performed in the custom connector when it's used as destination.
Possible values include:"INSERT"
"UPSERT"
"UPDATE"
"DELETE"
idFieldNames
— (Array<String>
)The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update, delete, or upsert.
customProperties
— (map<String>
)The custom properties that are specific to the connector when it's used as a destination in the flow.
SAPOData
— (map
)The properties required to query SAPOData.
objectPath
— required — (String
)The object path specified in the SAPOData flow destination.
successResponseHandlingConfig
— (map
)Determines how Amazon AppFlow handles the success response that it gets from the connector after placing data.
For example, this setting would determine where to write the response from a destination connector upon a successful insert operation.
bucketPrefix
— (String
)The Amazon S3 bucket prefix.
bucketName
— (String
)The name of the Amazon S3 bucket.
idFieldNames
— (Array<String>
)A list of field names that can be used as an ID field when performing a write operation.
errorHandlingConfig
— (map
)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.
writeOperationType
— (String
)The possible write operations in the destination connector. When this value is not provided, this defaults to the
Possible values include:INSERT
operation."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
tasks
— (Array<map>
)A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.
sourceFields
— required — (Array<String>
)The source fields to which a particular task is applied.
connectorOperator
— (map
)The operation to be performed on the provided source fields.
Amplitude
— (String
)The operation to be performed on the provided Amplitude source fields.
Possible values include:"BETWEEN"
Datadog
— (String
)The operation to be performed on the provided Datadog source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Dynatrace source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Google Analytics source fields.
Possible values include:"PROJECTION"
"BETWEEN"
InforNexus
— (String
)The operation to be performed on the provided Infor Nexus source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Marketo source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Amazon S3 source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Salesforce source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided ServiceNow source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Singular source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Slack source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Trend Micro source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Veeva source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Zendesk source fields.
Possible values include:"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"
SAPOData
— (String
)The operation to be performed on the provided SAPOData source fields.
Possible values include:"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"
CustomConnector
— (String
)Operators supported by the custom connector.
Possible values include:"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"
Pardot
— (String
)The operation to be performed on the provided Salesforce Pardot source fields.
Possible values include:"PROJECTION"
"EQUAL_TO"
"NO_OP"
"ADDITION"
"MULTIPLICATION"
"DIVISION"
"SUBTRACTION"
"MASK_ALL"
"MASK_FIRST_N"
"MASK_LAST_N"
"VALIDATE_NON_NULL"
"VALIDATE_NON_ZERO"
"VALIDATE_NON_NEGATIVE"
"VALIDATE_NUMERIC"
destinationField
— (String
)A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.
taskType
— required — (String
)Specifies the particular task implementation that Amazon AppFlow performs.
Possible values include:"Arithmetic"
"Filter"
"Map"
"Map_all"
"Mask"
"Merge"
"Passthrough"
"Truncate"
"Validate"
"Partition"
taskProperties
— (map<String>
)A map used to store task-related information. The execution service looks for particular information based on the
TaskType
.
tags
— (map<String>
)The tags used to organize, track, or control access for your flow.
metadataCatalogConfig
— (map
)Specifies the configuration that Amazon AppFlow uses when it catalogs the data that's transferred by the associated flow. When Amazon AppFlow catalogs the data from a flow, it stores metadata in a data catalog.
glueDataCatalog
— (map
)Specifies the configuration that Amazon AppFlow uses when it catalogs your data with the Glue Data Catalog.
roleArn
— required — (String
)The Amazon Resource Name (ARN) of an IAM role that grants Amazon AppFlow the permissions it needs to create Data Catalog tables, databases, and partitions.
For an example IAM policy that has the required permissions, see Identity-based policy examples for Amazon AppFlow.
databaseName
— required — (String
)The name of the Data Catalog database that stores the metadata tables that Amazon AppFlow creates in your Amazon Web Services account. These tables contain metadata for the data that's transferred by the flow that you configure with this parameter.
Note: When you configure a new flow with this parameter, you must specify an existing database.tablePrefix
— required — (String
)A naming prefix for each Data Catalog table that Amazon AppFlow creates for the flow that you configure with this setting. Amazon AppFlow adds the prefix to the beginning of the each table name.
clientToken
— (String
)The
clientToken
parameter is an idempotency token. It ensures that yourCreateFlow
request completes only once. You choose the value to pass. For example, if you don't receive a response from your request, you can safely retry the request with the sameclientToken
parameter value.If you omit a
clientToken
value, the Amazon Web Services SDK that you are using inserts a value for you. This way, the SDK can safely retry requests multiple times after a network error. You must provide your own value for other use cases.If you specify input parameters that differ from your first request, an error occurs. If you use a different value for
If a token is not provided, the SDK will use a version 4 UUID.clientToken
, Amazon AppFlow considers it a new call toCreateFlow
. The token is active for 8 hours.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:flowArn
— (String
)The flow's Amazon Resource Name (ARN).
flowStatus
— (String
)Indicates the current status of the flow.
Possible values include:"Active"
"Deprecated"
"Deleted"
"Draft"
"Errored"
"Suspended"
-
(AWS.Response)
—
Returns:
deleteConnectorProfile(params = {}, callback) ⇒ AWS.Request
Enables you to delete an existing connector profile.
Service Reference:
Examples:
Calling the deleteConnectorProfile operation
var params = {
connectorProfileName: 'STRING_VALUE', /* required */
forceDelete: true || false
};
appflow.deleteConnectorProfile(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorProfileName
— (String
)The name of the connector profile. The name is unique for each
ConnectorProfile
in your account.forceDelete
— (Boolean
)Indicates whether Amazon AppFlow should delete the profile, even if it is currently in use in one or more flows.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs.
-
(AWS.Response)
—
Returns:
deleteFlow(params = {}, callback) ⇒ AWS.Request
Enables your application to delete an existing flow. Before deleting the flow, Amazon AppFlow validates the request by checking the flow configuration and status. You can delete flows one at a time.
Service Reference:
Examples:
Calling the deleteFlow operation
var params = {
flowName: 'STRING_VALUE', /* required */
forceDelete: true || false
};
appflow.deleteFlow(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
flowName
— (String
)The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
forceDelete
— (Boolean
)Indicates whether Amazon AppFlow should delete the flow, even if it is currently in use.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs.
-
(AWS.Response)
—
Returns:
describeConnector(params = {}, callback) ⇒ AWS.Request
Describes the given custom connector registered in your Amazon Web Services account. This API can be used for custom connectors that are registered in your account and also for Amazon authored connectors.
Service Reference:
Examples:
Calling the describeConnector operation
var params = {
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot, /* required */
connectorLabel: 'STRING_VALUE'
};
appflow.describeConnector(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorType
— (String
)The connector type, such as CUSTOMCONNECTOR, Saleforce, Marketo. Please choose CUSTOMCONNECTOR for Lambda based custom connectors.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorLabel
— (String
)The label of the connector. The label is unique for each
ConnectorRegistration
in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR connector type/.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorConfiguration
— (map
)Configuration info of all the connectors that the user requested.
canUseAsSource
— (Boolean
)Specifies whether the connector can be used as a source.
canUseAsDestination
— (Boolean
)Specifies whether the connector can be used as a destination.
supportedDestinationConnectors
— (Array<String>
)Lists the connectors that are available for use as destinations.
supportedSchedulingFrequencies
— (Array<String>
)Specifies the supported flow frequency for that connector.
isPrivateLinkEnabled
— (Boolean
)Specifies if PrivateLink is enabled for that connector.
isPrivateLinkEndpointUrlRequired
— (Boolean
)Specifies if a PrivateLink endpoint URL is required.
supportedTriggerTypes
— (Array<String>
)Specifies the supported trigger types for the flow.
connectorMetadata
— (map
)Specifies connector-specific metadata such as
oAuthScopes
,supportedRegions
,privateLinkServiceUrl
, and so on.Amplitude
— (map
)The connector metadata specific to Amplitude.
Datadog
— (map
)The connector metadata specific to Datadog.
Dynatrace
— (map
)The connector metadata specific to Dynatrace.
GoogleAnalytics
— (map
)The connector metadata specific to Google Analytics.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Google Analytics account.
InforNexus
— (map
)The connector metadata specific to Infor Nexus.
Marketo
— (map
)The connector metadata specific to Marketo.
Redshift
— (map
)The connector metadata specific to Amazon Redshift.
S3
— (map
)The connector metadata specific to Amazon S3.
Salesforce
— (map
)The connector metadata specific to Salesforce.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Salesforce account.
dataTransferApis
— (Array<String>
)The Salesforce APIs that you can have Amazon AppFlow use when your flows transfers data to or from Salesforce.
oauth2GrantTypesSupported
— (Array<String>
)The OAuth 2.0 grant types that Amazon AppFlow can use when it requests an access token from Salesforce. Amazon AppFlow requires an access token each time it attempts to access your Salesforce records.
- AUTHORIZATION_CODE
-
Amazon AppFlow passes an authorization code when it requests the access token from Salesforce. Amazon AppFlow receives the authorization code from Salesforce after you log in to your Salesforce account and authorize Amazon AppFlow to access your records.
- CLIENT_CREDENTIALS
-
Amazon AppFlow passes client credentials (a client ID and client secret) when it requests the access token from Salesforce. You provide these credentials to Amazon AppFlow when you define the connection to your Salesforce account.
- JWT_BEARER
-
Amazon AppFlow passes a JSON web token (JWT) when it requests the access token from Salesforce. You provide the JWT to Amazon AppFlow when you define the connection to your Salesforce account. When you use this grant type, you don't need to log in to your Salesforce account to authorize Amazon AppFlow to access your records.
ServiceNow
— (map
)The connector metadata specific to ServiceNow.
Singular
— (map
)The connector metadata specific to Singular.
Slack
— (map
)The connector metadata specific to Slack.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Slack account.
Snowflake
— (map
)The connector metadata specific to Snowflake.
supportedRegions
— (Array<String>
)Specifies the supported Amazon Web Services Regions when using Snowflake.
Trendmicro
— (map
)The connector metadata specific to Trend Micro.
Veeva
— (map
)The connector metadata specific to Veeva.
Zendesk
— (map
)The connector metadata specific to Zendesk.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Zendesk account.
EventBridge
— (map
)The connector metadata specific to Amazon EventBridge.
Upsolver
— (map
)The connector metadata specific to Upsolver.
CustomerProfiles
— (map
)The connector metadata specific to Amazon Connect Customer Profiles.
Honeycode
— (map
)The connector metadata specific to Amazon Honeycode.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Amazon Honeycode account.
SAPOData
— (map
)The connector metadata specific to SAPOData.
Pardot
— (map
)The connector metadata specific to Salesforce Pardot.
connectorType
— (String
)The connector type.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorLabel
— (String
)The label used for registering the connector.
connectorDescription
— (String
)A description about the connector.
connectorOwner
— (String
)The owner who developed the connector.
connectorName
— (String
)The connector name.
connectorVersion
— (String
)The connector version.
connectorArn
— (String
)The Amazon Resource Name (ARN) for the registered connector.
connectorModes
— (Array<String>
)The connection modes that the connector supports.
authenticationConfig
— (map
)The authentication config required for the connector.
isBasicAuthSupported
— (Boolean
)Indicates whether basic authentication is supported by the connector.
isApiKeyAuthSupported
— (Boolean
)Indicates whether API key authentication is supported by the connector
isOAuth2Supported
— (Boolean
)Indicates whether OAuth 2.0 authentication is supported by the connector.
isCustomAuthSupported
— (Boolean
)Indicates whether custom authentication is supported by the connector
oAuth2Defaults
— (map
)Contains the default values required for OAuth 2.0 authentication.
oauthScopes
— (Array<String>
)OAuth 2.0 scopes that the connector supports.
tokenUrls
— (Array<String>
)Token URLs that can be used for OAuth 2.0 authentication.
authCodeUrls
— (Array<String>
)Auth code URLs that can be used for OAuth 2.0 authentication.
oauth2GrantTypesSupported
— (Array<String>
)OAuth 2.0 grant types supported by the connector.
oauth2CustomProperties
— (Array<map>
)List of custom parameters required for OAuth 2.0 authentication.
key
— (String
)The key of the custom parameter required for OAuth 2.0 authentication.
isRequired
— (Boolean
)Indicates whether the custom parameter for OAuth 2.0 authentication is required.
label
— (String
)The label of the custom parameter used for OAuth 2.0 authentication.
description
— (String
)A description about the custom parameter used for OAuth 2.0 authentication.
isSensitiveField
— (Boolean
)Indicates whether this authentication custom parameter is a sensitive field.
connectorSuppliedValues
— (Array<String>
)Contains default values for this authentication parameter that are supplied by the connector.
type
— (String
)Indicates whether custom parameter is used with TokenUrl or AuthUrl.
Possible values include:"TOKEN_URL"
"AUTH_URL"
customAuthConfigs
— (Array<map>
)Contains information required for custom authentication.
customAuthenticationType
— (String
)The authentication type that the custom connector uses.
authParameters
— (Array<map>
)Information about authentication parameters required for authentication.
key
— (String
)The authentication key required to authenticate with the connector.
isRequired
— (Boolean
)Indicates whether this authentication parameter is required.
label
— (String
)Label used for authentication parameter.
description
— (String
)A description about the authentication parameter.
isSensitiveField
— (Boolean
)Indicates whether this authentication parameter is a sensitive field.
connectorSuppliedValues
— (Array<String>
)Contains default values for this authentication parameter that are supplied by the connector.
connectorRuntimeSettings
— (Array<map>
)The required connector runtime settings.
key
— (String
)Contains value information about the connector runtime setting.
dataType
— (String
)Data type of the connector runtime setting.
isRequired
— (Boolean
)Indicates whether this connector runtime setting is required.
label
— (String
)A label used for connector runtime setting.
description
— (String
)A description about the connector runtime setting.
scope
— (String
)Indicates the scope of the connector runtime setting.
connectorSuppliedValueOptions
— (Array<String>
)Contains default values for the connector runtime setting that are supplied by the connector.
supportedApiVersions
— (Array<String>
)A list of API versions that are supported by the connector.
supportedOperators
— (Array<String>
)A list of operators supported by the connector.
supportedWriteOperations
— (Array<String>
)A list of write operations supported by the connector.
connectorProvisioningType
— (String
)The provisioning type used to register the connector.
Possible values include:"LAMBDA"
connectorProvisioningConfig
— (map
)The configuration required for registering the connector.
lambda
— (map
)Contains information about the configuration of the lambda which is being registered as the connector.
lambdaArn
— required — (String
)Lambda ARN of the connector being registered.
logoURL
— (String
)Logo URL of the connector.
registeredAt
— (Date
)The date on which the connector was registered.
registeredBy
— (String
)Information about who registered the connector.
supportedDataTransferTypes
— (Array<String>
)The data transfer types that the connector supports.
- RECORD
-
Structured records.
- FILE
-
Files or binary data.
supportedDataTransferApis
— (Array<map>
)The APIs of the connector application that Amazon AppFlow can use to transfer your data.
Name
— (String
)The name of the connector application API.
Type
— (String
)You can specify one of the following types:
- AUTOMATIC
-
The default. Optimizes a flow for datasets that fluctuate in size from small to large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type based on the amount of data that the run transfers.
- SYNC
-
A synchronous API. This type of API optimizes a flow for small to medium-sized datasets.
- ASYNC
-
An asynchronous API. This type of API optimizes a flow for large datasets.
"SYNC"
"ASYNC"
"AUTOMATIC"
-
(AWS.Response)
—
Returns:
describeConnectorEntity(params = {}, callback) ⇒ AWS.Request
Provides details regarding the entity used with the connector, with a description of the data model for each field in that entity.
Service Reference:
Examples:
Calling the describeConnectorEntity operation
var params = {
connectorEntityName: 'STRING_VALUE', /* required */
apiVersion: 'STRING_VALUE',
connectorProfileName: 'STRING_VALUE',
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot
};
appflow.describeConnectorEntity(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorEntityName
— (String
)The entity name for that connector.
connectorType
— (String
)The type of connector application, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorProfileName
— (String
)The name of the connector profile. The name is unique for each
ConnectorProfile
in the Amazon Web Services account.apiVersion
— (String
)The version of the API that's used by the connector.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorEntityFields
— (Array<map>
)Describes the fields for that connector entity. For example, for an account entity, the fields would be account name, account ID, and so on.
identifier
— required — (String
)The unique identifier of the connector field.
parentIdentifier
— (String
)The parent identifier of the connector field.
label
— (String
)The label applied to a connector entity field.
isPrimaryKey
— (Boolean
)Booelan value that indicates whether this field can be used as a primary key.
defaultValue
— (String
)Default value that can be assigned to this field.
isDeprecated
— (Boolean
)Booelan value that indicates whether this field is deprecated or not.
supportedFieldTypeDetails
— (map
)Contains details regarding the supported
FieldType
, including the correspondingfilterOperators
andsupportedValues
.v1
— required — (map
)The initial supported version for
fieldType
. If this is later changed to a different version, v2 will be introduced.fieldType
— required — (String
)The type of field, such as string, integer, date, and so on.
filterOperators
— required — (Array<String>
)The list of operators supported by a field.
supportedValues
— (Array<String>
)The list of values that a field can contain. For example, a Boolean
fieldType
can have two values: "true" and "false".valueRegexPattern
— (String
)The regular expression pattern for the field name.
supportedDateFormat
— (String
)The date format that the field supports.
fieldValueRange
— (map
)The range of values this field can hold.
maximum
— (Float
)Maximum value supported by the field.
minimum
— (Float
)Minimum value supported by the field.
fieldLengthRange
— (map
)This is the allowable length range for this field's value.
maximum
— (Float
)Maximum value supported by the field.
minimum
— (Float
)Minimum value supported by the field.
description
— (String
)A description of the connector entity field.
sourceProperties
— (map
)The properties that can be applied to a field when the connector is being used as a source.
isRetrievable
— (Boolean
)Indicates whether the field can be returned in a search result.
isQueryable
— (Boolean
)Indicates if the field can be queried.
isTimestampFieldForIncrementalQueries
— (Boolean
)Indicates if this timestamp field can be used for incremental queries.
destinationProperties
— (map
)The properties applied to a field when the connector is being used as a destination.
isCreatable
— (Boolean
)Specifies if the destination field can be created by the current user.
isNullable
— (Boolean
)Specifies if the destination field can have a null value.
isUpsertable
— (Boolean
)Specifies if the flow run can either insert new rows in the destination field if they do not already exist, or update them if they do.
isUpdatable
— (Boolean
)Specifies whether the field can be updated during an
UPDATE
orUPSERT
write operation.isDefaultedOnCreate
— (Boolean
)Specifies whether the field can use the default value during a Create operation.
supportedWriteOperations
— (Array<String>
)A list of supported write operations. For each write operation listed, this field can be used in
idFieldNames
when that write operation is present as a destination option.
customProperties
— (map<String>
)A map that has specific properties related to the ConnectorEntityField.
-
(AWS.Response)
—
Returns:
describeConnectorProfiles(params = {}, callback) ⇒ AWS.Request
Returns a list of connector-profile
details matching the provided connector-profile
names and connector-types
. Both input lists are optional, and you can use them to filter the result.
If no names or connector-types
are provided, returns all connector profiles in a paginated form. If there is no match, this operation returns an empty list.
Service Reference:
Examples:
Calling the describeConnectorProfiles operation
var params = {
connectorLabel: 'STRING_VALUE',
connectorProfileNames: [
'STRING_VALUE',
/* more items */
],
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot,
maxResults: 'NUMBER_VALUE',
nextToken: 'STRING_VALUE'
};
appflow.describeConnectorProfiles(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorProfileNames
— (Array<String>
)The name of the connector profile. The name is unique for each
ConnectorProfile
in the Amazon Web Services account.connectorType
— (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorLabel
— (String
)The name of the connector. The name is unique for each
ConnectorRegistration
in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR connector type/.maxResults
— (Integer
)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).nextToken
— (String
)The pagination token for the next page of data.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorProfileDetails
— (Array<map>
)Returns information about the connector profiles associated with the flow.
connectorProfileArn
— (String
)The Amazon Resource Name (ARN) of the connector profile.
connectorProfileName
— (String
)The name of the connector profile. The name is unique for each
ConnectorProfile
in the Amazon Web Services account.connectorType
— (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorLabel
— (String
)The label for the connector profile being created.
connectionMode
— (String
)Indicates the connection mode and if it is public or private.
Possible values include:"Public"
"Private"
credentialsArn
— (String
)The Amazon Resource Name (ARN) of the connector profile credentials.
connectorProfileProperties
— (map
)The connector-specific properties of the profile configuration.
Amplitude
— (map
)The connector-specific properties required by Amplitude.
Datadog
— (map
)The connector-specific properties required by Datadog.
instanceUrl
— required — (String
)The location of the Datadog resource.
Dynatrace
— (map
)The connector-specific properties required by Dynatrace.
instanceUrl
— required — (String
)The location of the Dynatrace resource.
GoogleAnalytics
— (map
)The connector-specific properties required Google Analytics.
Honeycode
— (map
)The connector-specific properties required by Amazon Honeycode.
InforNexus
— (map
)The connector-specific properties required by Infor Nexus.
instanceUrl
— required — (String
)The location of the Infor Nexus resource.
Marketo
— (map
)The connector-specific properties required by Marketo.
instanceUrl
— required — (String
)The location of the Marketo resource.
Redshift
— (map
)The connector-specific properties required by Amazon Redshift.
databaseUrl
— (String
)The JDBC URL of the Amazon Redshift cluster.
bucketName
— required — (String
)A name for the associated Amazon S3 bucket.
bucketPrefix
— (String
)The object key for the destination bucket in which Amazon AppFlow places the files.
roleArn
— required — (String
)The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift read-only access to Amazon S3. For more information, and for the polices that you attach to this role, see Allow Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
dataApiRoleArn
— (String
)The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to access your Amazon Redshift database through the Data API. For more information, and for the polices that you attach to this role, see Allow Amazon AppFlow to access Amazon Redshift databases with the Data API.
isRedshiftServerless
— (Boolean
)Indicates whether the connector profile defines a connection to an Amazon Redshift Serverless data warehouse.
clusterIdentifier
— (String
)The unique ID that's assigned to an Amazon Redshift cluster.
workgroupName
— (String
)The name of an Amazon Redshift workgroup.
databaseName
— (String
)The name of an Amazon Redshift database.
Salesforce
— (map
)The connector-specific properties required by Salesforce.
instanceUrl
— (String
)The location of the Salesforce resource.
isSandboxEnvironment
— (Boolean
)Indicates whether the connector profile applies to a sandbox or production environment.
usePrivateLinkForMetadataAndAuthorization
— (Boolean
)If the connection mode for the connector profile is private, this parameter sets whether Amazon AppFlow uses the private network to send metadata and authorization calls to Salesforce. Amazon AppFlow sends private calls through Amazon Web Services PrivateLink. These calls travel through Amazon Web Services infrastructure without being exposed to the public internet.
Set either of the following values:
- true
-
Amazon AppFlow sends all calls to Salesforce over the private network.
These private calls are:
-
Calls to get metadata about your Salesforce records. This metadata describes your Salesforce objects and their fields.
-
Calls to get or refresh access tokens that allow Amazon AppFlow to access your Salesforce records.
-
Calls to transfer your Salesforce records as part of a flow run.
-
- false
-
The default value. Amazon AppFlow sends some calls to Salesforce privately and other calls over the public internet.
The public calls are:
-
Calls to get metadata about your Salesforce records.
-
Calls to get or refresh access tokens.
The private calls are:
-
Calls to transfer your Salesforce records as part of a flow run.
-
ServiceNow
— (map
)The connector-specific properties required by serviceNow.
instanceUrl
— required — (String
)The location of the ServiceNow resource.
Singular
— (map
)The connector-specific properties required by Singular.
Slack
— (map
)The connector-specific properties required by Slack.
instanceUrl
— required — (String
)The location of the Slack resource.
Snowflake
— (map
)The connector-specific properties required by Snowflake.
warehouse
— required — (String
)The name of the Snowflake warehouse.
stage
— required — (String
)The name of the Amazon S3 stage that was created while setting up an Amazon S3 stage in the Snowflake account. This is written in the following format: < Database>< Schema><Stage Name>.
bucketName
— required — (String
)The name of the Amazon S3 bucket associated with Snowflake.
bucketPrefix
— (String
)The bucket path that refers to the Amazon S3 bucket associated with Snowflake.
privateLinkServiceName
— (String
)The Snowflake Private Link service name to be used for private data transfers.
accountName
— (String
)The name of the account.
region
— (String
)The Amazon Web Services Region of the Snowflake account.
Trendmicro
— (map
)The connector-specific properties required by Trend Micro.
Veeva
— (map
)The connector-specific properties required by Veeva.
instanceUrl
— required — (String
)The location of the Veeva resource.
Zendesk
— (map
)The connector-specific properties required by Zendesk.
instanceUrl
— required — (String
)The location of the Zendesk resource.
SAPOData
— (map
)The connector-specific profile properties required when using SAPOData.
applicationHostUrl
— required — (String
)The location of the SAPOData resource.
applicationServicePath
— required — (String
)The application path to catalog service.
portNumber
— required — (Integer
)The port number of the SAPOData instance.
clientNumber
— required — (String
)The client number for the client creating the connection.
logonLanguage
— (String
)The logon language of SAPOData instance.
privateLinkServiceName
— (String
)The SAPOData Private Link service name to be used for private data transfers.
oAuthProperties
— (map
)The SAPOData OAuth properties required for OAuth type authentication.
tokenUrl
— required — (String
)The token url required to fetch access/refresh tokens using authorization code and also to refresh expired access token using refresh token.
authCodeUrl
— required — (String
)The authorization code url required to redirect to SAP Login Page to fetch authorization code for OAuth type authentication.
oAuthScopes
— required — (Array<String>
)The OAuth scopes required for OAuth type authentication.
disableSSO
— (Boolean
)If you set this parameter to
true
, Amazon AppFlow bypasses the single sign-on (SSO) settings in your SAP account when it accesses your SAP OData instance.Whether you need this option depends on the types of credentials that you applied to your SAP OData connection profile. If your profile uses basic authentication credentials, SAP SSO can prevent Amazon AppFlow from connecting to your account with your username and password. In this case, bypassing SSO makes it possible for Amazon AppFlow to connect successfully. However, if your profile uses OAuth credentials, this parameter has no affect.
CustomConnector
— (map
)The properties required by the custom connector.
profileProperties
— (map<String>
)A map of properties that are required to create a profile for the custom connector.
oAuth2Properties
— (map
)The OAuth 2.0 properties required for OAuth 2.0 authentication.
tokenUrl
— required — (String
)The token URL required for OAuth 2.0 authentication.
oAuth2GrantType
— required — (String
)The OAuth 2.0 grant type used by connector for OAuth 2.0 authentication.
Possible values include:"CLIENT_CREDENTIALS"
"AUTHORIZATION_CODE"
"JWT_BEARER"
tokenUrlCustomProperties
— (map<String>
)Associates your token URL with a map of properties that you define. Use this parameter to provide any additional details that the connector requires to authenticate your request.
Pardot
— (map
)The connector-specific properties required by Salesforce Pardot.
instanceUrl
— (String
)The location of the Salesforce Pardot resource.
isSandboxEnvironment
— (Boolean
)Indicates whether the connector profile applies to a sandbox or production environment.
businessUnitId
— (String
)The business unit id of Salesforce Pardot instance.
createdAt
— (Date
)Specifies when the connector profile was created.
lastUpdatedAt
— (Date
)Specifies when the connector profile was last updated.
privateConnectionProvisioningState
— (map
)Specifies the private connection provisioning state.
status
— (String
)Specifies the private connection provisioning status.
Possible values include:"FAILED"
"PENDING"
"CREATED"
failureMessage
— (String
)Specifies the private connection provisioning failure reason.
failureCause
— (String
)Specifies the private connection provisioning failure cause.
Possible values include:"CONNECTOR_AUTHENTICATION"
"CONNECTOR_SERVER"
"INTERNAL_SERVER"
"ACCESS_DENIED"
"VALIDATION"
nextToken
— (String
)The pagination token for the next page of data. If
nextToken=null
, this means that all records have been fetched.
-
(AWS.Response)
—
Returns:
describeConnectors(params = {}, callback) ⇒ AWS.Request
Describes the connectors vended by Amazon AppFlow for specified connector types. If you don't specify a connector type, this operation describes all connectors vended by Amazon AppFlow. If there are more connectors than can be returned in one page, the response contains a nextToken
object, which can be be passed in to the next call to the DescribeConnectors
API operation to retrieve the next page.
Service Reference:
Examples:
Calling the describeConnectors operation
var params = {
connectorTypes: [
Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot,
/* more items */
],
maxResults: 'NUMBER_VALUE',
nextToken: 'STRING_VALUE'
};
appflow.describeConnectors(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorTypes
— (Array<String>
)The type of connector, such as Salesforce, Amplitude, and so on.
maxResults
— (Integer
)The maximum number of items that should be returned in the result set. The default is 20.
nextToken
— (String
)The pagination token for the next page of data.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorConfigurations
— (map<map>
)The configuration that is applied to the connectors used in the flow.
canUseAsSource
— (Boolean
)Specifies whether the connector can be used as a source.
canUseAsDestination
— (Boolean
)Specifies whether the connector can be used as a destination.
supportedDestinationConnectors
— (Array<String>
)Lists the connectors that are available for use as destinations.
supportedSchedulingFrequencies
— (Array<String>
)Specifies the supported flow frequency for that connector.
isPrivateLinkEnabled
— (Boolean
)Specifies if PrivateLink is enabled for that connector.
isPrivateLinkEndpointUrlRequired
— (Boolean
)Specifies if a PrivateLink endpoint URL is required.
supportedTriggerTypes
— (Array<String>
)Specifies the supported trigger types for the flow.
connectorMetadata
— (map
)Specifies connector-specific metadata such as
oAuthScopes
,supportedRegions
,privateLinkServiceUrl
, and so on.Amplitude
— (map
)The connector metadata specific to Amplitude.
Datadog
— (map
)The connector metadata specific to Datadog.
Dynatrace
— (map
)The connector metadata specific to Dynatrace.
GoogleAnalytics
— (map
)The connector metadata specific to Google Analytics.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Google Analytics account.
InforNexus
— (map
)The connector metadata specific to Infor Nexus.
Marketo
— (map
)The connector metadata specific to Marketo.
Redshift
— (map
)The connector metadata specific to Amazon Redshift.
S3
— (map
)The connector metadata specific to Amazon S3.
Salesforce
— (map
)The connector metadata specific to Salesforce.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Salesforce account.
dataTransferApis
— (Array<String>
)The Salesforce APIs that you can have Amazon AppFlow use when your flows transfers data to or from Salesforce.
oauth2GrantTypesSupported
— (Array<String>
)The OAuth 2.0 grant types that Amazon AppFlow can use when it requests an access token from Salesforce. Amazon AppFlow requires an access token each time it attempts to access your Salesforce records.
- AUTHORIZATION_CODE
-
Amazon AppFlow passes an authorization code when it requests the access token from Salesforce. Amazon AppFlow receives the authorization code from Salesforce after you log in to your Salesforce account and authorize Amazon AppFlow to access your records.
- CLIENT_CREDENTIALS
-
Amazon AppFlow passes client credentials (a client ID and client secret) when it requests the access token from Salesforce. You provide these credentials to Amazon AppFlow when you define the connection to your Salesforce account.
- JWT_BEARER
-
Amazon AppFlow passes a JSON web token (JWT) when it requests the access token from Salesforce. You provide the JWT to Amazon AppFlow when you define the connection to your Salesforce account. When you use this grant type, you don't need to log in to your Salesforce account to authorize Amazon AppFlow to access your records.
ServiceNow
— (map
)The connector metadata specific to ServiceNow.
Singular
— (map
)The connector metadata specific to Singular.
Slack
— (map
)The connector metadata specific to Slack.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Slack account.
Snowflake
— (map
)The connector metadata specific to Snowflake.
supportedRegions
— (Array<String>
)Specifies the supported Amazon Web Services Regions when using Snowflake.
Trendmicro
— (map
)The connector metadata specific to Trend Micro.
Veeva
— (map
)The connector metadata specific to Veeva.
Zendesk
— (map
)The connector metadata specific to Zendesk.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Zendesk account.
EventBridge
— (map
)The connector metadata specific to Amazon EventBridge.
Upsolver
— (map
)The connector metadata specific to Upsolver.
CustomerProfiles
— (map
)The connector metadata specific to Amazon Connect Customer Profiles.
Honeycode
— (map
)The connector metadata specific to Amazon Honeycode.
oAuthScopes
— (Array<String>
)The desired authorization scope for the Amazon Honeycode account.
SAPOData
— (map
)The connector metadata specific to SAPOData.
Pardot
— (map
)The connector metadata specific to Salesforce Pardot.
connectorType
— (String
)The connector type.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorLabel
— (String
)The label used for registering the connector.
connectorDescription
— (String
)A description about the connector.
connectorOwner
— (String
)The owner who developed the connector.
connectorName
— (String
)The connector name.
connectorVersion
— (String
)The connector version.
connectorArn
— (String
)The Amazon Resource Name (ARN) for the registered connector.
connectorModes
— (Array<String>
)The connection modes that the connector supports.
authenticationConfig
— (map
)The authentication config required for the connector.
isBasicAuthSupported
— (Boolean
)Indicates whether basic authentication is supported by the connector.
isApiKeyAuthSupported
— (Boolean
)Indicates whether API key authentication is supported by the connector
isOAuth2Supported
— (Boolean
)Indicates whether OAuth 2.0 authentication is supported by the connector.
isCustomAuthSupported
— (Boolean
)Indicates whether custom authentication is supported by the connector
oAuth2Defaults
— (map
)Contains the default values required for OAuth 2.0 authentication.
oauthScopes
— (Array<String>
)OAuth 2.0 scopes that the connector supports.
tokenUrls
— (Array<String>
)Token URLs that can be used for OAuth 2.0 authentication.
authCodeUrls
— (Array<String>
)Auth code URLs that can be used for OAuth 2.0 authentication.
oauth2GrantTypesSupported
— (Array<String>
)OAuth 2.0 grant types supported by the connector.
oauth2CustomProperties
— (Array<map>
)List of custom parameters required for OAuth 2.0 authentication.
key
— (String
)The key of the custom parameter required for OAuth 2.0 authentication.
isRequired
— (Boolean
)Indicates whether the custom parameter for OAuth 2.0 authentication is required.
label
— (String
)The label of the custom parameter used for OAuth 2.0 authentication.
description
— (String
)A description about the custom parameter used for OAuth 2.0 authentication.
isSensitiveField
— (Boolean
)Indicates whether this authentication custom parameter is a sensitive field.
connectorSuppliedValues
— (Array<String>
)Contains default values for this authentication parameter that are supplied by the connector.
type
— (String
)Indicates whether custom parameter is used with TokenUrl or AuthUrl.
Possible values include:"TOKEN_URL"
"AUTH_URL"
customAuthConfigs
— (Array<map>
)Contains information required for custom authentication.
customAuthenticationType
— (String
)The authentication type that the custom connector uses.
authParameters
— (Array<map>
)Information about authentication parameters required for authentication.
key
— (String
)The authentication key required to authenticate with the connector.
isRequired
— (Boolean
)Indicates whether this authentication parameter is required.
label
— (String
)Label used for authentication parameter.
description
— (String
)A description about the authentication parameter.
isSensitiveField
— (Boolean
)Indicates whether this authentication parameter is a sensitive field.
connectorSuppliedValues
— (Array<String>
)Contains default values for this authentication parameter that are supplied by the connector.
connectorRuntimeSettings
— (Array<map>
)The required connector runtime settings.
key
— (String
)Contains value information about the connector runtime setting.
dataType
— (String
)Data type of the connector runtime setting.
isRequired
— (Boolean
)Indicates whether this connector runtime setting is required.
label
— (String
)A label used for connector runtime setting.
description
— (String
)A description about the connector runtime setting.
scope
— (String
)Indicates the scope of the connector runtime setting.
connectorSuppliedValueOptions
— (Array<String>
)Contains default values for the connector runtime setting that are supplied by the connector.
supportedApiVersions
— (Array<String>
)A list of API versions that are supported by the connector.
supportedOperators
— (Array<String>
)A list of operators supported by the connector.
supportedWriteOperations
— (Array<String>
)A list of write operations supported by the connector.
connectorProvisioningType
— (String
)The provisioning type used to register the connector.
Possible values include:"LAMBDA"
connectorProvisioningConfig
— (map
)The configuration required for registering the connector.
lambda
— (map
)Contains information about the configuration of the lambda which is being registered as the connector.
lambdaArn
— required — (String
)Lambda ARN of the connector being registered.
logoURL
— (String
)Logo URL of the connector.
registeredAt
— (Date
)The date on which the connector was registered.
registeredBy
— (String
)Information about who registered the connector.
supportedDataTransferTypes
— (Array<String>
)The data transfer types that the connector supports.
- RECORD
-
Structured records.
- FILE
-
Files or binary data.
supportedDataTransferApis
— (Array<map>
)The APIs of the connector application that Amazon AppFlow can use to transfer your data.
Name
— (String
)The name of the connector application API.
Type
— (String
)You can specify one of the following types:
- AUTOMATIC
-
The default. Optimizes a flow for datasets that fluctuate in size from small to large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type based on the amount of data that the run transfers.
- SYNC
-
A synchronous API. This type of API optimizes a flow for small to medium-sized datasets.
- ASYNC
-
An asynchronous API. This type of API optimizes a flow for large datasets.
"SYNC"
"ASYNC"
"AUTOMATIC"
connectors
— (Array<map>
)Information about the connectors supported in Amazon AppFlow.
connectorDescription
— (String
)A description about the registered connector.
connectorName
— (String
)The name of the connector.
connectorOwner
— (String
)The owner of the connector.
connectorVersion
— (String
)The connector version.
applicationType
— (String
)The application type of the connector.
connectorType
— (String
)The connector type.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorLabel
— (String
)A label used for the connector.
registeredAt
— (Date
)The time at which the connector was registered.
registeredBy
— (String
)The user who registered the connector.
connectorProvisioningType
— (String
)The provisioning type that the connector uses.
Possible values include:"LAMBDA"
connectorModes
— (Array<String>
)The connection mode that the connector supports.
supportedDataTransferTypes
— (Array<String>
)The data transfer types that the connector supports.
- RECORD
-
Structured records.
- FILE
-
Files or binary data.
nextToken
— (String
)The pagination token for the next page of data.
-
(AWS.Response)
—
Returns:
describeFlow(params = {}, callback) ⇒ AWS.Request
Provides a description of the specified flow.
Service Reference:
Examples:
Calling the describeFlow operation
var params = {
flowName: 'STRING_VALUE' /* required */
};
appflow.describeFlow(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
flowName
— (String
)The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties: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.
Possible values include:"Active"
"Deprecated"
"Deleted"
"Draft"
"Errored"
"Suspended"
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
— (map
)The configuration that controls how Amazon AppFlow retrieves data from the source connector.
connectorType
— required — (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
apiVersion
— (String
)The API version of the connector when it's used as a source in the flow.
connectorProfileName
— (String
)The name of the connector profile. This name must be unique for each connector profile in the Amazon Web Services account.
sourceConnectorProperties
— required — (map
)Specifies the information that is required to query a particular source connector.
Amplitude
— (map
)Specifies the information that is required for querying Amplitude.
object
— required — (String
)The object specified in the Amplitude flow source.
Datadog
— (map
)Specifies the information that is required for querying Datadog.
object
— required — (String
)The object specified in the Datadog flow source.
Dynatrace
— (map
)Specifies the information that is required for querying Dynatrace.
object
— required — (String
)The object specified in the Dynatrace flow source.
GoogleAnalytics
— (map
)Specifies the information that is required for querying Google Analytics.
object
— required — (String
)The object specified in the Google Analytics flow source.
InforNexus
— (map
)Specifies the information that is required for querying Infor Nexus.
object
— required — (String
)The object specified in the Infor Nexus flow source.
Marketo
— (map
)Specifies the information that is required for querying Marketo.
object
— required — (String
)The object specified in the Marketo flow source.
S3
— (map
)Specifies the information that is required for querying Amazon S3.
bucketName
— required — (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.
s3InputFormatConfig
— (map
)When you use Amazon S3 as the source, the configuration format that you provide the flow input data.
s3InputFileType
— (String
)The file type that Amazon AppFlow gets from your Amazon S3 bucket.
Possible values include:"CSV"
"JSON"
Salesforce
— (map
)Specifies the information that is required for querying Salesforce.
object
— required — (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.
dataTransferApi
— (String
)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.
"AUTOMATIC"
"BULKV2"
"REST_SYNC"
ServiceNow
— (map
)Specifies the information that is required for querying ServiceNow.
object
— required — (String
)The object specified in the ServiceNow flow source.
Singular
— (map
)Specifies the information that is required for querying Singular.
object
— required — (String
)The object specified in the Singular flow source.
Slack
— (map
)Specifies the information that is required for querying Slack.
object
— required — (String
)The object specified in the Slack flow source.
Trendmicro
— (map
)Specifies the information that is required for querying Trend Micro.
object
— required — (String
)The object specified in the Trend Micro flow source.
Veeva
— (map
)Specifies the information that is required for querying Veeva.
object
— required — (String
)The object specified in the Veeva flow source.
documentType
— (String
)The document type specified in the Veeva document extract flow.
includeSourceFiles
— (Boolean
)Boolean value to include source files in Veeva document extract flow.
includeRenditions
— (Boolean
)Boolean value to include file renditions in Veeva document extract flow.
includeAllVersions
— (Boolean
)Boolean value to include All Versions of files in Veeva document extract flow.
Zendesk
— (map
)Specifies the information that is required for querying Zendesk.
object
— required — (String
)The object specified in the Zendesk flow source.
SAPOData
— (map
)The properties that are applied when using SAPOData as a flow source.
objectPath
— (String
)The object path specified in the SAPOData flow source.
parallelismConfig
— (map
)Sets the number of concurrent processes that transfers OData records from your SAP instance.
maxParallelism
— required — (Integer
)The maximum number of processes that Amazon AppFlow runs at the same time when it retrieves your data from your SAP application.
paginationConfig
— (map
)Sets the page size for each concurrent process that transfers OData records from your SAP instance.
maxPageSize
— required — (Integer
)The maximum number of records that Amazon AppFlow receives in each page of the response from your SAP application. For transfers of OData records, the maximum page size is 3,000. For transfers of data that comes from an ODP provider, the maximum page size is 10,000.
CustomConnector
— (map
)The properties that are applied when the custom connector is being used as a source.
entityName
— required — (String
)The entity specified in the custom connector as a source in the flow.
customProperties
— (map<String>
)Custom properties that are required to use the custom connector as a source.
dataTransferApi
— (map
)The API of the connector application that Amazon AppFlow uses to transfer your data.
Name
— (String
)The name of the connector application API.
Type
— (String
)You can specify one of the following types:
- AUTOMATIC
-
The default. Optimizes a flow for datasets that fluctuate in size from small to large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type based on the amount of data that the run transfers.
- SYNC
-
A synchronous API. This type of API optimizes a flow for small to medium-sized datasets.
- ASYNC
-
An asynchronous API. This type of API optimizes a flow for large datasets.
"SYNC"
"ASYNC"
"AUTOMATIC"
Pardot
— (map
)Specifies the information that is required for querying Salesforce Pardot.
object
— required — (String
)The object specified in the Salesforce Pardot flow source.
incrementalPullConfig
— (map
)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
— (Array<map>
)The configuration that controls how Amazon AppFlow transfers data to the destination connector.
connectorType
— required — (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
apiVersion
— (String
)The API version that the destination connector uses.
connectorProfileName
— (String
)The name of the connector profile. This name must be unique for each connector profile in the Amazon Web Services account.
destinationConnectorProperties
— required — (map
)This stores the information that is required to query a particular connector.
Redshift
— (map
)The properties required to query Amazon Redshift.
object
— required — (String
)The object specified in the Amazon Redshift flow destination.
intermediateBucketName
— required — (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
— (map
)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
— (map
)The properties required to query Amazon S3.
bucketName
— required — (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
— (map
)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.
Possible values include:"CSV"
"JSON"
"PARQUET"
prefixConfig
— (map
)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 format of the prefix, and whether it applies to the file name, file path, or both.
Possible values include:"FILENAME"
"PATH"
"PATH_AND_FILENAME"
prefixFormat
— (String
)Determines the level of granularity for the date and time that's included in the prefix.
Possible values include:"YEAR"
"MONTH"
"DAY"
"HOUR"
"MINUTE"
pathPrefixHierarchy
— (Array<String>
)Specifies whether the destination file path includes either or both of the following elements:
- EXECUTION_ID
-
The ID that Amazon AppFlow assigns to the flow run.
- SCHEMA_VERSION
-
The version number of your data schema. Amazon AppFlow assigns this version number. The version number increases by one when you change any of the following settings in your flow configuration:
-
Source-to-destination field mappings
-
Field data types
-
Partition keys
-
aggregationConfig
— (map
)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.
Possible values include:"None"
"SingleFile"
targetFileSize
— (Integer
)The desired file size, in MB, for each output file that Amazon AppFlow writes to the flow destination. For each file, Amazon AppFlow attempts to achieve the size that you specify. The actual file sizes might differ from this target based on the number and size of the records that each file contains.
preserveSourceDataTyping
— (Boolean
)If your file output format is Parquet, use this parameter to set whether Amazon AppFlow preserves the data types in your source data when it writes the output to Amazon S3.
-
true
: Amazon AppFlow preserves the data types when it writes to Amazon S3. For example, an integer or1
in your source data is still an integer in your output. -
false
: Amazon AppFlow converts all of the source data into strings when it writes to Amazon S3. For example, an integer of1
in your source data becomes the string"1"
in the output.
-
Salesforce
— (map
)The properties required to query Salesforce.
object
— required — (String
)The object specified in the Salesforce flow destination.
idFieldNames
— (Array<String>
)The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update or delete.
errorHandlingConfig
— (map
)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
Possible values include:UPSERT
, thenidFieldNames
is required."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
dataTransferApi
— (String
)Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce.
- AUTOMATIC
-
The default. Amazon AppFlow selects which API to use based on the number of records that your flow transfers to Salesforce. If your flow transfers fewer than 1,000 records, Amazon AppFlow uses Salesforce REST API. If your flow transfers 1,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 records, and it might use Bulk API 2.0 on the next day to transfer 1,100 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 with a timed out error.
"AUTOMATIC"
"BULKV2"
"REST_SYNC"
Snowflake
— (map
)The properties required to query Snowflake.
object
— required — (String
)The object specified in the Snowflake flow destination.
intermediateBucketName
— required — (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
— (map
)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
— (map
)The properties required to query Amazon EventBridge.
object
— required — (String
)The object specified in the Amazon EventBridge flow destination.
errorHandlingConfig
— (map
)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.
LookoutMetrics
— (map
)The properties required to query Amazon Lookout for Metrics.
Upsolver
— (map
)The properties required to query Upsolver.
bucketName
— required — (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
— required — (map
)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.
Possible values include:"CSV"
"JSON"
"PARQUET"
prefixConfig
— required — (map
)Specifies elements that Amazon AppFlow includes in the file and folder names in the flow destination.
prefixType
— (String
)Determines the format of the prefix, and whether it applies to the file name, file path, or both.
Possible values include:"FILENAME"
"PATH"
"PATH_AND_FILENAME"
prefixFormat
— (String
)Determines the level of granularity for the date and time that's included in the prefix.
Possible values include:"YEAR"
"MONTH"
"DAY"
"HOUR"
"MINUTE"
pathPrefixHierarchy
— (Array<String>
)Specifies whether the destination file path includes either or both of the following elements:
- EXECUTION_ID
-
The ID that Amazon AppFlow assigns to the flow run.
- SCHEMA_VERSION
-
The version number of your data schema. Amazon AppFlow assigns this version number. The version number increases by one when you change any of the following settings in your flow configuration:
-
Source-to-destination field mappings
-
Field data types
-
Partition keys
-
aggregationConfig
— (map
)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.
Possible values include:"None"
"SingleFile"
targetFileSize
— (Integer
)The desired file size, in MB, for each output file that Amazon AppFlow writes to the flow destination. For each file, Amazon AppFlow attempts to achieve the size that you specify. The actual file sizes might differ from this target based on the number and size of the records that each file contains.
Honeycode
— (map
)The properties required to query Amazon Honeycode.
object
— required — (String
)The object specified in the Amazon Honeycode flow destination.
errorHandlingConfig
— (map
)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.
CustomerProfiles
— (map
)The properties required to query Amazon Connect Customer Profiles.
domainName
— required — (String
)The unique name of the Amazon Connect Customer Profiles domain.
objectTypeName
— (String
)The object specified in the Amazon Connect Customer Profiles flow destination.
Zendesk
— (map
)The properties required to query Zendesk.
object
— required — (String
)The object specified in the Zendesk flow destination.
idFieldNames
— (Array<String>
)A list of field names that can be used as an ID field when performing a write operation.
errorHandlingConfig
— (map
)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.
writeOperationType
— (String
)The possible write operations in the destination connector. When this value is not provided, this defaults to the
Possible values include:INSERT
operation."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
Marketo
— (map
)The properties required to query Marketo.
object
— required — (String
)The object specified in the Marketo flow destination.
errorHandlingConfig
— (map
)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.
CustomConnector
— (map
)The properties that are required to query the custom Connector.
entityName
— required — (String
)The entity specified in the custom connector as a destination in the flow.
errorHandlingConfig
— (map
)The settings that determine how Amazon AppFlow handles an error when placing data in the custom connector as destination.
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
)Specifies the type of write operation to be performed in the custom connector when it's used as destination.
Possible values include:"INSERT"
"UPSERT"
"UPDATE"
"DELETE"
idFieldNames
— (Array<String>
)The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update, delete, or upsert.
customProperties
— (map<String>
)The custom properties that are specific to the connector when it's used as a destination in the flow.
SAPOData
— (map
)The properties required to query SAPOData.
objectPath
— required — (String
)The object path specified in the SAPOData flow destination.
successResponseHandlingConfig
— (map
)Determines how Amazon AppFlow handles the success response that it gets from the connector after placing data.
For example, this setting would determine where to write the response from a destination connector upon a successful insert operation.
bucketPrefix
— (String
)The Amazon S3 bucket prefix.
bucketName
— (String
)The name of the Amazon S3 bucket.
idFieldNames
— (Array<String>
)A list of field names that can be used as an ID field when performing a write operation.
errorHandlingConfig
— (map
)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.
writeOperationType
— (String
)The possible write operations in the destination connector. When this value is not provided, this defaults to the
Possible values include:INSERT
operation."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
lastRunExecutionDetails
— (map
)Describes the details of the most recent flow run.
mostRecentExecutionMessage
— (String
)Describes the details of the most recent flow run.
mostRecentExecutionTime
— (Date
)Specifies the time of the most recent flow run.
mostRecentExecutionStatus
— (String
)Specifies the status of the most recent flow run.
Possible values include:"InProgress"
"Successful"
"Error"
"CancelStarted"
"Canceled"
triggerConfig
— (map
)The trigger settings that determine how and when the flow runs.
triggerType
— required — (String
)Specifies the type of flow trigger. This can be
Possible values include:OnDemand
,Scheduled
, orEvent
."Scheduled"
"Event"
"OnDemand"
triggerProperties
— (map
)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
— (map
)Specifies the configuration details of a schedule-triggered flow as defined by the user.
scheduleExpression
— required — (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.
Possible values include:"Incremental"
"Complete"
scheduleStartTime
— (Date
)The time at which the scheduled flow starts. The time is formatted as a timestamp that follows the ISO 8601 standard, such as
2022-04-26T13:00:00-07:00
.scheduleEndTime
— (Date
)The time at which the scheduled flow ends. The time is formatted as a timestamp that follows the ISO 8601 standard, such as
2022-04-27T13:00:00-07:00
.timezone
— (String
)Specifies the time zone used when referring to the dates and times of a scheduled flow, such as
America/New_York
. This time zone is only a descriptive label. It doesn't affect how Amazon AppFlow interprets the timestamps that you specify to schedule the flow.If you want to schedule a flow by using times in a particular time zone, indicate the time zone as a UTC offset in your timestamps. For example, the UTC offsets for the
America/New_York
timezone are-04:00
EDT and-05:00 EST
.scheduleOffset
— (Integer
)Specifies the optional offset that is added to the time interval for a schedule-triggered flow.
firstExecutionFrom
— (Date
)Specifies the date range for the records to import from the connector in the first flow run.
flowErrorDeactivationThreshold
— (Integer
)Defines how many times a scheduled flow fails consecutively before Amazon AppFlow deactivates it.
tasks
— (Array<map>
)A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.
sourceFields
— required — (Array<String>
)The source fields to which a particular task is applied.
connectorOperator
— (map
)The operation to be performed on the provided source fields.
Amplitude
— (String
)The operation to be performed on the provided Amplitude source fields.
Possible values include:"BETWEEN"
Datadog
— (String
)The operation to be performed on the provided Datadog source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Dynatrace source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Google Analytics source fields.
Possible values include:"PROJECTION"
"BETWEEN"
InforNexus
— (String
)The operation to be performed on the provided Infor Nexus source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Marketo source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Amazon S3 source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Salesforce source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided ServiceNow source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Singular source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Slack source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Trend Micro source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Veeva source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Zendesk source fields.
Possible values include:"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"
SAPOData
— (String
)The operation to be performed on the provided SAPOData source fields.
Possible values include:"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"
CustomConnector
— (String
)Operators supported by the custom connector.
Possible values include:"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"
Pardot
— (String
)The operation to be performed on the provided Salesforce Pardot source fields.
Possible values include:"PROJECTION"
"EQUAL_TO"
"NO_OP"
"ADDITION"
"MULTIPLICATION"
"DIVISION"
"SUBTRACTION"
"MASK_ALL"
"MASK_FIRST_N"
"MASK_LAST_N"
"VALIDATE_NON_NULL"
"VALIDATE_NON_ZERO"
"VALIDATE_NON_NEGATIVE"
"VALIDATE_NUMERIC"
destinationField
— (String
)A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.
taskType
— required — (String
)Specifies the particular task implementation that Amazon AppFlow performs.
Possible values include:"Arithmetic"
"Filter"
"Map"
"Map_all"
"Mask"
"Merge"
"Passthrough"
"Truncate"
"Validate"
"Partition"
taskProperties
— (map<String>
)A map used to store task-related information. The execution service looks for particular information based on the
TaskType
.
createdAt
— (Date
)Specifies when the flow was created.
lastUpdatedAt
— (Date
)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
— (map<String>
)The tags used to organize, track, or control access for your flow.
metadataCatalogConfig
— (map
)Specifies the configuration that Amazon AppFlow uses when it catalogs the data that's transferred by the associated flow. When Amazon AppFlow catalogs the data from a flow, it stores metadata in a data catalog.
glueDataCatalog
— (map
)Specifies the configuration that Amazon AppFlow uses when it catalogs your data with the Glue Data Catalog.
roleArn
— required — (String
)The Amazon Resource Name (ARN) of an IAM role that grants Amazon AppFlow the permissions it needs to create Data Catalog tables, databases, and partitions.
For an example IAM policy that has the required permissions, see Identity-based policy examples for Amazon AppFlow.
databaseName
— required — (String
)The name of the Data Catalog database that stores the metadata tables that Amazon AppFlow creates in your Amazon Web Services account. These tables contain metadata for the data that's transferred by the flow that you configure with this parameter.
Note: When you configure a new flow with this parameter, you must specify an existing database.tablePrefix
— required — (String
)A naming prefix for each Data Catalog table that Amazon AppFlow creates for the flow that you configure with this setting. Amazon AppFlow adds the prefix to the beginning of the each table name.
lastRunMetadataCatalogDetails
— (Array<map>
)Describes the metadata catalog, metadata table, and data partitions that Amazon AppFlow used for the associated flow run.
catalogType
— (String
)The type of metadata catalog that Amazon AppFlow used for the associated flow run. This parameter returns the following value:
- GLUE
-
The metadata catalog is provided by the Glue Data Catalog. Glue includes the Glue Data Catalog as a component.
"GLUE"
tableName
— (String
)The name of the table that stores the metadata for the associated flow run. The table stores metadata that represents the data that the flow transferred. Amazon AppFlow stores the table in the metadata catalog.
tableRegistrationOutput
— (map
)Describes the status of the attempt from Amazon AppFlow to register the metadata table with the metadata catalog. Amazon AppFlow creates or updates this table for the associated flow run.
message
— (String
)Explains the status of the registration attempt from Amazon AppFlow. If the attempt fails, the message explains why.
result
— (String
)Indicates the number of resources that Amazon AppFlow created or updated. Possible resources include metadata tables and data partitions.
status
— (String
)Indicates the status of the registration attempt from Amazon AppFlow.
Possible values include:"InProgress"
"Successful"
"Error"
"CancelStarted"
"Canceled"
partitionRegistrationOutput
— (map
)Describes the status of the attempt from Amazon AppFlow to register the data partitions with the metadata catalog. The data partitions organize the flow output into a hierarchical path, such as a folder path in an S3 bucket. Amazon AppFlow creates the partitions (if they don't already exist) based on your flow configuration.
message
— (String
)Explains the status of the registration attempt from Amazon AppFlow. If the attempt fails, the message explains why.
result
— (String
)Indicates the number of resources that Amazon AppFlow created or updated. Possible resources include metadata tables and data partitions.
status
— (String
)Indicates the status of the registration attempt from Amazon AppFlow.
Possible values include:"InProgress"
"Successful"
"Error"
"CancelStarted"
"Canceled"
schemaVersion
— (Integer
)The version number of your data schema. Amazon AppFlow assigns this version number. The version number increases by one when you change any of the following settings in your flow configuration:
-
Source-to-destination field mappings
-
Field data types
-
Partition keys
-
-
(AWS.Response)
—
Returns:
describeFlowExecutionRecords(params = {}, callback) ⇒ AWS.Request
Fetches the execution history of the flow.
Service Reference:
Examples:
Calling the describeFlowExecutionRecords operation
var params = {
flowName: 'STRING_VALUE', /* required */
maxResults: 'NUMBER_VALUE',
nextToken: 'STRING_VALUE'
};
appflow.describeFlowExecutionRecords(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
flowName
— (String
)The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
maxResults
— (Integer
)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).nextToken
— (String
)The pagination token for the next page of data.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:flowExecutions
— (Array<map>
)Returns a list of all instances when this flow was run.
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.
Possible values include:"InProgress"
"Successful"
"Error"
"CancelStarted"
"Canceled"
executionResult
— (map
)Describes the result of the given flow run.
errorInfo
— (map
)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.
numParallelProcesses
— (Integer
)The number of processes that Amazon AppFlow ran at the same time when it retrieved your data.
maxPageSize
— (Integer
)The maximum number of records that Amazon AppFlow receives in each page of the response from your SAP application.
startedAt
— (Date
)Specifies the start time of the flow run.
lastUpdatedAt
— (Date
)Specifies the time of the most recent update.
dataPullStartTime
— (Date
)The timestamp that determines the first new or updated record to be transferred in the flow run.
dataPullEndTime
— (Date
)The timestamp that indicates the last new or updated record to be transferred in the flow run.
metadataCatalogDetails
— (Array<map>
)Describes the metadata catalog, metadata table, and data partitions that Amazon AppFlow used for the associated flow run.
catalogType
— (String
)The type of metadata catalog that Amazon AppFlow used for the associated flow run. This parameter returns the following value:
- GLUE
-
The metadata catalog is provided by the Glue Data Catalog. Glue includes the Glue Data Catalog as a component.
"GLUE"
tableName
— (String
)The name of the table that stores the metadata for the associated flow run. The table stores metadata that represents the data that the flow transferred. Amazon AppFlow stores the table in the metadata catalog.
tableRegistrationOutput
— (map
)Describes the status of the attempt from Amazon AppFlow to register the metadata table with the metadata catalog. Amazon AppFlow creates or updates this table for the associated flow run.
message
— (String
)Explains the status of the registration attempt from Amazon AppFlow. If the attempt fails, the message explains why.
result
— (String
)Indicates the number of resources that Amazon AppFlow created or updated. Possible resources include metadata tables and data partitions.
status
— (String
)Indicates the status of the registration attempt from Amazon AppFlow.
Possible values include:"InProgress"
"Successful"
"Error"
"CancelStarted"
"Canceled"
partitionRegistrationOutput
— (map
)Describes the status of the attempt from Amazon AppFlow to register the data partitions with the metadata catalog. The data partitions organize the flow output into a hierarchical path, such as a folder path in an S3 bucket. Amazon AppFlow creates the partitions (if they don't already exist) based on your flow configuration.
message
— (String
)Explains the status of the registration attempt from Amazon AppFlow. If the attempt fails, the message explains why.
result
— (String
)Indicates the number of resources that Amazon AppFlow created or updated. Possible resources include metadata tables and data partitions.
status
— (String
)Indicates the status of the registration attempt from Amazon AppFlow.
Possible values include:"InProgress"
"Successful"
"Error"
"CancelStarted"
"Canceled"
nextToken
— (String
)The pagination token for the next page of data.
-
(AWS.Response)
—
Returns:
listConnectorEntities(params = {}, callback) ⇒ AWS.Request
Returns the list of available connector entities supported by Amazon AppFlow. For example, you can query Salesforce for Account and Opportunity entities, or query ServiceNow for the Incident entity.
Service Reference:
Examples:
Calling the listConnectorEntities operation
var params = {
apiVersion: 'STRING_VALUE',
connectorProfileName: 'STRING_VALUE',
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot,
entitiesPath: 'STRING_VALUE',
maxResults: 'NUMBER_VALUE',
nextToken: 'STRING_VALUE'
};
appflow.listConnectorEntities(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorProfileName
— (String
)The name of the connector profile. The name is unique for each
ConnectorProfile
in the Amazon Web Services account, and is used to query the downstream connector.connectorType
— (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
entitiesPath
— (String
)This optional parameter is specific to connector implementation. Some connectors support multiple levels or categories of entities. You can find out the list of roots for such providers by sending a request without the
entitiesPath
parameter. If the connector supports entities at different roots, this initial request returns the list of roots. Otherwise, this request returns all entities supported by the provider.apiVersion
— (String
)The version of the API that's used by the connector.
maxResults
— (Integer
)The maximum number of items that the operation returns in the response.
nextToken
— (String
)A token that was provided by your prior
ListConnectorEntities
operation if the response was too big for the page size. You specify this token to get the next page of results in paginated response.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorEntityMap
— (map<Array<map>>
)The response of
ListConnectorEntities
lists entities grouped by category. This map's key represents the group name, and its value contains the list of entities belonging to that group.name
— required — (String
)The name of the connector entity.
label
— (String
)The label applied to the connector entity.
hasNestedEntities
— (Boolean
)Specifies whether the connector entity is a parent or a category and has more entities nested underneath it. If another call is made with
entitiesPath = "the_current_entity_name_with_hasNestedEntities_true"
, then it returns the nested entities underneath it. This provides a way to retrieve all supported entities in a recursive fashion.
nextToken
— (String
)A token that you specify in your next
ListConnectorEntities
operation to get the next page of results in paginated response. TheListConnectorEntities
operation provides this token if the response is too big for the page size.
-
(AWS.Response)
—
Returns:
listConnectors(params = {}, callback) ⇒ AWS.Request
Returns the list of all registered custom connectors in your Amazon Web Services account. This API lists only custom connectors registered in this account, not the Amazon Web Services authored connectors.
Service Reference:
Examples:
Calling the listConnectors operation
var params = {
maxResults: 'NUMBER_VALUE',
nextToken: 'STRING_VALUE'
};
appflow.listConnectors(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
maxResults
— (Integer
)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).nextToken
— (String
)The pagination token for the next page of data.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectors
— (Array<map>
)Contains information about the connectors supported by Amazon AppFlow.
connectorDescription
— (String
)A description about the registered connector.
connectorName
— (String
)The name of the connector.
connectorOwner
— (String
)The owner of the connector.
connectorVersion
— (String
)The connector version.
applicationType
— (String
)The application type of the connector.
connectorType
— (String
)The connector type.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorLabel
— (String
)A label used for the connector.
registeredAt
— (Date
)The time at which the connector was registered.
registeredBy
— (String
)The user who registered the connector.
connectorProvisioningType
— (String
)The provisioning type that the connector uses.
Possible values include:"LAMBDA"
connectorModes
— (Array<String>
)The connection mode that the connector supports.
supportedDataTransferTypes
— (Array<String>
)The data transfer types that the connector supports.
- RECORD
-
Structured records.
- FILE
-
Files or binary data.
nextToken
— (String
)The pagination token for the next page of data. If nextToken=null, this means that all records have been fetched.
-
(AWS.Response)
—
Returns:
listFlows(params = {}, callback) ⇒ AWS.Request
Lists all of the flows associated with your account.
Service Reference:
Examples:
Calling the listFlows operation
var params = {
maxResults: 'NUMBER_VALUE',
nextToken: 'STRING_VALUE'
};
appflow.listFlows(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
maxResults
— (Integer
)Specifies the maximum number of items that should be returned in the result set.
nextToken
— (String
)The pagination token for next page of data.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:flows
— (Array<map>
)The list of flows associated with your account.
flowArn
— (String
)The flow's Amazon Resource Name (ARN).
description
— (String
)A user-entered description of the flow.
flowName
— (String
)The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
flowStatus
— (String
)Indicates the current status of the flow.
Possible values include:"Active"
"Deprecated"
"Deleted"
"Draft"
"Errored"
"Suspended"
sourceConnectorType
— (String
)Specifies the source connector type, such as Salesforce, Amazon S3, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
sourceConnectorLabel
— (String
)The label of the source connector in the flow.
destinationConnectorType
— (String
)Specifies the destination connector type, such as Salesforce, Amazon S3, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
destinationConnectorLabel
— (String
)The label of the destination connector in the flow.
triggerType
— (String
)Specifies the type of flow trigger. This can be
Possible values include:OnDemand
,Scheduled
, orEvent
."Scheduled"
"Event"
"OnDemand"
createdAt
— (Date
)Specifies when the flow was created.
lastUpdatedAt
— (Date
)Specifies when the flow was last updated.
createdBy
— (String
)The ARN of the user who created the flow.
lastUpdatedBy
— (String
)Specifies the account user name that most recently updated the flow.
tags
— (map<String>
)The tags used to organize, track, or control access for your flow.
lastRunExecutionDetails
— (map
)Describes the details of the most recent flow run.
mostRecentExecutionMessage
— (String
)Describes the details of the most recent flow run.
mostRecentExecutionTime
— (Date
)Specifies the time of the most recent flow run.
mostRecentExecutionStatus
— (String
)Specifies the status of the most recent flow run.
Possible values include:"InProgress"
"Successful"
"Error"
"CancelStarted"
"Canceled"
nextToken
— (String
)The pagination token for next page of data.
-
(AWS.Response)
—
Returns:
listTagsForResource(params = {}, callback) ⇒ AWS.Request
Retrieves the tags that are associated with a specified flow.
Service Reference:
Examples:
Calling the listTagsForResource operation
var params = {
resourceArn: 'STRING_VALUE' /* required */
};
appflow.listTagsForResource(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
resourceArn
— (String
)The Amazon Resource Name (ARN) of the specified flow.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:tags
— (map<String>
)The tags used to organize, track, or control access for your flow.
-
(AWS.Response)
—
Returns:
registerConnector(params = {}, callback) ⇒ AWS.Request
Registers a new custom connector with your Amazon Web Services account. Before you can register the connector, you must deploy the associated AWS lambda function in your account.
Service Reference:
Examples:
Calling the registerConnector operation
var params = {
clientToken: 'STRING_VALUE',
connectorLabel: 'STRING_VALUE',
connectorProvisioningConfig: {
lambda: {
lambdaArn: 'STRING_VALUE' /* required */
}
},
connectorProvisioningType: LAMBDA,
description: 'STRING_VALUE'
};
appflow.registerConnector(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorLabel
— (String
)The name of the connector. The name is unique for each
ConnectorRegistration
in your Amazon Web Services account.description
— (String
)A description about the connector that's being registered.
connectorProvisioningType
— (String
)The provisioning type of the connector. Currently the only supported value is LAMBDA.
Possible values include:"LAMBDA"
connectorProvisioningConfig
— (map
)The provisioning type of the connector. Currently the only supported value is LAMBDA.
lambda
— (map
)Contains information about the configuration of the lambda which is being registered as the connector.
lambdaArn
— required — (String
)Lambda ARN of the connector being registered.
clientToken
— (String
)The
clientToken
parameter is an idempotency token. It ensures that yourRegisterConnector
request completes only once. You choose the value to pass. For example, if you don't receive a response from your request, you can safely retry the request with the sameclientToken
parameter value.If you omit a
clientToken
value, the Amazon Web Services SDK that you are using inserts a value for you. This way, the SDK can safely retry requests multiple times after a network error. You must provide your own value for other use cases.If you specify input parameters that differ from your first request, an error occurs. If you use a different value for
If a token is not provided, the SDK will use a version 4 UUID.clientToken
, Amazon AppFlow considers it a new call toRegisterConnector
. The token is active for 8 hours.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorArn
— (String
)The ARN of the connector being registered.
-
(AWS.Response)
—
Returns:
resetConnectorMetadataCache(params = {}, callback) ⇒ AWS.Request
Resets metadata about your connector entities that Amazon AppFlow stored in its cache. Use this action when you want Amazon AppFlow to return the latest information about the data that you have in a source application.
Amazon AppFlow returns metadata about your entities when you use the ListConnectorEntities or DescribeConnectorEntities actions. Following these actions, Amazon AppFlow caches the metadata to reduce the number of API requests that it must send to the source application. Amazon AppFlow automatically resets the cache once every hour, but you can use this action when you want to get the latest metadata right away.
Service Reference:
Examples:
Calling the resetConnectorMetadataCache operation
var params = {
apiVersion: 'STRING_VALUE',
connectorEntityName: 'STRING_VALUE',
connectorProfileName: 'STRING_VALUE',
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot,
entitiesPath: 'STRING_VALUE'
};
appflow.resetConnectorMetadataCache(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorProfileName
— (String
)The name of the connector profile that you want to reset cached metadata for.
You can omit this parameter if you're resetting the cache for any of the following connectors: Amazon Connect, Amazon EventBridge, Amazon Lookout for Metrics, Amazon S3, or Upsolver. If you're resetting the cache for any other connector, you must include this parameter in your request.
connectorType
— (String
)The type of connector to reset cached metadata for.
You must include this parameter in your request if you're resetting the cache for any of the following connectors: Amazon Connect, Amazon EventBridge, Amazon Lookout for Metrics, Amazon S3, or Upsolver. If you're resetting the cache for any other connector, you can omit this parameter from your request.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
connectorEntityName
— (String
)Use this parameter if you want to reset cached metadata about the details for an individual entity.
If you don't include this parameter in your request, Amazon AppFlow only resets cached metadata about entity names, not entity details.
entitiesPath
— (String
)Use this parameter only if you’re resetting the cached metadata about a nested entity. Only some connectors support nested entities. A nested entity is one that has another entity as a parent. To use this parameter, specify the name of the parent entity.
To look up the parent-child relationship of entities, you can send a ListConnectorEntities request that omits the entitiesPath parameter. Amazon AppFlow will return a list of top-level entities. For each one, it indicates whether the entity has nested entities. Then, in a subsequent ListConnectorEntities request, you can specify a parent entity name for the entitiesPath parameter. Amazon AppFlow will return a list of the child entities for that parent.
apiVersion
— (String
)The API version that you specified in the connector profile that you’re resetting cached metadata for. You must use this parameter only if the connector supports multiple API versions or if the connector type is CustomConnector.
To look up how many versions a connector supports, use the DescribeConnectors action. In the response, find the value that Amazon AppFlow returns for the connectorVersion parameter.
To look up the connector type, use the DescribeConnectorProfiles action. In the response, find the value that Amazon AppFlow returns for the connectorType parameter.
To look up the API version that you specified in a connector profile, use the DescribeConnectorProfiles action.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs.
-
(AWS.Response)
—
Returns:
startFlow(params = {}, callback) ⇒ AWS.Request
Activates an existing flow. For on-demand flows, this operation runs the flow immediately. For schedule and event-triggered flows, this operation activates the flow.
Service Reference:
Examples:
Calling the startFlow operation
var params = {
flowName: 'STRING_VALUE', /* required */
clientToken: 'STRING_VALUE'
};
appflow.startFlow(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
flowName
— (String
)The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
clientToken
— (String
)The
clientToken
parameter is an idempotency token. It ensures that yourStartFlow
request completes only once. You choose the value to pass. For example, if you don't receive a response from your request, you can safely retry the request with the sameclientToken
parameter value.If you omit a
clientToken
value, the Amazon Web Services SDK that you are using inserts a value for you. This way, the SDK can safely retry requests multiple times after a network error. You must provide your own value for other use cases.If you specify input parameters that differ from your first request, an error occurs for flows that run on a schedule or based on an event. However, the error doesn't occur for flows that run on demand. You set the conditions that initiate your flow for the
triggerConfig
parameter.If you use a different value for
If a token is not provided, the SDK will use a version 4 UUID.clientToken
, Amazon AppFlow considers it a new call toStartFlow
. The token is active for 8 hours.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:flowArn
— (String
)The flow's Amazon Resource Name (ARN).
flowStatus
— (String
)Indicates the current status of the flow.
Possible values include:"Active"
"Deprecated"
"Deleted"
"Draft"
"Errored"
"Suspended"
executionId
— (String
)Returns the internal execution ID of an on-demand flow when the flow is started. For scheduled or event-triggered flows, this value is null.
-
(AWS.Response)
—
Returns:
stopFlow(params = {}, callback) ⇒ AWS.Request
Deactivates the existing flow. For on-demand flows, this operation returns an unsupportedOperationException
error message. For schedule and event-triggered flows, this operation deactivates the flow.
Service Reference:
Examples:
Calling the stopFlow operation
var params = {
flowName: 'STRING_VALUE' /* required */
};
appflow.stopFlow(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
flowName
— (String
)The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:flowArn
— (String
)The flow's Amazon Resource Name (ARN).
flowStatus
— (String
)Indicates the current status of the flow.
Possible values include:"Active"
"Deprecated"
"Deleted"
"Draft"
"Errored"
"Suspended"
-
(AWS.Response)
—
Returns:
tagResource(params = {}, callback) ⇒ AWS.Request
Applies a tag to the specified flow.
Service Reference:
Examples:
Calling the tagResource operation
var params = {
resourceArn: 'STRING_VALUE', /* required */
tags: { /* required */
'<TagKey>': 'STRING_VALUE',
/* '<TagKey>': ... */
}
};
appflow.tagResource(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
resourceArn
— (String
)The Amazon Resource Name (ARN) of the flow that you want to tag.
tags
— (map<String>
)The tags used to organize, track, or control access for your flow.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs.
-
(AWS.Response)
—
Returns:
unregisterConnector(params = {}, callback) ⇒ AWS.Request
Unregisters the custom connector registered in your account that matches the connector label provided in the request.
Service Reference:
Examples:
Calling the unregisterConnector operation
var params = {
connectorLabel: 'STRING_VALUE', /* required */
forceDelete: true || false
};
appflow.unregisterConnector(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorLabel
— (String
)The label of the connector. The label is unique for each
ConnectorRegistration
in your Amazon Web Services account.forceDelete
— (Boolean
)Indicates whether Amazon AppFlow should unregister the connector, even if it is currently in use in one or more connector profiles. The default value is false.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs.
-
(AWS.Response)
—
Returns:
untagResource(params = {}, callback) ⇒ AWS.Request
Removes a tag from the specified flow.
Service Reference:
Examples:
Calling the untagResource operation
var params = {
resourceArn: 'STRING_VALUE', /* required */
tagKeys: [ /* required */
'STRING_VALUE',
/* more items */
]
};
appflow.untagResource(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
resourceArn
— (String
)The Amazon Resource Name (ARN) of the flow that you want to untag.
tagKeys
— (Array<String>
)The tag keys associated with the tag that you want to remove from your flow.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs.
-
(AWS.Response)
—
Returns:
updateConnectorProfile(params = {}, callback) ⇒ AWS.Request
Updates a given connector profile associated with your account.
Service Reference:
Examples:
Calling the updateConnectorProfile operation
var params = {
connectionMode: Public | Private, /* required */
connectorProfileConfig: { /* required */
connectorProfileProperties: { /* required */
Amplitude: {
},
CustomConnector: {
oAuth2Properties: {
oAuth2GrantType: CLIENT_CREDENTIALS | AUTHORIZATION_CODE | JWT_BEARER, /* required */
tokenUrl: 'STRING_VALUE', /* required */
tokenUrlCustomProperties: {
'<CustomPropertyKey>': 'STRING_VALUE',
/* '<CustomPropertyKey>': ... */
}
},
profileProperties: {
'<ProfilePropertyKey>': 'STRING_VALUE',
/* '<ProfilePropertyKey>': ... */
}
},
Datadog: {
instanceUrl: 'STRING_VALUE' /* required */
},
Dynatrace: {
instanceUrl: 'STRING_VALUE' /* required */
},
GoogleAnalytics: {
},
Honeycode: {
},
InforNexus: {
instanceUrl: 'STRING_VALUE' /* required */
},
Marketo: {
instanceUrl: 'STRING_VALUE' /* required */
},
Pardot: {
businessUnitId: 'STRING_VALUE',
instanceUrl: 'STRING_VALUE',
isSandboxEnvironment: true || false
},
Redshift: {
bucketName: 'STRING_VALUE', /* required */
roleArn: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
clusterIdentifier: 'STRING_VALUE',
dataApiRoleArn: 'STRING_VALUE',
databaseName: 'STRING_VALUE',
databaseUrl: 'STRING_VALUE',
isRedshiftServerless: true || false,
workgroupName: 'STRING_VALUE'
},
SAPOData: {
applicationHostUrl: 'STRING_VALUE', /* required */
applicationServicePath: 'STRING_VALUE', /* required */
clientNumber: 'STRING_VALUE', /* required */
portNumber: 'NUMBER_VALUE', /* required */
disableSSO: true || false,
logonLanguage: 'STRING_VALUE',
oAuthProperties: {
authCodeUrl: 'STRING_VALUE', /* required */
oAuthScopes: [ /* required */
'STRING_VALUE',
/* more items */
],
tokenUrl: 'STRING_VALUE' /* required */
},
privateLinkServiceName: 'STRING_VALUE'
},
Salesforce: {
instanceUrl: 'STRING_VALUE',
isSandboxEnvironment: true || false,
usePrivateLinkForMetadataAndAuthorization: true || false
},
ServiceNow: {
instanceUrl: 'STRING_VALUE' /* required */
},
Singular: {
},
Slack: {
instanceUrl: 'STRING_VALUE' /* required */
},
Snowflake: {
bucketName: 'STRING_VALUE', /* required */
stage: 'STRING_VALUE', /* required */
warehouse: 'STRING_VALUE', /* required */
accountName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
privateLinkServiceName: 'STRING_VALUE',
region: 'STRING_VALUE'
},
Trendmicro: {
},
Veeva: {
instanceUrl: 'STRING_VALUE' /* required */
},
Zendesk: {
instanceUrl: 'STRING_VALUE' /* required */
}
},
connectorProfileCredentials: {
Amplitude: {
apiKey: 'STRING_VALUE', /* required */
secretKey: 'STRING_VALUE' /* required */
},
CustomConnector: {
authenticationType: OAUTH2 | APIKEY | BASIC | CUSTOM, /* required */
apiKey: {
apiKey: 'STRING_VALUE', /* required */
apiSecretKey: 'STRING_VALUE'
},
basic: {
password: 'STRING_VALUE', /* required */
username: 'STRING_VALUE' /* required */
},
custom: {
customAuthenticationType: 'STRING_VALUE', /* required */
credentialsMap: {
'<CredentialsMapKey>': 'STRING_VALUE',
/* '<CredentialsMapKey>': ... */
}
},
oauth2: {
accessToken: 'STRING_VALUE',
clientId: 'STRING_VALUE',
clientSecret: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
}
},
Datadog: {
apiKey: 'STRING_VALUE', /* required */
applicationKey: 'STRING_VALUE' /* required */
},
Dynatrace: {
apiToken: 'STRING_VALUE' /* required */
},
GoogleAnalytics: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
Honeycode: {
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
InforNexus: {
accessKeyId: 'STRING_VALUE', /* required */
datakey: 'STRING_VALUE', /* required */
secretAccessKey: 'STRING_VALUE', /* required */
userId: 'STRING_VALUE' /* required */
},
Marketo: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
}
},
Pardot: {
accessToken: 'STRING_VALUE',
clientCredentialsArn: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
Redshift: {
password: 'STRING_VALUE',
username: 'STRING_VALUE'
},
SAPOData: {
basicAuthCredentials: {
password: 'STRING_VALUE', /* required */
username: 'STRING_VALUE' /* required */
},
oAuthCredentials: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
}
},
Salesforce: {
accessToken: 'STRING_VALUE',
clientCredentialsArn: 'STRING_VALUE',
jwtToken: 'STRING_VALUE',
oAuth2GrantType: CLIENT_CREDENTIALS | AUTHORIZATION_CODE | JWT_BEARER,
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
ServiceNow: {
oAuth2Credentials: {
accessToken: 'STRING_VALUE',
clientId: 'STRING_VALUE',
clientSecret: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
},
refreshToken: 'STRING_VALUE'
},
password: 'STRING_VALUE',
username: 'STRING_VALUE'
},
Singular: {
apiKey: 'STRING_VALUE' /* required */
},
Slack: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
}
},
Snowflake: {
password: 'STRING_VALUE', /* required */
username: 'STRING_VALUE' /* required */
},
Trendmicro: {
apiSecretKey: 'STRING_VALUE' /* required */
},
Veeva: {
password: 'STRING_VALUE', /* required */
username: 'STRING_VALUE' /* required */
},
Zendesk: {
clientId: 'STRING_VALUE', /* required */
clientSecret: 'STRING_VALUE', /* required */
accessToken: 'STRING_VALUE',
oAuthRequest: {
authCode: 'STRING_VALUE',
redirectUri: 'STRING_VALUE'
}
}
}
},
connectorProfileName: 'STRING_VALUE', /* required */
clientToken: 'STRING_VALUE'
};
appflow.updateConnectorProfile(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorProfileName
— (String
)The name of the connector profile and is unique for each
ConnectorProfile
in the Amazon Web Services account.connectionMode
— (String
)Indicates the connection mode and if it is public or private.
Possible values include:"Public"
"Private"
connectorProfileConfig
— (map
)Defines the connector-specific profile configuration and credentials.
connectorProfileProperties
— required — (map
)The connector-specific properties of the profile configuration.
Amplitude
— (map
)The connector-specific properties required by Amplitude.
Datadog
— (map
)The connector-specific properties required by Datadog.
instanceUrl
— required — (String
)The location of the Datadog resource.
Dynatrace
— (map
)The connector-specific properties required by Dynatrace.
instanceUrl
— required — (String
)The location of the Dynatrace resource.
GoogleAnalytics
— (map
)The connector-specific properties required Google Analytics.
Honeycode
— (map
)The connector-specific properties required by Amazon Honeycode.
InforNexus
— (map
)The connector-specific properties required by Infor Nexus.
instanceUrl
— required — (String
)The location of the Infor Nexus resource.
Marketo
— (map
)The connector-specific properties required by Marketo.
instanceUrl
— required — (String
)The location of the Marketo resource.
Redshift
— (map
)The connector-specific properties required by Amazon Redshift.
databaseUrl
— (String
)The JDBC URL of the Amazon Redshift cluster.
bucketName
— required — (String
)A name for the associated Amazon S3 bucket.
bucketPrefix
— (String
)The object key for the destination bucket in which Amazon AppFlow places the files.
roleArn
— required — (String
)The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift read-only access to Amazon S3. For more information, and for the polices that you attach to this role, see Allow Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
dataApiRoleArn
— (String
)The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to access your Amazon Redshift database through the Data API. For more information, and for the polices that you attach to this role, see Allow Amazon AppFlow to access Amazon Redshift databases with the Data API.
isRedshiftServerless
— (Boolean
)Indicates whether the connector profile defines a connection to an Amazon Redshift Serverless data warehouse.
clusterIdentifier
— (String
)The unique ID that's assigned to an Amazon Redshift cluster.
workgroupName
— (String
)The name of an Amazon Redshift workgroup.
databaseName
— (String
)The name of an Amazon Redshift database.
Salesforce
— (map
)The connector-specific properties required by Salesforce.
instanceUrl
— (String
)The location of the Salesforce resource.
isSandboxEnvironment
— (Boolean
)Indicates whether the connector profile applies to a sandbox or production environment.
usePrivateLinkForMetadataAndAuthorization
— (Boolean
)If the connection mode for the connector profile is private, this parameter sets whether Amazon AppFlow uses the private network to send metadata and authorization calls to Salesforce. Amazon AppFlow sends private calls through Amazon Web Services PrivateLink. These calls travel through Amazon Web Services infrastructure without being exposed to the public internet.
Set either of the following values:
- true
-
Amazon AppFlow sends all calls to Salesforce over the private network.
These private calls are:
-
Calls to get metadata about your Salesforce records. This metadata describes your Salesforce objects and their fields.
-
Calls to get or refresh access tokens that allow Amazon AppFlow to access your Salesforce records.
-
Calls to transfer your Salesforce records as part of a flow run.
-
- false
-
The default value. Amazon AppFlow sends some calls to Salesforce privately and other calls over the public internet.
The public calls are:
-
Calls to get metadata about your Salesforce records.
-
Calls to get or refresh access tokens.
The private calls are:
-
Calls to transfer your Salesforce records as part of a flow run.
-
ServiceNow
— (map
)The connector-specific properties required by serviceNow.
instanceUrl
— required — (String
)The location of the ServiceNow resource.
Singular
— (map
)The connector-specific properties required by Singular.
Slack
— (map
)The connector-specific properties required by Slack.
instanceUrl
— required — (String
)The location of the Slack resource.
Snowflake
— (map
)The connector-specific properties required by Snowflake.
warehouse
— required — (String
)The name of the Snowflake warehouse.
stage
— required — (String
)The name of the Amazon S3 stage that was created while setting up an Amazon S3 stage in the Snowflake account. This is written in the following format: < Database>< Schema><Stage Name>.
bucketName
— required — (String
)The name of the Amazon S3 bucket associated with Snowflake.
bucketPrefix
— (String
)The bucket path that refers to the Amazon S3 bucket associated with Snowflake.
privateLinkServiceName
— (String
)The Snowflake Private Link service name to be used for private data transfers.
accountName
— (String
)The name of the account.
region
— (String
)The Amazon Web Services Region of the Snowflake account.
Trendmicro
— (map
)The connector-specific properties required by Trend Micro.
Veeva
— (map
)The connector-specific properties required by Veeva.
instanceUrl
— required — (String
)The location of the Veeva resource.
Zendesk
— (map
)The connector-specific properties required by Zendesk.
instanceUrl
— required — (String
)The location of the Zendesk resource.
SAPOData
— (map
)The connector-specific profile properties required when using SAPOData.
applicationHostUrl
— required — (String
)The location of the SAPOData resource.
applicationServicePath
— required — (String
)The application path to catalog service.
portNumber
— required — (Integer
)The port number of the SAPOData instance.
clientNumber
— required — (String
)The client number for the client creating the connection.
logonLanguage
— (String
)The logon language of SAPOData instance.
privateLinkServiceName
— (String
)The SAPOData Private Link service name to be used for private data transfers.
oAuthProperties
— (map
)The SAPOData OAuth properties required for OAuth type authentication.
tokenUrl
— required — (String
)The token url required to fetch access/refresh tokens using authorization code and also to refresh expired access token using refresh token.
authCodeUrl
— required — (String
)The authorization code url required to redirect to SAP Login Page to fetch authorization code for OAuth type authentication.
oAuthScopes
— required — (Array<String>
)The OAuth scopes required for OAuth type authentication.
disableSSO
— (Boolean
)If you set this parameter to
true
, Amazon AppFlow bypasses the single sign-on (SSO) settings in your SAP account when it accesses your SAP OData instance.Whether you need this option depends on the types of credentials that you applied to your SAP OData connection profile. If your profile uses basic authentication credentials, SAP SSO can prevent Amazon AppFlow from connecting to your account with your username and password. In this case, bypassing SSO makes it possible for Amazon AppFlow to connect successfully. However, if your profile uses OAuth credentials, this parameter has no affect.
CustomConnector
— (map
)The properties required by the custom connector.
profileProperties
— (map<String>
)A map of properties that are required to create a profile for the custom connector.
oAuth2Properties
— (map
)The OAuth 2.0 properties required for OAuth 2.0 authentication.
tokenUrl
— required — (String
)The token URL required for OAuth 2.0 authentication.
oAuth2GrantType
— required — (String
)The OAuth 2.0 grant type used by connector for OAuth 2.0 authentication.
Possible values include:"CLIENT_CREDENTIALS"
"AUTHORIZATION_CODE"
"JWT_BEARER"
tokenUrlCustomProperties
— (map<String>
)Associates your token URL with a map of properties that you define. Use this parameter to provide any additional details that the connector requires to authenticate your request.
Pardot
— (map
)The connector-specific properties required by Salesforce Pardot.
instanceUrl
— (String
)The location of the Salesforce Pardot resource.
isSandboxEnvironment
— (Boolean
)Indicates whether the connector profile applies to a sandbox or production environment.
businessUnitId
— (String
)The business unit id of Salesforce Pardot instance.
connectorProfileCredentials
— (map
)The connector-specific credentials required by each connector.
Amplitude
— (map
)The connector-specific credentials required when using Amplitude.
apiKey
— required — (String
)A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
secretKey
— required — (String
)The Secret Access Key portion of the credentials.
Datadog
— (map
)The connector-specific credentials required when using Datadog.
apiKey
— required — (String
)A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
applicationKey
— required — (String
)Application keys, in conjunction with your API key, give you full access to Datadog’s programmatic API. Application keys are associated with the user account that created them. The application key is used to log all requests made to the API.
Dynatrace
— (map
)The connector-specific credentials required when using Dynatrace.
apiToken
— required — (String
)The API tokens used by Dynatrace API to authenticate various API calls.
GoogleAnalytics
— (map
)The connector-specific credentials required when using Google Analytics.
clientId
— required — (String
)The identifier for the desired client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The credentials used to access protected Google Analytics resources.
refreshToken
— (String
)The credentials used to acquire new access tokens. This is required only for OAuth2 access tokens, and is not required for OAuth1 access tokens.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
Honeycode
— (map
)The connector-specific credentials required when using Amazon Honeycode.
accessToken
— (String
)The credentials used to access protected Amazon Honeycode resources.
refreshToken
— (String
)The credentials used to acquire new access tokens.
oAuthRequest
— (map
)Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
InforNexus
— (map
)The connector-specific credentials required when using Infor Nexus.
accessKeyId
— required — (String
)The Access Key portion of the credentials.
userId
— required — (String
)The identifier for the user.
secretAccessKey
— required — (String
)The secret key used to sign requests.
datakey
— required — (String
)The encryption keys used to encrypt data.
Marketo
— (map
)The connector-specific credentials required when using Marketo.
clientId
— required — (String
)The identifier for the desired client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The credentials used to access protected Marketo resources.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
Redshift
— (map
)The connector-specific credentials required when using Amazon Redshift.
username
— (String
)The name of the user.
password
— (String
)The password that corresponds to the user name.
Salesforce
— (map
)The connector-specific credentials required when using Salesforce.
accessToken
— (String
)The credentials used to access protected Salesforce resources.
refreshToken
— (String
)The credentials used to acquire new access tokens.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
clientCredentialsArn
— (String
)The secret manager ARN, which contains the client ID and client secret of the connected app.
oAuth2GrantType
— (String
)Specifies the OAuth 2.0 grant type that Amazon AppFlow uses when it requests an access token from Salesforce. Amazon AppFlow requires an access token each time it attempts to access your Salesforce records.
You can specify one of the following values:
- AUTHORIZATION_CODE
-
Amazon AppFlow passes an authorization code when it requests the access token from Salesforce. Amazon AppFlow receives the authorization code from Salesforce after you log in to your Salesforce account and authorize Amazon AppFlow to access your records.
- CLIENT_CREDENTIALS
-
Amazon AppFlow passes client credentials (a client ID and client secret) when it requests the access token from Salesforce. You provide these credentials to Amazon AppFlow when you define the connection to your Salesforce account.
- JWT_BEARER
-
Amazon AppFlow passes a JSON web token (JWT) when it requests the access token from Salesforce. You provide the JWT to Amazon AppFlow when you define the connection to your Salesforce account. When you use this grant type, you don't need to log in to your Salesforce account to authorize Amazon AppFlow to access your records.
"CLIENT_CREDENTIALS"
"AUTHORIZATION_CODE"
"JWT_BEARER"
jwtToken
— (String
)A JSON web token (JWT) that authorizes Amazon AppFlow to access your Salesforce records.
ServiceNow
— (map
)The connector-specific credentials required when using ServiceNow.
username
— (String
)The name of the user.
password
— (String
)The password that corresponds to the user name.
oAuth2Credentials
— (map
)The OAuth 2.0 credentials required to authenticate the user.
clientId
— (String
)The identifier for the desired client.
clientSecret
— (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The access token used to access the connector on your behalf.
refreshToken
— (String
)The refresh token used to refresh an expired access token.
oAuthRequest
— (map
)Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
Singular
— (map
)The connector-specific credentials required when using Singular.
apiKey
— required — (String
)A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
Slack
— (map
)The connector-specific credentials required when using Slack.
clientId
— required — (String
)The identifier for the client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The credentials used to access protected Slack resources.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
Snowflake
— (map
)The connector-specific credentials required when using Snowflake.
username
— required — (String
)The name of the user.
password
— required — (String
)The password that corresponds to the user name.
Trendmicro
— (map
)The connector-specific credentials required when using Trend Micro.
apiSecretKey
— required — (String
)The Secret Access Key portion of the credentials.
Veeva
— (map
)The connector-specific credentials required when using Veeva.
username
— required — (String
)The name of the user.
password
— required — (String
)The password that corresponds to the user name.
Zendesk
— (map
)The connector-specific credentials required when using Zendesk.
clientId
— required — (String
)The identifier for the desired client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The credentials used to access protected Zendesk resources.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
SAPOData
— (map
)The connector-specific profile credentials required when using SAPOData.
basicAuthCredentials
— (map
)The SAPOData basic authentication credentials.
username
— required — (String
)The username to use to connect to a resource.
password
— required — (String
)The password to use to connect to a resource.
oAuthCredentials
— (map
)The SAPOData OAuth type authentication credentials.
clientId
— required — (String
)The identifier for the desired client.
clientSecret
— required — (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The access token used to access protected SAPOData resources.
refreshToken
— (String
)The refresh token used to refresh expired access token.
oAuthRequest
— (map
)The OAuth requirement needed to request security tokens from the connector endpoint.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
CustomConnector
— (map
)The connector-specific profile credentials that are required when using the custom connector.
authenticationType
— required — (String
)The authentication type that the custom connector uses for authenticating while creating a connector profile.
Possible values include:"OAUTH2"
"APIKEY"
"BASIC"
"CUSTOM"
basic
— (map
)The basic credentials that are required for the authentication of the user.
username
— required — (String
)The username to use to connect to a resource.
password
— required — (String
)The password to use to connect to a resource.
oauth2
— (map
)The OAuth 2.0 credentials required for the authentication of the user.
clientId
— (String
)The identifier for the desired client.
clientSecret
— (String
)The client secret used by the OAuth client to authenticate to the authorization server.
accessToken
— (String
)The access token used to access the connector on your behalf.
refreshToken
— (String
)The refresh token used to refresh an expired access token.
oAuthRequest
— (map
)Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
apiKey
— (map
)The API keys required for the authentication of the user.
apiKey
— required — (String
)The API key required for API key authentication.
apiSecretKey
— (String
)The API secret key required for API key authentication.
custom
— (map
)If the connector uses the custom authentication mechanism, this holds the required credentials.
customAuthenticationType
— required — (String
)The custom authentication type that the connector uses.
credentialsMap
— (map<String>
)A map that holds custom authentication credentials.
Pardot
— (map
)The connector-specific credentials required when using Salesforce Pardot.
accessToken
— (String
)The credentials used to access protected Salesforce Pardot resources.
refreshToken
— (String
)The credentials used to acquire new access tokens.
oAuthRequest
— (map
)Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
authCode
— (String
)The code provided by the connector when it has been authenticated via the connected app.
redirectUri
— (String
)The URL to which the authentication server redirects the browser after authorization has been granted.
clientCredentialsArn
— (String
)The secret manager ARN, which contains the client ID and client secret of the connected app.
clientToken
— (String
)The
clientToken
parameter is an idempotency token. It ensures that yourUpdateConnectorProfile
request completes only once. You choose the value to pass. For example, if you don't receive a response from your request, you can safely retry the request with the sameclientToken
parameter value.If you omit a
clientToken
value, the Amazon Web Services SDK that you are using inserts a value for you. This way, the SDK can safely retry requests multiple times after a network error. You must provide your own value for other use cases.If you specify input parameters that differ from your first request, an error occurs. If you use a different value for
If a token is not provided, the SDK will use a version 4 UUID.clientToken
, Amazon AppFlow considers it a new call toUpdateConnectorProfile
. The token is active for 8 hours.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorProfileArn
— (String
)The Amazon Resource Name (ARN) of the connector profile.
-
(AWS.Response)
—
Returns:
updateConnectorRegistration(params = {}, callback) ⇒ AWS.Request
Updates a custom connector that you've previously registered. This operation updates the connector with one of the following:
-
The latest version of the AWS Lambda function that's assigned to the connector
-
A new AWS Lambda function that you specify
Service Reference:
Examples:
Calling the updateConnectorRegistration operation
var params = {
connectorLabel: 'STRING_VALUE', /* required */
clientToken: 'STRING_VALUE',
connectorProvisioningConfig: {
lambda: {
lambdaArn: 'STRING_VALUE' /* required */
}
},
description: 'STRING_VALUE'
};
appflow.updateConnectorRegistration(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
connectorLabel
— (String
)The name of the connector. The name is unique for each connector registration in your AWS account.
description
— (String
)A description about the update that you're applying to the connector.
connectorProvisioningConfig
— (map
)Contains information about the configuration of the connector being registered.
lambda
— (map
)Contains information about the configuration of the lambda which is being registered as the connector.
lambdaArn
— required — (String
)Lambda ARN of the connector being registered.
clientToken
— (String
)The
clientToken
parameter is an idempotency token. It ensures that yourUpdateConnectorRegistration
request completes only once. You choose the value to pass. For example, if you don't receive a response from your request, you can safely retry the request with the sameclientToken
parameter value.If you omit a
clientToken
value, the Amazon Web Services SDK that you are using inserts a value for you. This way, the SDK can safely retry requests multiple times after a network error. You must provide your own value for other use cases.If you specify input parameters that differ from your first request, an error occurs. If you use a different value for
If a token is not provided, the SDK will use a version 4 UUID.clientToken
, Amazon AppFlow considers it a new call toUpdateConnectorRegistration
. The token is active for 8 hours.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:connectorArn
— (String
)The ARN of the connector being updated.
-
(AWS.Response)
—
Returns:
updateFlow(params = {}, callback) ⇒ AWS.Request
Updates an existing flow.
Service Reference:
Examples:
Calling the updateFlow operation
var params = {
destinationFlowConfigList: [ /* required */
{
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot, /* required */
destinationConnectorProperties: { /* required */
CustomConnector: {
entityName: 'STRING_VALUE', /* required */
customProperties: {
'<CustomPropertyKey>': 'STRING_VALUE',
/* '<CustomPropertyKey>': ... */
},
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
},
idFieldNames: [
'STRING_VALUE',
/* more items */
],
writeOperationType: INSERT | UPSERT | UPDATE | DELETE
},
CustomerProfiles: {
domainName: 'STRING_VALUE', /* required */
objectTypeName: 'STRING_VALUE'
},
EventBridge: {
object: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
Honeycode: {
object: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
LookoutMetrics: {
},
Marketo: {
object: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
Redshift: {
intermediateBucketName: 'STRING_VALUE', /* required */
object: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
S3: {
bucketName: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
s3OutputFormatConfig: {
aggregationConfig: {
aggregationType: None | SingleFile,
targetFileSize: 'NUMBER_VALUE'
},
fileType: CSV | JSON | PARQUET,
prefixConfig: {
pathPrefixHierarchy: [
EXECUTION_ID | SCHEMA_VERSION,
/* more items */
],
prefixFormat: YEAR | MONTH | DAY | HOUR | MINUTE,
prefixType: FILENAME | PATH | PATH_AND_FILENAME
},
preserveSourceDataTyping: true || false
}
},
SAPOData: {
objectPath: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
},
idFieldNames: [
'STRING_VALUE',
/* more items */
],
successResponseHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE'
},
writeOperationType: INSERT | UPSERT | UPDATE | DELETE
},
Salesforce: {
object: 'STRING_VALUE', /* required */
dataTransferApi: AUTOMATIC | BULKV2 | REST_SYNC,
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
},
idFieldNames: [
'STRING_VALUE',
/* more items */
],
writeOperationType: INSERT | UPSERT | UPDATE | DELETE
},
Snowflake: {
intermediateBucketName: 'STRING_VALUE', /* required */
object: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
}
},
Upsolver: {
bucketName: 'STRING_VALUE', /* required */
s3OutputFormatConfig: { /* required */
prefixConfig: { /* required */
pathPrefixHierarchy: [
EXECUTION_ID | SCHEMA_VERSION,
/* more items */
],
prefixFormat: YEAR | MONTH | DAY | HOUR | MINUTE,
prefixType: FILENAME | PATH | PATH_AND_FILENAME
},
aggregationConfig: {
aggregationType: None | SingleFile,
targetFileSize: 'NUMBER_VALUE'
},
fileType: CSV | JSON | PARQUET
},
bucketPrefix: 'STRING_VALUE'
},
Zendesk: {
object: 'STRING_VALUE', /* required */
errorHandlingConfig: {
bucketName: 'STRING_VALUE',
bucketPrefix: 'STRING_VALUE',
failOnFirstDestinationError: true || false
},
idFieldNames: [
'STRING_VALUE',
/* more items */
],
writeOperationType: INSERT | UPSERT | UPDATE | DELETE
}
},
apiVersion: 'STRING_VALUE',
connectorProfileName: 'STRING_VALUE'
},
/* more items */
],
flowName: 'STRING_VALUE', /* required */
sourceFlowConfig: { /* required */
connectorType: Salesforce | Singular | Slack | Redshift | S3 | Marketo | Googleanalytics | Zendesk | Servicenow | Datadog | Trendmicro | Snowflake | Dynatrace | Infornexus | Amplitude | Veeva | EventBridge | LookoutMetrics | Upsolver | Honeycode | CustomerProfiles | SAPOData | CustomConnector | Pardot, /* required */
sourceConnectorProperties: { /* required */
Amplitude: {
object: 'STRING_VALUE' /* required */
},
CustomConnector: {
entityName: 'STRING_VALUE', /* required */
customProperties: {
'<CustomPropertyKey>': 'STRING_VALUE',
/* '<CustomPropertyKey>': ... */
},
dataTransferApi: {
Name: 'STRING_VALUE',
Type: SYNC | ASYNC | AUTOMATIC
}
},
Datadog: {
object: 'STRING_VALUE' /* required */
},
Dynatrace: {
object: 'STRING_VALUE' /* required */
},
GoogleAnalytics: {
object: 'STRING_VALUE' /* required */
},
InforNexus: {
object: 'STRING_VALUE' /* required */
},
Marketo: {
object: 'STRING_VALUE' /* required */
},
Pardot: {
object: 'STRING_VALUE' /* required */
},
S3: {
bucketName: 'STRING_VALUE', /* required */
bucketPrefix: 'STRING_VALUE',
s3InputFormatConfig: {
s3InputFileType: CSV | JSON
}
},
SAPOData: {
objectPath: 'STRING_VALUE',
paginationConfig: {
maxPageSize: 'NUMBER_VALUE' /* required */
},
parallelismConfig: {
maxParallelism: 'NUMBER_VALUE' /* required */
}
},
Salesforce: {
object: 'STRING_VALUE', /* required */
dataTransferApi: AUTOMATIC | BULKV2 | REST_SYNC,
enableDynamicFieldUpdate: true || false,
includeDeletedRecords: true || false
},
ServiceNow: {
object: 'STRING_VALUE' /* required */
},
Singular: {
object: 'STRING_VALUE' /* required */
},
Slack: {
object: 'STRING_VALUE' /* required */
},
Trendmicro: {
object: 'STRING_VALUE' /* required */
},
Veeva: {
object: 'STRING_VALUE', /* required */
documentType: 'STRING_VALUE',
includeAllVersions: true || false,
includeRenditions: true || false,
includeSourceFiles: true || false
},
Zendesk: {
object: 'STRING_VALUE' /* required */
}
},
apiVersion: 'STRING_VALUE',
connectorProfileName: 'STRING_VALUE',
incrementalPullConfig: {
datetimeTypeFieldName: 'STRING_VALUE'
}
},
tasks: [ /* required */
{
sourceFields: [ /* required */
'STRING_VALUE',
/* more items */
],
taskType: Arithmetic | Filter | Map | Map_all | Mask | Merge | Passthrough | Truncate | Validate | Partition, /* required */
connectorOperator: {
Amplitude: BETWEEN,
CustomConnector: 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,
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,
Pardot: PROJECTION | EQUAL_TO | NO_OP | ADDITION | MULTIPLICATION | DIVISION | SUBTRACTION | MASK_ALL | MASK_FIRST_N | MASK_LAST_N | VALIDATE_NON_NULL | VALIDATE_NON_ZERO | VALIDATE_NON_NEGATIVE | VALIDATE_NUMERIC,
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,
SAPOData: 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,
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_VALUE',
taskProperties: {
'<OperatorPropertiesKeys>': 'STRING_VALUE',
/* '<OperatorPropertiesKeys>': ... */
}
},
/* more items */
],
triggerConfig: { /* required */
triggerType: Scheduled | Event | OnDemand, /* required */
triggerProperties: {
Scheduled: {
scheduleExpression: 'STRING_VALUE', /* required */
dataPullMode: Incremental | Complete,
firstExecutionFrom: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
flowErrorDeactivationThreshold: 'NUMBER_VALUE',
scheduleEndTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
scheduleOffset: 'NUMBER_VALUE',
scheduleStartTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
timezone: 'STRING_VALUE'
}
}
},
clientToken: 'STRING_VALUE',
description: 'STRING_VALUE',
metadataCatalogConfig: {
glueDataCatalog: {
databaseName: 'STRING_VALUE', /* required */
roleArn: 'STRING_VALUE', /* required */
tablePrefix: 'STRING_VALUE' /* required */
}
}
};
appflow.updateFlow(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Parameters:
-
params
(Object)
(defaults to: {})
—
flowName
— (String
)The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
description
— (String
)A description of the flow.
triggerConfig
— (map
)The trigger settings that determine how and when the flow runs.
triggerType
— required — (String
)Specifies the type of flow trigger. This can be
Possible values include:OnDemand
,Scheduled
, orEvent
."Scheduled"
"Event"
"OnDemand"
triggerProperties
— (map
)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
— (map
)Specifies the configuration details of a schedule-triggered flow as defined by the user.
scheduleExpression
— required — (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.
Possible values include:"Incremental"
"Complete"
scheduleStartTime
— (Date
)The time at which the scheduled flow starts. The time is formatted as a timestamp that follows the ISO 8601 standard, such as
2022-04-26T13:00:00-07:00
.scheduleEndTime
— (Date
)The time at which the scheduled flow ends. The time is formatted as a timestamp that follows the ISO 8601 standard, such as
2022-04-27T13:00:00-07:00
.timezone
— (String
)Specifies the time zone used when referring to the dates and times of a scheduled flow, such as
America/New_York
. This time zone is only a descriptive label. It doesn't affect how Amazon AppFlow interprets the timestamps that you specify to schedule the flow.If you want to schedule a flow by using times in a particular time zone, indicate the time zone as a UTC offset in your timestamps. For example, the UTC offsets for the
America/New_York
timezone are-04:00
EDT and-05:00 EST
.scheduleOffset
— (Integer
)Specifies the optional offset that is added to the time interval for a schedule-triggered flow.
firstExecutionFrom
— (Date
)Specifies the date range for the records to import from the connector in the first flow run.
flowErrorDeactivationThreshold
— (Integer
)Defines how many times a scheduled flow fails consecutively before Amazon AppFlow deactivates it.
sourceFlowConfig
— (map
)Contains information about the configuration of the source connector used in the flow.
connectorType
— required — (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
apiVersion
— (String
)The API version of the connector when it's used as a source in the flow.
connectorProfileName
— (String
)The name of the connector profile. This name must be unique for each connector profile in the Amazon Web Services account.
sourceConnectorProperties
— required — (map
)Specifies the information that is required to query a particular source connector.
Amplitude
— (map
)Specifies the information that is required for querying Amplitude.
object
— required — (String
)The object specified in the Amplitude flow source.
Datadog
— (map
)Specifies the information that is required for querying Datadog.
object
— required — (String
)The object specified in the Datadog flow source.
Dynatrace
— (map
)Specifies the information that is required for querying Dynatrace.
object
— required — (String
)The object specified in the Dynatrace flow source.
GoogleAnalytics
— (map
)Specifies the information that is required for querying Google Analytics.
object
— required — (String
)The object specified in the Google Analytics flow source.
InforNexus
— (map
)Specifies the information that is required for querying Infor Nexus.
object
— required — (String
)The object specified in the Infor Nexus flow source.
Marketo
— (map
)Specifies the information that is required for querying Marketo.
object
— required — (String
)The object specified in the Marketo flow source.
S3
— (map
)Specifies the information that is required for querying Amazon S3.
bucketName
— required — (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.
s3InputFormatConfig
— (map
)When you use Amazon S3 as the source, the configuration format that you provide the flow input data.
s3InputFileType
— (String
)The file type that Amazon AppFlow gets from your Amazon S3 bucket.
Possible values include:"CSV"
"JSON"
Salesforce
— (map
)Specifies the information that is required for querying Salesforce.
object
— required — (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.
dataTransferApi
— (String
)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.
"AUTOMATIC"
"BULKV2"
"REST_SYNC"
ServiceNow
— (map
)Specifies the information that is required for querying ServiceNow.
object
— required — (String
)The object specified in the ServiceNow flow source.
Singular
— (map
)Specifies the information that is required for querying Singular.
object
— required — (String
)The object specified in the Singular flow source.
Slack
— (map
)Specifies the information that is required for querying Slack.
object
— required — (String
)The object specified in the Slack flow source.
Trendmicro
— (map
)Specifies the information that is required for querying Trend Micro.
object
— required — (String
)The object specified in the Trend Micro flow source.
Veeva
— (map
)Specifies the information that is required for querying Veeva.
object
— required — (String
)The object specified in the Veeva flow source.
documentType
— (String
)The document type specified in the Veeva document extract flow.
includeSourceFiles
— (Boolean
)Boolean value to include source files in Veeva document extract flow.
includeRenditions
— (Boolean
)Boolean value to include file renditions in Veeva document extract flow.
includeAllVersions
— (Boolean
)Boolean value to include All Versions of files in Veeva document extract flow.
Zendesk
— (map
)Specifies the information that is required for querying Zendesk.
object
— required — (String
)The object specified in the Zendesk flow source.
SAPOData
— (map
)The properties that are applied when using SAPOData as a flow source.
objectPath
— (String
)The object path specified in the SAPOData flow source.
parallelismConfig
— (map
)Sets the number of concurrent processes that transfers OData records from your SAP instance.
maxParallelism
— required — (Integer
)The maximum number of processes that Amazon AppFlow runs at the same time when it retrieves your data from your SAP application.
paginationConfig
— (map
)Sets the page size for each concurrent process that transfers OData records from your SAP instance.
maxPageSize
— required — (Integer
)The maximum number of records that Amazon AppFlow receives in each page of the response from your SAP application. For transfers of OData records, the maximum page size is 3,000. For transfers of data that comes from an ODP provider, the maximum page size is 10,000.
CustomConnector
— (map
)The properties that are applied when the custom connector is being used as a source.
entityName
— required — (String
)The entity specified in the custom connector as a source in the flow.
customProperties
— (map<String>
)Custom properties that are required to use the custom connector as a source.
dataTransferApi
— (map
)The API of the connector application that Amazon AppFlow uses to transfer your data.
Name
— (String
)The name of the connector application API.
Type
— (String
)You can specify one of the following types:
- AUTOMATIC
-
The default. Optimizes a flow for datasets that fluctuate in size from small to large. For each flow run, Amazon AppFlow chooses to use the SYNC or ASYNC API type based on the amount of data that the run transfers.
- SYNC
-
A synchronous API. This type of API optimizes a flow for small to medium-sized datasets.
- ASYNC
-
An asynchronous API. This type of API optimizes a flow for large datasets.
"SYNC"
"ASYNC"
"AUTOMATIC"
Pardot
— (map
)Specifies the information that is required for querying Salesforce Pardot.
object
— required — (String
)The object specified in the Salesforce Pardot flow source.
incrementalPullConfig
— (map
)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
— (Array<map>
)The configuration that controls how Amazon AppFlow transfers data to the destination connector.
connectorType
— required — (String
)The type of connector, such as Salesforce, Amplitude, and so on.
Possible values include:"Salesforce"
"Singular"
"Slack"
"Redshift"
"S3"
"Marketo"
"Googleanalytics"
"Zendesk"
"Servicenow"
"Datadog"
"Trendmicro"
"Snowflake"
"Dynatrace"
"Infornexus"
"Amplitude"
"Veeva"
"EventBridge"
"LookoutMetrics"
"Upsolver"
"Honeycode"
"CustomerProfiles"
"SAPOData"
"CustomConnector"
"Pardot"
apiVersion
— (String
)The API version that the destination connector uses.
connectorProfileName
— (String
)The name of the connector profile. This name must be unique for each connector profile in the Amazon Web Services account.
destinationConnectorProperties
— required — (map
)This stores the information that is required to query a particular connector.
Redshift
— (map
)The properties required to query Amazon Redshift.
object
— required — (String
)The object specified in the Amazon Redshift flow destination.
intermediateBucketName
— required — (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
— (map
)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
— (map
)The properties required to query Amazon S3.
bucketName
— required — (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
— (map
)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.
Possible values include:"CSV"
"JSON"
"PARQUET"
prefixConfig
— (map
)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 format of the prefix, and whether it applies to the file name, file path, or both.
Possible values include:"FILENAME"
"PATH"
"PATH_AND_FILENAME"
prefixFormat
— (String
)Determines the level of granularity for the date and time that's included in the prefix.
Possible values include:"YEAR"
"MONTH"
"DAY"
"HOUR"
"MINUTE"
pathPrefixHierarchy
— (Array<String>
)Specifies whether the destination file path includes either or both of the following elements:
- EXECUTION_ID
-
The ID that Amazon AppFlow assigns to the flow run.
- SCHEMA_VERSION
-
The version number of your data schema. Amazon AppFlow assigns this version number. The version number increases by one when you change any of the following settings in your flow configuration:
-
Source-to-destination field mappings
-
Field data types
-
Partition keys
-
aggregationConfig
— (map
)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.
Possible values include:"None"
"SingleFile"
targetFileSize
— (Integer
)The desired file size, in MB, for each output file that Amazon AppFlow writes to the flow destination. For each file, Amazon AppFlow attempts to achieve the size that you specify. The actual file sizes might differ from this target based on the number and size of the records that each file contains.
preserveSourceDataTyping
— (Boolean
)If your file output format is Parquet, use this parameter to set whether Amazon AppFlow preserves the data types in your source data when it writes the output to Amazon S3.
-
true
: Amazon AppFlow preserves the data types when it writes to Amazon S3. For example, an integer or1
in your source data is still an integer in your output. -
false
: Amazon AppFlow converts all of the source data into strings when it writes to Amazon S3. For example, an integer of1
in your source data becomes the string"1"
in the output.
-
Salesforce
— (map
)The properties required to query Salesforce.
object
— required — (String
)The object specified in the Salesforce flow destination.
idFieldNames
— (Array<String>
)The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update or delete.
errorHandlingConfig
— (map
)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
Possible values include:UPSERT
, thenidFieldNames
is required."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
dataTransferApi
— (String
)Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce.
- AUTOMATIC
-
The default. Amazon AppFlow selects which API to use based on the number of records that your flow transfers to Salesforce. If your flow transfers fewer than 1,000 records, Amazon AppFlow uses Salesforce REST API. If your flow transfers 1,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 records, and it might use Bulk API 2.0 on the next day to transfer 1,100 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 with a timed out error.
"AUTOMATIC"
"BULKV2"
"REST_SYNC"
Snowflake
— (map
)The properties required to query Snowflake.
object
— required — (String
)The object specified in the Snowflake flow destination.
intermediateBucketName
— required — (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
— (map
)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
— (map
)The properties required to query Amazon EventBridge.
object
— required — (String
)The object specified in the Amazon EventBridge flow destination.
errorHandlingConfig
— (map
)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.
LookoutMetrics
— (map
)The properties required to query Amazon Lookout for Metrics.
Upsolver
— (map
)The properties required to query Upsolver.
bucketName
— required — (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
— required — (map
)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.
Possible values include:"CSV"
"JSON"
"PARQUET"
prefixConfig
— required — (map
)Specifies elements that Amazon AppFlow includes in the file and folder names in the flow destination.
prefixType
— (String
)Determines the format of the prefix, and whether it applies to the file name, file path, or both.
Possible values include:"FILENAME"
"PATH"
"PATH_AND_FILENAME"
prefixFormat
— (String
)Determines the level of granularity for the date and time that's included in the prefix.
Possible values include:"YEAR"
"MONTH"
"DAY"
"HOUR"
"MINUTE"
pathPrefixHierarchy
— (Array<String>
)Specifies whether the destination file path includes either or both of the following elements:
- EXECUTION_ID
-
The ID that Amazon AppFlow assigns to the flow run.
- SCHEMA_VERSION
-
The version number of your data schema. Amazon AppFlow assigns this version number. The version number increases by one when you change any of the following settings in your flow configuration:
-
Source-to-destination field mappings
-
Field data types
-
Partition keys
-
aggregationConfig
— (map
)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.
Possible values include:"None"
"SingleFile"
targetFileSize
— (Integer
)The desired file size, in MB, for each output file that Amazon AppFlow writes to the flow destination. For each file, Amazon AppFlow attempts to achieve the size that you specify. The actual file sizes might differ from this target based on the number and size of the records that each file contains.
Honeycode
— (map
)The properties required to query Amazon Honeycode.
object
— required — (String
)The object specified in the Amazon Honeycode flow destination.
errorHandlingConfig
— (map
)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.
CustomerProfiles
— (map
)The properties required to query Amazon Connect Customer Profiles.
domainName
— required — (String
)The unique name of the Amazon Connect Customer Profiles domain.
objectTypeName
— (String
)The object specified in the Amazon Connect Customer Profiles flow destination.
Zendesk
— (map
)The properties required to query Zendesk.
object
— required — (String
)The object specified in the Zendesk flow destination.
idFieldNames
— (Array<String>
)A list of field names that can be used as an ID field when performing a write operation.
errorHandlingConfig
— (map
)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.
writeOperationType
— (String
)The possible write operations in the destination connector. When this value is not provided, this defaults to the
Possible values include:INSERT
operation."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
Marketo
— (map
)The properties required to query Marketo.
object
— required — (String
)The object specified in the Marketo flow destination.
errorHandlingConfig
— (map
)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.
CustomConnector
— (map
)The properties that are required to query the custom Connector.
entityName
— required — (String
)The entity specified in the custom connector as a destination in the flow.
errorHandlingConfig
— (map
)The settings that determine how Amazon AppFlow handles an error when placing data in the custom connector as destination.
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
)Specifies the type of write operation to be performed in the custom connector when it's used as destination.
Possible values include:"INSERT"
"UPSERT"
"UPDATE"
"DELETE"
idFieldNames
— (Array<String>
)The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update, delete, or upsert.
customProperties
— (map<String>
)The custom properties that are specific to the connector when it's used as a destination in the flow.
SAPOData
— (map
)The properties required to query SAPOData.
objectPath
— required — (String
)The object path specified in the SAPOData flow destination.
successResponseHandlingConfig
— (map
)Determines how Amazon AppFlow handles the success response that it gets from the connector after placing data.
For example, this setting would determine where to write the response from a destination connector upon a successful insert operation.
bucketPrefix
— (String
)The Amazon S3 bucket prefix.
bucketName
— (String
)The name of the Amazon S3 bucket.
idFieldNames
— (Array<String>
)A list of field names that can be used as an ID field when performing a write operation.
errorHandlingConfig
— (map
)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.
writeOperationType
— (String
)The possible write operations in the destination connector. When this value is not provided, this defaults to the
Possible values include:INSERT
operation."INSERT"
"UPSERT"
"UPDATE"
"DELETE"
tasks
— (Array<map>
)A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.
sourceFields
— required — (Array<String>
)The source fields to which a particular task is applied.
connectorOperator
— (map
)The operation to be performed on the provided source fields.
Amplitude
— (String
)The operation to be performed on the provided Amplitude source fields.
Possible values include:"BETWEEN"
Datadog
— (String
)The operation to be performed on the provided Datadog source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Dynatrace source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Google Analytics source fields.
Possible values include:"PROJECTION"
"BETWEEN"
InforNexus
— (String
)The operation to be performed on the provided Infor Nexus source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Marketo source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Amazon S3 source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Salesforce source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided ServiceNow source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Singular source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Slack source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Trend Micro source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Veeva source fields.
Possible values include:"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
— (String
)The operation to be performed on the provided Zendesk source fields.
Possible values include:"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"
SAPOData
— (String
)The operation to be performed on the provided SAPOData source fields.
Possible values include:"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"
CustomConnector
— (String
)Operators supported by the custom connector.
Possible values include:"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"
Pardot
— (String
)The operation to be performed on the provided Salesforce Pardot source fields.
Possible values include:"PROJECTION"
"EQUAL_TO"
"NO_OP"
"ADDITION"
"MULTIPLICATION"
"DIVISION"
"SUBTRACTION"
"MASK_ALL"
"MASK_FIRST_N"
"MASK_LAST_N"
"VALIDATE_NON_NULL"
"VALIDATE_NON_ZERO"
"VALIDATE_NON_NEGATIVE"
"VALIDATE_NUMERIC"
destinationField
— (String
)A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.
taskType
— required — (String
)Specifies the particular task implementation that Amazon AppFlow performs.
Possible values include:"Arithmetic"
"Filter"
"Map"
"Map_all"
"Mask"
"Merge"
"Passthrough"
"Truncate"
"Validate"
"Partition"
taskProperties
— (map<String>
)A map used to store task-related information. The execution service looks for particular information based on the
TaskType
.
metadataCatalogConfig
— (map
)Specifies the configuration that Amazon AppFlow uses when it catalogs the data that's transferred by the associated flow. When Amazon AppFlow catalogs the data from a flow, it stores metadata in a data catalog.
glueDataCatalog
— (map
)Specifies the configuration that Amazon AppFlow uses when it catalogs your data with the Glue Data Catalog.
roleArn
— required — (String
)The Amazon Resource Name (ARN) of an IAM role that grants Amazon AppFlow the permissions it needs to create Data Catalog tables, databases, and partitions.
For an example IAM policy that has the required permissions, see Identity-based policy examples for Amazon AppFlow.
databaseName
— required — (String
)The name of the Data Catalog database that stores the metadata tables that Amazon AppFlow creates in your Amazon Web Services account. These tables contain metadata for the data that's transferred by the flow that you configure with this parameter.
Note: When you configure a new flow with this parameter, you must specify an existing database.tablePrefix
— required — (String
)A naming prefix for each Data Catalog table that Amazon AppFlow creates for the flow that you configure with this setting. Amazon AppFlow adds the prefix to the beginning of the each table name.
clientToken
— (String
)The
clientToken
parameter is an idempotency token. It ensures that yourUpdateFlow
request completes only once. You choose the value to pass. For example, if you don't receive a response from your request, you can safely retry the request with the sameclientToken
parameter value.If you omit a
clientToken
value, the Amazon Web Services SDK that you are using inserts a value for you. This way, the SDK can safely retry requests multiple times after a network error. You must provide your own value for other use cases.If you specify input parameters that differ from your first request, an error occurs. If you use a different value for
If a token is not provided, the SDK will use a version 4 UUID.clientToken
, Amazon AppFlow considers it a new call toUpdateFlow
. The token is active for 8 hours.
Callback (callback):
-
function(err, data) { ... }
Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.
Context (this):
-
(AWS.Response)
—
the response object containing error, data properties, and the original request object.
Parameters:
-
err
(Error)
—
the error object returned from the request. Set to
null
if the request is successful. -
data
(Object)
—
the de-serialized data returned from the request. Set to
null
if a request error occurs. Thedata
object has the following properties:flowStatus
— (String
)Indicates the current status of the flow.
Possible values include:"Active"
"Deprecated"
"Deleted"
"Draft"
"Errored"
"Suspended"
-
(AWS.Response)
—
Returns: