Class CfnFlow
The AWS::AppFlow::Flow
resource is an Amazon AppFlow resource type that specifies a new flow.
Inherited Members
Namespace: Amazon.CDK.AWS.AppFlow
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnFlow : CfnResource, IInspectable, ITaggable
Syntax (vb)
Public Class CfnFlow
Inherits CfnResource
Implements IInspectable, ITaggable
Remarks
If you want to use AWS CloudFormation to create a connector profile for connectors that implement OAuth (such as Salesforce, Slack, Zendesk, and Google Analytics), you must fetch the access and refresh tokens. You can do this by implementing your own UI for OAuth, or by retrieving the tokens from elsewhere. Alternatively, you can use the Amazon AppFlow console to create the connector profile, and then use that connector profile in the flow creation CloudFormation template.
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html
CloudformationResource: AWS::AppFlow::Flow
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.AppFlow;
var cfnFlow = new CfnFlow(this, "MyCfnFlow", new CfnFlowProps {
DestinationFlowConfigList = new [] { new DestinationFlowConfigProperty {
ConnectorType = "connectorType",
DestinationConnectorProperties = new DestinationConnectorPropertiesProperty {
CustomConnector = new CustomConnectorDestinationPropertiesProperty {
EntityName = "entityName",
// the properties below are optional
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
WriteOperationType = "writeOperationType"
},
EventBridge = new EventBridgeDestinationPropertiesProperty {
Object = "object",
// the properties below are optional
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
}
},
LookoutMetrics = new LookoutMetricsDestinationPropertiesProperty {
Object = "object"
},
Marketo = new MarketoDestinationPropertiesProperty {
Object = "object",
// the properties below are optional
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
}
},
Redshift = new RedshiftDestinationPropertiesProperty {
IntermediateBucketName = "intermediateBucketName",
Object = "object",
// the properties below are optional
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
}
},
S3 = new S3DestinationPropertiesProperty {
BucketName = "bucketName",
// the properties below are optional
BucketPrefix = "bucketPrefix",
S3OutputFormatConfig = new S3OutputFormatConfigProperty {
AggregationConfig = new AggregationConfigProperty {
AggregationType = "aggregationType",
TargetFileSize = 123
},
FileType = "fileType",
PrefixConfig = new PrefixConfigProperty {
PathPrefixHierarchy = new [] { "pathPrefixHierarchy" },
PrefixFormat = "prefixFormat",
PrefixType = "prefixType"
},
PreserveSourceDataTyping = false
}
},
Salesforce = new SalesforceDestinationPropertiesProperty {
Object = "object",
// the properties below are optional
DataTransferApi = "dataTransferApi",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
WriteOperationType = "writeOperationType"
},
SapoData = new SAPODataDestinationPropertiesProperty {
ObjectPath = "objectPath",
// the properties below are optional
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
SuccessResponseHandlingConfig = new SuccessResponseHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix"
},
WriteOperationType = "writeOperationType"
},
Snowflake = new SnowflakeDestinationPropertiesProperty {
IntermediateBucketName = "intermediateBucketName",
Object = "object",
// the properties below are optional
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
}
},
Upsolver = new UpsolverDestinationPropertiesProperty {
BucketName = "bucketName",
S3OutputFormatConfig = new UpsolverS3OutputFormatConfigProperty {
PrefixConfig = new PrefixConfigProperty {
PathPrefixHierarchy = new [] { "pathPrefixHierarchy" },
PrefixFormat = "prefixFormat",
PrefixType = "prefixType"
},
// the properties below are optional
AggregationConfig = new AggregationConfigProperty {
AggregationType = "aggregationType",
TargetFileSize = 123
},
FileType = "fileType"
},
// the properties below are optional
BucketPrefix = "bucketPrefix"
},
Zendesk = new ZendeskDestinationPropertiesProperty {
Object = "object",
// the properties below are optional
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
WriteOperationType = "writeOperationType"
}
},
// the properties below are optional
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName"
} },
FlowName = "flowName",
SourceFlowConfig = new SourceFlowConfigProperty {
ConnectorType = "connectorType",
SourceConnectorProperties = new SourceConnectorPropertiesProperty {
Amplitude = new AmplitudeSourcePropertiesProperty {
Object = "object"
},
CustomConnector = new CustomConnectorSourcePropertiesProperty {
EntityName = "entityName",
// the properties below are optional
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
DataTransferApi = new DataTransferApiProperty {
Name = "name",
Type = "type"
}
},
Datadog = new DatadogSourcePropertiesProperty {
Object = "object"
},
Dynatrace = new DynatraceSourcePropertiesProperty {
Object = "object"
},
GoogleAnalytics = new GoogleAnalyticsSourcePropertiesProperty {
Object = "object"
},
InforNexus = new InforNexusSourcePropertiesProperty {
Object = "object"
},
Marketo = new MarketoSourcePropertiesProperty {
Object = "object"
},
Pardot = new PardotSourcePropertiesProperty {
Object = "object"
},
S3 = new S3SourcePropertiesProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
// the properties below are optional
S3InputFormatConfig = new S3InputFormatConfigProperty {
S3InputFileType = "s3InputFileType"
}
},
Salesforce = new SalesforceSourcePropertiesProperty {
Object = "object",
// the properties below are optional
DataTransferApi = "dataTransferApi",
EnableDynamicFieldUpdate = false,
IncludeDeletedRecords = false
},
SapoData = new SAPODataSourcePropertiesProperty {
ObjectPath = "objectPath",
// the properties below are optional
PaginationConfig = new SAPODataPaginationConfigProperty {
MaxPageSize = 123
},
ParallelismConfig = new SAPODataParallelismConfigProperty {
MaxParallelism = 123
}
},
ServiceNow = new ServiceNowSourcePropertiesProperty {
Object = "object"
},
Singular = new SingularSourcePropertiesProperty {
Object = "object"
},
Slack = new SlackSourcePropertiesProperty {
Object = "object"
},
Trendmicro = new TrendmicroSourcePropertiesProperty {
Object = "object"
},
Veeva = new VeevaSourcePropertiesProperty {
Object = "object",
// the properties below are optional
DocumentType = "documentType",
IncludeAllVersions = false,
IncludeRenditions = false,
IncludeSourceFiles = false
},
Zendesk = new ZendeskSourcePropertiesProperty {
Object = "object"
}
},
// the properties below are optional
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
IncrementalPullConfig = new IncrementalPullConfigProperty {
DatetimeTypeFieldName = "datetimeTypeFieldName"
}
},
Tasks = new [] { new TaskProperty {
SourceFields = new [] { "sourceFields" },
TaskType = "taskType",
// the properties below are optional
ConnectorOperator = new ConnectorOperatorProperty {
Amplitude = "amplitude",
CustomConnector = "customConnector",
Datadog = "datadog",
Dynatrace = "dynatrace",
GoogleAnalytics = "googleAnalytics",
InforNexus = "inforNexus",
Marketo = "marketo",
Pardot = "pardot",
S3 = "s3",
Salesforce = "salesforce",
SapoData = "sapoData",
ServiceNow = "serviceNow",
Singular = "singular",
Slack = "slack",
Trendmicro = "trendmicro",
Veeva = "veeva",
Zendesk = "zendesk"
},
DestinationField = "destinationField",
TaskProperties = new [] { new TaskPropertiesObjectProperty {
Key = "key",
Value = "value"
} }
} },
TriggerConfig = new TriggerConfigProperty {
TriggerType = "triggerType",
// the properties below are optional
TriggerProperties = new ScheduledTriggerPropertiesProperty {
ScheduleExpression = "scheduleExpression",
// the properties below are optional
DataPullMode = "dataPullMode",
FirstExecutionFrom = 123,
FlowErrorDeactivationThreshold = 123,
ScheduleEndTime = 123,
ScheduleOffset = 123,
ScheduleStartTime = 123,
TimeZone = "timeZone"
}
},
// the properties below are optional
Description = "description",
FlowStatus = "flowStatus",
KmsArn = "kmsArn",
MetadataCatalogConfig = new MetadataCatalogConfigProperty {
GlueDataCatalog = new GlueDataCatalogProperty {
DatabaseName = "databaseName",
RoleArn = "roleArn",
TablePrefix = "tablePrefix"
}
},
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} }
});
Synopsis
Constructors
CfnFlow(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnFlow(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
CfnFlow(Construct, String, ICfnFlowProps) |
Properties
AttrFlowArn | The flow's Amazon Resource Name (ARN). |
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
Description | A user-entered description of the flow. |
DestinationFlowConfigList | The configuration that controls how Amazon AppFlow places data in the destination connector. |
FlowName | The specified name of the flow. |
FlowStatus | Sets the status of the flow. |
KmsArn | The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption. |
MetadataCatalogConfig | Specifies the configuration that Amazon AppFlow uses when it catalogs your data. |
SourceFlowConfig | Contains information about the configuration of the source connector used in the flow. |
Tags | Tag Manager which manages the tags for this resource. |
TagsRaw | The tags used to organize, track, or control access for your flow. |
Tasks | A list of tasks that Amazon AppFlow performs while transferring the data in the flow run. |
TriggerConfig | The trigger settings that determine how and when Amazon AppFlow runs the specified flow. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnFlow(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnFlow(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnFlow(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnFlow(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
CfnFlow(Construct, String, ICfnFlowProps)
public CfnFlow(Construct scope, string id, ICfnFlowProps props)
Parameters
- scope Constructs.Construct
Scope in which this resource is defined.
- id System.String
Construct identifier for this resource (unique in its scope).
- props ICfnFlowProps
Resource properties.
Properties
AttrFlowArn
The flow's Amazon Resource Name (ARN).
public virtual string AttrFlowArn { get; }
Property Value
System.String
Remarks
CloudformationAttribute: FlowArn
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
Description
A user-entered description of the flow.
public virtual string Description { get; set; }
Property Value
System.String
DestinationFlowConfigList
The configuration that controls how Amazon AppFlow places data in the destination connector.
public virtual object DestinationFlowConfigList { get; set; }
Property Value
System.Object
FlowName
The specified name of the flow.
public virtual string FlowName { get; set; }
Property Value
System.String
FlowStatus
Sets the status of the flow.
public virtual string FlowStatus { get; set; }
Property Value
System.String
Remarks
You can specify one of the following values:.
KmsArn
The ARN (Amazon Resource Name) of the Key Management Service (KMS) key you provide for encryption.
public virtual string KmsArn { get; set; }
Property Value
System.String
MetadataCatalogConfig
Specifies the configuration that Amazon AppFlow uses when it catalogs your data.
public virtual object MetadataCatalogConfig { get; set; }
Property Value
System.Object
SourceFlowConfig
Contains information about the configuration of the source connector used in the flow.
public virtual object SourceFlowConfig { get; set; }
Property Value
System.Object
Tags
Tag Manager which manages the tags for this resource.
public virtual TagManager Tags { get; }
Property Value
TagsRaw
The tags used to organize, track, or control access for your flow.
public virtual ICfnTag[] TagsRaw { get; set; }
Property Value
ICfnTag[]
Tasks
A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.
public virtual object Tasks { get; set; }
Property Value
System.Object
TriggerConfig
The trigger settings that determine how and when Amazon AppFlow runs the specified flow.
public virtual object TriggerConfig { get; set; }
Property Value
System.Object
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>