DescribeFlow
Provides a description of the specified flow.
Request Syntax
POST /describe-flow HTTP/1.1
Content-type: application/json
{
"flowName": "string
"
}
URI Request Parameters
The request does not use any URI parameters.
Request Body
The request accepts the following data in JSON format.
- flowName
-
The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
Type: String
Length Constraints: Maximum length of 256.
Pattern:
[a-zA-Z0-9][\w!@#.-]+
Required: Yes
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"createdAt": number,
"createdBy": "string",
"description": "string",
"destinationFlowConfigList": [
{
"connectorProfileName": "string",
"connectorType": "string",
"destinationConnectorProperties": {
"CustomerProfiles": {
"domainName": "string",
"objectTypeName": "string"
},
"EventBridge": {
"errorHandlingConfig": {
"bucketName": "string",
"bucketPrefix": "string",
"failOnFirstDestinationError": boolean
},
"object": "string"
},
"Honeycode": {
"errorHandlingConfig": {
"bucketName": "string",
"bucketPrefix": "string",
"failOnFirstDestinationError": boolean
},
"object": "string"
},
"LookoutMetrics": {
},
"Redshift": {
"bucketPrefix": "string",
"errorHandlingConfig": {
"bucketName": "string",
"bucketPrefix": "string",
"failOnFirstDestinationError": boolean
},
"intermediateBucketName": "string",
"object": "string"
},
"S3": {
"bucketName": "string",
"bucketPrefix": "string",
"s3OutputFormatConfig": {
"aggregationConfig": {
"aggregationType": "string"
},
"fileType": "string",
"prefixConfig": {
"prefixFormat": "string",
"prefixType": "string"
}
}
},
"Salesforce": {
"errorHandlingConfig": {
"bucketName": "string",
"bucketPrefix": "string",
"failOnFirstDestinationError": boolean
},
"idFieldNames": [ "string" ],
"object": "string",
"writeOperationType": "string"
},
"Snowflake": {
"bucketPrefix": "string",
"errorHandlingConfig": {
"bucketName": "string",
"bucketPrefix": "string",
"failOnFirstDestinationError": boolean
},
"intermediateBucketName": "string",
"object": "string"
},
"Upsolver": {
"bucketName": "string",
"bucketPrefix": "string",
"s3OutputFormatConfig": {
"aggregationConfig": {
"aggregationType": "string"
},
"fileType": "string",
"prefixConfig": {
"prefixFormat": "string",
"prefixType": "string"
}
}
}
}
}
],
"flowArn": "string",
"flowName": "string",
"flowStatus": "string",
"flowStatusMessage": "string",
"kmsArn": "string",
"lastRunExecutionDetails": {
"mostRecentExecutionMessage": "string",
"mostRecentExecutionStatus": "string",
"mostRecentExecutionTime": number
},
"lastUpdatedAt": number,
"lastUpdatedBy": "string",
"sourceFlowConfig": {
"connectorProfileName": "string",
"connectorType": "string",
"incrementalPullConfig": {
"datetimeTypeFieldName": "string"
},
"sourceConnectorProperties": {
"Amplitude": {
"object": "string"
},
"Datadog": {
"object": "string"
},
"Dynatrace": {
"object": "string"
},
"GoogleAnalytics": {
"object": "string"
},
"InforNexus": {
"object": "string"
},
"Marketo": {
"object": "string"
},
"S3": {
"bucketName": "string",
"bucketPrefix": "string"
},
"Salesforce": {
"enableDynamicFieldUpdate": boolean,
"includeDeletedRecords": boolean,
"object": "string"
},
"ServiceNow": {
"object": "string"
},
"Singular": {
"object": "string"
},
"Slack": {
"object": "string"
},
"Trendmicro": {
"object": "string"
},
"Veeva": {
"object": "string"
},
"Zendesk": {
"object": "string"
}
}
},
"tags": {
"string" : "string"
},
"tasks": [
{
"connectorOperator": {
"Amplitude": "string",
"Datadog": "string",
"Dynatrace": "string",
"GoogleAnalytics": "string",
"InforNexus": "string",
"Marketo": "string",
"S3": "string",
"Salesforce": "string",
"ServiceNow": "string",
"Singular": "string",
"Slack": "string",
"Trendmicro": "string",
"Veeva": "string",
"Zendesk": "string"
},
"destinationField": "string",
"sourceFields": [ "string" ],
"taskProperties": {
"string" : "string"
},
"taskType": "string"
}
],
"triggerConfig": {
"triggerProperties": {
"Scheduled": {
"dataPullMode": "string",
"firstExecutionFrom": number,
"scheduleEndTime": number,
"scheduleExpression": "string",
"scheduleOffset": number,
"scheduleStartTime": number,
"timezone": "string"
}
},
"triggerType": "string"
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- createdAt
-
Specifies when the flow was created.
Type: Timestamp
- createdBy
-
The ARN of the user who created the flow.
Type: String
Length Constraints: Maximum length of 256.
Pattern:
\S+
- description
-
A description of the flow.
Type: String
Length Constraints: Maximum length of 2048.
Pattern:
[\w!@#\-.?,\s]*
- destinationFlowConfigList
-
The configuration that controls how Amazon AppFlow transfers data to the destination connector.
Type: Array of DestinationFlowConfig objects
- flowArn
-
The flow's Amazon Resource Name (ARN).
Type: String
Length Constraints: Maximum length of 512.
Pattern:
arn:aws:appflow:.*:[0-9]+:.*
- flowName
-
The specified name of the flow. Spaces are not allowed. Use underscores (_) or hyphens (-) only.
Type: String
Length Constraints: Maximum length of 256.
Pattern:
[a-zA-Z0-9][\w!@#.-]+
- flowStatus
-
Indicates the current status of the flow.
Type: String
Valid Values:
Active | Deprecated | Deleted | Draft | Errored | Suspended
- flowStatusMessage
-
Contains an error message if the flow status is in a suspended or error state. This applies only to scheduled or event-triggered flows.
Type: String
Length Constraints: Maximum length of 2048.
Pattern:
[\s\w/!@#+=.-]*
- kmsArn
-
The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption. This is required if you do not want to use the Amazon AppFlow-managed KMS key. If you don't provide anything here, Amazon AppFlow uses the Amazon AppFlow-managed KMS key.
Type: String
Length Constraints: Minimum length of 20. Maximum length of 2048.
Pattern:
arn:aws:kms:.*:[0-9]+:.*
- lastRunExecutionDetails
-
Describes the details of the most recent flow run.
Type: ExecutionDetails object
- lastUpdatedAt
-
Specifies when the flow was last updated.
Type: Timestamp
- lastUpdatedBy
-
Specifies the user name of the account that performed the most recent update.
Type: String
Length Constraints: Maximum length of 256.
Pattern:
\S+
- sourceFlowConfig
-
The configuration that controls how Amazon AppFlow retrieves data from the source connector.
Type: SourceFlowConfig object
- tags
-
The tags used to organize, track, or control access for your flow.
Type: String to string map
Map Entries: Minimum number of 0 items. Maximum number of 50 items.
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Key Pattern:
^(?!aws:)[a-zA-Z+-=._:/]+$
Value Length Constraints: Maximum length of 256.
Value Pattern:
[\s\w+-=\.:/@]*
- tasks
-
A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.
Type: Array of Task objects
- triggerConfig
-
The trigger settings that determine how and when the flow runs.
Type: TriggerConfig object
Errors
For information about the errors that are common to all actions, see Common Errors.
- InternalServerException
-
An internal service error occurred during the processing of your request. Try again later.
HTTP Status Code: 500
- ResourceNotFoundException
-
The resource specified in the request (such as the source or destination connector profile) is not found.
HTTP Status Code: 404
Examples
DescribeFlow example
This example shows a sample request and response for the DescribeFlow
API.
Sample Request
{
"flowName": <name of the flow in double quotes>
}
Sample Response
{
"createdAt": created_at_value,
"createdBy": "user",
"description": null,
"destinationFlowConfigList": [
{
"aggregationConfig": null,
"connectorProfileName": "connector_profile_name",
"connectorType": "S3",
"destinationConnectorProps": {
"Redshift": null,
"S3": {
"bucketKey": null,
"bucketName": "salesforceaccountflowbucket"
},
"Salesforce": null,
"Snowflake": null
}
}
],
"flowArn": "flow_arn_value",
"flowName": "test_flow_ondemand_10",
"flowStatus": "Active",
"flowStatusMessage": null,
"kmsArn": null,
"lastRunExecutionDetails": null,
"lastUpdatedAt": last_updated_at_value,
"lastUpdatedBy": "user",
"sourceFlowConfig": {
"connectorProfileName": "connectorProfileName",
"connectorType": "Salesforce",
"sourceConnectorProps": {
"Amplitude": null,
"Datadog": null,
"Dynatrace": null,
"GoogleAnalytics": null,
"InforNexus": null,
"Marketo": null,
"Redshift": null,
"S3": null,
"Salesforce": {
"object": "Account"
},
"ServiceNow": null,
"Singular": null,
"Slack": null,
"Snowflake": null,
"Trendmicro": null,
"Veeva": null,
"Zendesk": null
}
},
"tags": {
"internalId": "Internal_Id_value",
"resourceArn": "resource_arn_value"
},
"tasks": [
{
"connectorOperator": null,
"destinationField": "Id",
"operator": "NO_OP",
"sourceFields": [
"Id"
],
"taskProperties": {
"DESTINATION_DATA_TYPE": "id",
"SOURCE_DATA_TYPE": "id"
},
"taskType": "Mapping"
},
{
"connectorOperator": null,
"destinationField": "Name",
"operator": "NO_OP",
"sourceFields": [
"Name"
],
"taskProperties": {
"DESTINATION_DATA_TYPE": "string",
"SOURCE_DATA_TYPE": "string"
},
"taskType": "Mapping"
},
{
"connectorOperator": null,
"destinationField": null,
"operator": "PROJECTION",
"sourceFields": [
"Id",
"Name"
],
"taskProperties": {},
"taskType": "Filtering"
}
],
"triggerConfig": {
"triggerProps": {
"ScheduledTriggerProps": null
},
"triggerType": "OnDemand"
}
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: