Amazon AppFlow · JSON Structure
Appflow Describe Flow Response Structure
DescribeFlowResponse schema from Amazon AppFlow API
Type: object
Properties: 18
ConnectorsData FlowData IntegrationETLIntegrationSaaSData Transfer
Appflow Describe Flow Response Structure is a JSON Structure definition published by Amazon AppFlow, describing 18 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
Properties
flowArn
description
flowName
kmsArn
flowStatus
flowStatusMessage
sourceFlowConfig
destinationFlowConfigList
lastRunExecutionDetails
triggerConfig
tasks
createdAt
lastUpdatedAt
createdBy
lastUpdatedBy
tags
metadataCatalogConfig
lastRunMetadataCatalogDetails
Meta-schema: https://json-structure.org/meta/core/v0/#
JSON Structure
{
"type": "object",
"description": "DescribeFlowResponse schema from Amazon AppFlow API",
"properties": {
"flowArn": {
"type": "string",
"description": "The flow's Amazon Resource Name (ARN).",
"example": "arn:aws:appflow:us-east-1:123456789012:flow/my-salesforce-to-s3-flow"
},
"description": {
"type": "string",
"description": "A description of the flow.",
"example": "Transfer Salesforce accounts to S3 daily"
},
"flowName": {
"type": "string",
"description": "The specified name of the flow.",
"example": "my-salesforce-to-s3-flow"
},
"kmsArn": {
"type": "string",
"description": "The ARN of the AWS KMS key.",
"example": "arn:aws:kms:us-east-1:123456789012:key/mrk-1234abcd"
},
"flowStatus": {
"type": "string",
"description": "Indicates the current status of the flow.",
"enum": [
"Active",
"Deprecated",
"Deleted",
"Draft",
"Errored",
"Suspended"
],
"example": "Active"
},
"flowStatusMessage": {
"type": "string",
"description": "Contains an error message if the flow status is in a suspended or error state.",
"example": ""
},
"sourceFlowConfig": {
"type": "object",
"properties": {
"connectorType": {
"type": "string",
"description": "The type of connector used as a source.",
"example": "Salesforce"
},
"apiVersion": {
"type": "string",
"description": "The API version of the connector used in the source.",
"example": "v55.0"
},
"connectorProfileName": {
"type": "string",
"description": "The name of the connector profile. Required for all connectors except Amplitude, Datadog, Dynatrace, GoogleAnalytics, Marketo, SAPOData, Salesforce, ServiceNow, Singular, Slack, Trendmicro, and Veeva.",
"example": "my-salesforce-profile"
},
"sourceConnectorProperties": {
"type": "object",
"description": "Specifies the information that is required to query a particular source connector.",
"example": {
"Salesforce": {
"object": "Account"
}
}
},
"incrementalPullConfig": {
"type": "object",
"description": "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.",
"properties": {
"datetimeTypeFieldName": {
"type": "string",
"description": "A field that specifies the date time or timestamp field as the criteria to use when importing incremental records from the source.",
"example": "LastModifiedDate"
}
}
}
},
"required": [
"connectorType",
"sourceConnectorProperties"
]
},
"destinationFlowConfigList": {
"type": "array",
"items": {}
},
"lastRunExecutionDetails": {
"type": "object",
"properties": {
"mostRecentExecutionMessage": {
"type": "string",
"description": "Describes the details of the most recent flow run.",
"example": "Successfully ran the flow"
},
"mostRecentExecutionTime": {
"type": "int64",
"description": "Specifies the time of the most recent flow run.",
"example": 1718153700000
},
"mostRecentExecutionStatus": {
"type": "string",
"description": "Specifies the status of the most recent flow run.",
"enum": [
"InProgress",
"Successful",
"Error",
"CancelStarted",
"Canceled"
],
"example": "Successful"
}
}
},
"triggerConfig": {
"type": "object",
"properties": {
"triggerType": {
"type": "string",
"description": "Specifies the type of flow trigger. It can be OnDemand, Scheduled, or Event.",
"enum": [
"Scheduled",
"Event",
"OnDemand"
],
"example": "Scheduled"
},
"triggerProperties": {
"type": "object",
"description": "Specifies the configuration details of a schedule-triggered flow as defined by the user.",
"properties": {
"Scheduled": {}
}
}
},
"required": [
"triggerType"
]
},
"tasks": {
"type": "array",
"items": {}
},
"createdAt": {
"type": "int64",
"description": "Specifies when the flow was created.",
"example": 1718153645993
},
"lastUpdatedAt": {
"type": "int64",
"description": "Specifies when the flow was last updated.",
"example": 1718153645993
},
"createdBy": {
"type": "string",
"description": "The ARN of the user who created the flow.",
"example": "arn:aws:iam::123456789012:user/admin"
},
"lastUpdatedBy": {
"type": "string",
"description": "Specifies the account user name that most recently updated the flow.",
"example": "arn:aws:iam::123456789012:user/admin"
},
"tags": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"example": {
"environment": "production"
}
},
"metadataCatalogConfig": {
"type": "object",
"properties": {
"glueDataCatalog": {
"type": "object",
"description": "Specifies the configuration that Amazon AppFlow uses when it catalogs data with the Glue Data Catalog.",
"properties": {
"roleArn": {
"type": "string",
"description": "The ARN of an IAM role that grants AppFlow the permissions it needs to create Data Catalog tables, databases, and partitions.",
"example": "arn:aws:iam::123456789012:role/AppFlowGlueRole"
},
"databaseName": {
"type": "string",
"description": "The name of an existing Glue Data Catalog database.",
"example": "appflow-catalog-db"
},
"tablePrefix": {
"type": "string",
"description": "A naming prefix for each Data Catalog table that Amazon AppFlow creates.",
"example": "sf_"
}
}
}
}
},
"lastRunMetadataCatalogDetails": {
"type": "array",
"items": {
"type": "object"
}
}
},
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-appflow/refs/heads/main/json-structure/appflow-describe-flow-response-structure.json"
}