Class CfnFlowPropsMixin
The AWS::AppFlow::Flow resource is an Amazon AppFlow resource type that specifies a new flow.
Implements
Inherited Members
Namespace: Amazon.CDK.Mixins.Preview.AWS.AppFlow.Mixins
Assembly: Amazon.CDK.Mixins.Preview.dll
Syntax (csharp)
public class CfnFlowPropsMixin : Mixin, IMixin
Syntax (vb)
Public Class CfnFlowPropsMixin Inherits Mixin Implements IMixin
Remarks
If you want to use 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
Mixin: true
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.Mixins.Preview.Mixins;
using Amazon.CDK.Mixins.Preview.AWS.AppFlow.Mixins;
var cfnFlowPropsMixin = new CfnFlowPropsMixin(new CfnFlowMixinProps {
Description = "description",
DestinationFlowConfigList = new [] { new DestinationFlowConfigProperty {
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
ConnectorType = "connectorType",
DestinationConnectorProperties = new DestinationConnectorPropertiesProperty {
CustomConnector = new CustomConnectorDestinationPropertiesProperty {
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
EntityName = "entityName",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
WriteOperationType = "writeOperationType"
},
EventBridge = new EventBridgeDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
Object = "object"
},
LookoutMetrics = new LookoutMetricsDestinationPropertiesProperty {
Object = "object"
},
Marketo = new MarketoDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
Object = "object"
},
Redshift = new RedshiftDestinationPropertiesProperty {
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IntermediateBucketName = "intermediateBucketName",
Object = "object"
},
S3 = new S3DestinationPropertiesProperty {
BucketName = "bucketName",
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 {
DataTransferApi = "dataTransferApi",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
Object = "object",
WriteOperationType = "writeOperationType"
},
SapoData = new SAPODataDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
ObjectPath = "objectPath",
SuccessResponseHandlingConfig = new SuccessResponseHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix"
},
WriteOperationType = "writeOperationType"
},
Snowflake = new SnowflakeDestinationPropertiesProperty {
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IntermediateBucketName = "intermediateBucketName",
Object = "object"
},
Upsolver = new UpsolverDestinationPropertiesProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
S3OutputFormatConfig = new UpsolverS3OutputFormatConfigProperty {
AggregationConfig = new AggregationConfigProperty {
AggregationType = "aggregationType",
TargetFileSize = 123
},
FileType = "fileType",
PrefixConfig = new PrefixConfigProperty {
PathPrefixHierarchy = new [] { "pathPrefixHierarchy" },
PrefixFormat = "prefixFormat",
PrefixType = "prefixType"
}
}
},
Zendesk = new ZendeskDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
Object = "object",
WriteOperationType = "writeOperationType"
}
}
} },
FlowName = "flowName",
FlowStatus = "flowStatus",
KmsArn = "kmsArn",
MetadataCatalogConfig = new MetadataCatalogConfigProperty {
GlueDataCatalog = new GlueDataCatalogProperty {
DatabaseName = "databaseName",
RoleArn = "roleArn",
TablePrefix = "tablePrefix"
}
},
SourceFlowConfig = new SourceFlowConfigProperty {
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
ConnectorType = "connectorType",
IncrementalPullConfig = new IncrementalPullConfigProperty {
DatetimeTypeFieldName = "datetimeTypeFieldName"
},
SourceConnectorProperties = new SourceConnectorPropertiesProperty {
Amplitude = new AmplitudeSourcePropertiesProperty {
Object = "object"
},
CustomConnector = new CustomConnectorSourcePropertiesProperty {
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
DataTransferApi = new DataTransferApiProperty {
Name = "name",
Type = "type"
},
EntityName = "entityName"
},
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",
S3InputFormatConfig = new S3InputFormatConfigProperty {
S3InputFileType = "s3InputFileType"
}
},
Salesforce = new SalesforceSourcePropertiesProperty {
DataTransferApi = "dataTransferApi",
EnableDynamicFieldUpdate = false,
IncludeDeletedRecords = false,
Object = "object"
},
SapoData = new SAPODataSourcePropertiesProperty {
ObjectPath = "objectPath",
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 {
DocumentType = "documentType",
IncludeAllVersions = false,
IncludeRenditions = false,
IncludeSourceFiles = false,
Object = "object"
},
Zendesk = new ZendeskSourcePropertiesProperty {
Object = "object"
}
}
},
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} },
Tasks = new [] { new TaskProperty {
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",
SourceFields = new [] { "sourceFields" },
TaskProperties = new [] { new TaskPropertiesObjectProperty {
Key = "key",
Value = "value"
} },
TaskType = "taskType"
} },
TriggerConfig = new TriggerConfigProperty {
TriggerProperties = new ScheduledTriggerPropertiesProperty {
DataPullMode = "dataPullMode",
FirstExecutionFrom = 123,
FlowErrorDeactivationThreshold = 123,
ScheduleEndTime = 123,
ScheduleExpression = "scheduleExpression",
ScheduleOffset = 123,
ScheduleStartTime = 123,
TimeZone = "timeZone"
},
TriggerType = "triggerType"
}
}, new CfnPropertyMixinOptions {
Strategy = PropertyMergeStrategy.OVERRIDE
});
Synopsis
Constructors
| CfnFlowPropsMixin(ICfnFlowMixinProps, ICfnPropertyMixinOptions?) | Create a mixin to apply properties to |
Properties
| CFN_PROPERTY_KEYS | The |
| Props | The |
| Strategy | The |
Methods
| ApplyTo(IConstruct) | Apply the mixin properties to the construct. |
| Supports(IConstruct) | Check if this mixin supports the given construct. |
Constructors
CfnFlowPropsMixin(ICfnFlowMixinProps, ICfnPropertyMixinOptions?)
Create a mixin to apply properties to AWS::AppFlow::Flow.
public CfnFlowPropsMixin(ICfnFlowMixinProps props, ICfnPropertyMixinOptions? options = null)
Parameters
- props ICfnFlowMixinProps
L1 properties to apply.
- options ICfnPropertyMixinOptions
Mixin options.
Remarks
If you want to use 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
Mixin: true
ExampleMetadata: fixture=_generated
Properties
CFN_PROPERTY_KEYS
The AWS::AppFlow::Flow resource is an Amazon AppFlow resource type that specifies a new flow.
protected static string[] CFN_PROPERTY_KEYS { get; }
Property Value
string[]
Remarks
If you want to use 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
Mixin: true
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.Mixins.Preview.Mixins;
using Amazon.CDK.Mixins.Preview.AWS.AppFlow.Mixins;
var cfnFlowPropsMixin = new CfnFlowPropsMixin(new CfnFlowMixinProps {
Description = "description",
DestinationFlowConfigList = new [] { new DestinationFlowConfigProperty {
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
ConnectorType = "connectorType",
DestinationConnectorProperties = new DestinationConnectorPropertiesProperty {
CustomConnector = new CustomConnectorDestinationPropertiesProperty {
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
EntityName = "entityName",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
WriteOperationType = "writeOperationType"
},
EventBridge = new EventBridgeDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
Object = "object"
},
LookoutMetrics = new LookoutMetricsDestinationPropertiesProperty {
Object = "object"
},
Marketo = new MarketoDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
Object = "object"
},
Redshift = new RedshiftDestinationPropertiesProperty {
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IntermediateBucketName = "intermediateBucketName",
Object = "object"
},
S3 = new S3DestinationPropertiesProperty {
BucketName = "bucketName",
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 {
DataTransferApi = "dataTransferApi",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
Object = "object",
WriteOperationType = "writeOperationType"
},
SapoData = new SAPODataDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
ObjectPath = "objectPath",
SuccessResponseHandlingConfig = new SuccessResponseHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix"
},
WriteOperationType = "writeOperationType"
},
Snowflake = new SnowflakeDestinationPropertiesProperty {
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IntermediateBucketName = "intermediateBucketName",
Object = "object"
},
Upsolver = new UpsolverDestinationPropertiesProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
S3OutputFormatConfig = new UpsolverS3OutputFormatConfigProperty {
AggregationConfig = new AggregationConfigProperty {
AggregationType = "aggregationType",
TargetFileSize = 123
},
FileType = "fileType",
PrefixConfig = new PrefixConfigProperty {
PathPrefixHierarchy = new [] { "pathPrefixHierarchy" },
PrefixFormat = "prefixFormat",
PrefixType = "prefixType"
}
}
},
Zendesk = new ZendeskDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
Object = "object",
WriteOperationType = "writeOperationType"
}
}
} },
FlowName = "flowName",
FlowStatus = "flowStatus",
KmsArn = "kmsArn",
MetadataCatalogConfig = new MetadataCatalogConfigProperty {
GlueDataCatalog = new GlueDataCatalogProperty {
DatabaseName = "databaseName",
RoleArn = "roleArn",
TablePrefix = "tablePrefix"
}
},
SourceFlowConfig = new SourceFlowConfigProperty {
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
ConnectorType = "connectorType",
IncrementalPullConfig = new IncrementalPullConfigProperty {
DatetimeTypeFieldName = "datetimeTypeFieldName"
},
SourceConnectorProperties = new SourceConnectorPropertiesProperty {
Amplitude = new AmplitudeSourcePropertiesProperty {
Object = "object"
},
CustomConnector = new CustomConnectorSourcePropertiesProperty {
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
DataTransferApi = new DataTransferApiProperty {
Name = "name",
Type = "type"
},
EntityName = "entityName"
},
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",
S3InputFormatConfig = new S3InputFormatConfigProperty {
S3InputFileType = "s3InputFileType"
}
},
Salesforce = new SalesforceSourcePropertiesProperty {
DataTransferApi = "dataTransferApi",
EnableDynamicFieldUpdate = false,
IncludeDeletedRecords = false,
Object = "object"
},
SapoData = new SAPODataSourcePropertiesProperty {
ObjectPath = "objectPath",
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 {
DocumentType = "documentType",
IncludeAllVersions = false,
IncludeRenditions = false,
IncludeSourceFiles = false,
Object = "object"
},
Zendesk = new ZendeskSourcePropertiesProperty {
Object = "object"
}
}
},
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} },
Tasks = new [] { new TaskProperty {
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",
SourceFields = new [] { "sourceFields" },
TaskProperties = new [] { new TaskPropertiesObjectProperty {
Key = "key",
Value = "value"
} },
TaskType = "taskType"
} },
TriggerConfig = new TriggerConfigProperty {
TriggerProperties = new ScheduledTriggerPropertiesProperty {
DataPullMode = "dataPullMode",
FirstExecutionFrom = 123,
FlowErrorDeactivationThreshold = 123,
ScheduleEndTime = 123,
ScheduleExpression = "scheduleExpression",
ScheduleOffset = 123,
ScheduleStartTime = 123,
TimeZone = "timeZone"
},
TriggerType = "triggerType"
}
}, new CfnPropertyMixinOptions {
Strategy = PropertyMergeStrategy.OVERRIDE
});
Props
The AWS::AppFlow::Flow resource is an Amazon AppFlow resource type that specifies a new flow.
protected virtual ICfnFlowMixinProps Props { get; }
Property Value
Remarks
If you want to use 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
Mixin: true
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.Mixins.Preview.Mixins;
using Amazon.CDK.Mixins.Preview.AWS.AppFlow.Mixins;
var cfnFlowPropsMixin = new CfnFlowPropsMixin(new CfnFlowMixinProps {
Description = "description",
DestinationFlowConfigList = new [] { new DestinationFlowConfigProperty {
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
ConnectorType = "connectorType",
DestinationConnectorProperties = new DestinationConnectorPropertiesProperty {
CustomConnector = new CustomConnectorDestinationPropertiesProperty {
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
EntityName = "entityName",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
WriteOperationType = "writeOperationType"
},
EventBridge = new EventBridgeDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
Object = "object"
},
LookoutMetrics = new LookoutMetricsDestinationPropertiesProperty {
Object = "object"
},
Marketo = new MarketoDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
Object = "object"
},
Redshift = new RedshiftDestinationPropertiesProperty {
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IntermediateBucketName = "intermediateBucketName",
Object = "object"
},
S3 = new S3DestinationPropertiesProperty {
BucketName = "bucketName",
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 {
DataTransferApi = "dataTransferApi",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
Object = "object",
WriteOperationType = "writeOperationType"
},
SapoData = new SAPODataDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
ObjectPath = "objectPath",
SuccessResponseHandlingConfig = new SuccessResponseHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix"
},
WriteOperationType = "writeOperationType"
},
Snowflake = new SnowflakeDestinationPropertiesProperty {
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IntermediateBucketName = "intermediateBucketName",
Object = "object"
},
Upsolver = new UpsolverDestinationPropertiesProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
S3OutputFormatConfig = new UpsolverS3OutputFormatConfigProperty {
AggregationConfig = new AggregationConfigProperty {
AggregationType = "aggregationType",
TargetFileSize = 123
},
FileType = "fileType",
PrefixConfig = new PrefixConfigProperty {
PathPrefixHierarchy = new [] { "pathPrefixHierarchy" },
PrefixFormat = "prefixFormat",
PrefixType = "prefixType"
}
}
},
Zendesk = new ZendeskDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
Object = "object",
WriteOperationType = "writeOperationType"
}
}
} },
FlowName = "flowName",
FlowStatus = "flowStatus",
KmsArn = "kmsArn",
MetadataCatalogConfig = new MetadataCatalogConfigProperty {
GlueDataCatalog = new GlueDataCatalogProperty {
DatabaseName = "databaseName",
RoleArn = "roleArn",
TablePrefix = "tablePrefix"
}
},
SourceFlowConfig = new SourceFlowConfigProperty {
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
ConnectorType = "connectorType",
IncrementalPullConfig = new IncrementalPullConfigProperty {
DatetimeTypeFieldName = "datetimeTypeFieldName"
},
SourceConnectorProperties = new SourceConnectorPropertiesProperty {
Amplitude = new AmplitudeSourcePropertiesProperty {
Object = "object"
},
CustomConnector = new CustomConnectorSourcePropertiesProperty {
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
DataTransferApi = new DataTransferApiProperty {
Name = "name",
Type = "type"
},
EntityName = "entityName"
},
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",
S3InputFormatConfig = new S3InputFormatConfigProperty {
S3InputFileType = "s3InputFileType"
}
},
Salesforce = new SalesforceSourcePropertiesProperty {
DataTransferApi = "dataTransferApi",
EnableDynamicFieldUpdate = false,
IncludeDeletedRecords = false,
Object = "object"
},
SapoData = new SAPODataSourcePropertiesProperty {
ObjectPath = "objectPath",
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 {
DocumentType = "documentType",
IncludeAllVersions = false,
IncludeRenditions = false,
IncludeSourceFiles = false,
Object = "object"
},
Zendesk = new ZendeskSourcePropertiesProperty {
Object = "object"
}
}
},
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} },
Tasks = new [] { new TaskProperty {
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",
SourceFields = new [] { "sourceFields" },
TaskProperties = new [] { new TaskPropertiesObjectProperty {
Key = "key",
Value = "value"
} },
TaskType = "taskType"
} },
TriggerConfig = new TriggerConfigProperty {
TriggerProperties = new ScheduledTriggerPropertiesProperty {
DataPullMode = "dataPullMode",
FirstExecutionFrom = 123,
FlowErrorDeactivationThreshold = 123,
ScheduleEndTime = 123,
ScheduleExpression = "scheduleExpression",
ScheduleOffset = 123,
ScheduleStartTime = 123,
TimeZone = "timeZone"
},
TriggerType = "triggerType"
}
}, new CfnPropertyMixinOptions {
Strategy = PropertyMergeStrategy.OVERRIDE
});
Strategy
The AWS::AppFlow::Flow resource is an Amazon AppFlow resource type that specifies a new flow.
protected virtual PropertyMergeStrategy Strategy { get; }
Property Value
Remarks
If you want to use 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
Mixin: true
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.Mixins.Preview.Mixins;
using Amazon.CDK.Mixins.Preview.AWS.AppFlow.Mixins;
var cfnFlowPropsMixin = new CfnFlowPropsMixin(new CfnFlowMixinProps {
Description = "description",
DestinationFlowConfigList = new [] { new DestinationFlowConfigProperty {
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
ConnectorType = "connectorType",
DestinationConnectorProperties = new DestinationConnectorPropertiesProperty {
CustomConnector = new CustomConnectorDestinationPropertiesProperty {
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
EntityName = "entityName",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
WriteOperationType = "writeOperationType"
},
EventBridge = new EventBridgeDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
Object = "object"
},
LookoutMetrics = new LookoutMetricsDestinationPropertiesProperty {
Object = "object"
},
Marketo = new MarketoDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
Object = "object"
},
Redshift = new RedshiftDestinationPropertiesProperty {
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IntermediateBucketName = "intermediateBucketName",
Object = "object"
},
S3 = new S3DestinationPropertiesProperty {
BucketName = "bucketName",
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 {
DataTransferApi = "dataTransferApi",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
Object = "object",
WriteOperationType = "writeOperationType"
},
SapoData = new SAPODataDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
ObjectPath = "objectPath",
SuccessResponseHandlingConfig = new SuccessResponseHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix"
},
WriteOperationType = "writeOperationType"
},
Snowflake = new SnowflakeDestinationPropertiesProperty {
BucketPrefix = "bucketPrefix",
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IntermediateBucketName = "intermediateBucketName",
Object = "object"
},
Upsolver = new UpsolverDestinationPropertiesProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
S3OutputFormatConfig = new UpsolverS3OutputFormatConfigProperty {
AggregationConfig = new AggregationConfigProperty {
AggregationType = "aggregationType",
TargetFileSize = 123
},
FileType = "fileType",
PrefixConfig = new PrefixConfigProperty {
PathPrefixHierarchy = new [] { "pathPrefixHierarchy" },
PrefixFormat = "prefixFormat",
PrefixType = "prefixType"
}
}
},
Zendesk = new ZendeskDestinationPropertiesProperty {
ErrorHandlingConfig = new ErrorHandlingConfigProperty {
BucketName = "bucketName",
BucketPrefix = "bucketPrefix",
FailOnFirstError = false
},
IdFieldNames = new [] { "idFieldNames" },
Object = "object",
WriteOperationType = "writeOperationType"
}
}
} },
FlowName = "flowName",
FlowStatus = "flowStatus",
KmsArn = "kmsArn",
MetadataCatalogConfig = new MetadataCatalogConfigProperty {
GlueDataCatalog = new GlueDataCatalogProperty {
DatabaseName = "databaseName",
RoleArn = "roleArn",
TablePrefix = "tablePrefix"
}
},
SourceFlowConfig = new SourceFlowConfigProperty {
ApiVersion = "apiVersion",
ConnectorProfileName = "connectorProfileName",
ConnectorType = "connectorType",
IncrementalPullConfig = new IncrementalPullConfigProperty {
DatetimeTypeFieldName = "datetimeTypeFieldName"
},
SourceConnectorProperties = new SourceConnectorPropertiesProperty {
Amplitude = new AmplitudeSourcePropertiesProperty {
Object = "object"
},
CustomConnector = new CustomConnectorSourcePropertiesProperty {
CustomProperties = new Dictionary<string, string> {
{ "customPropertiesKey", "customProperties" }
},
DataTransferApi = new DataTransferApiProperty {
Name = "name",
Type = "type"
},
EntityName = "entityName"
},
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",
S3InputFormatConfig = new S3InputFormatConfigProperty {
S3InputFileType = "s3InputFileType"
}
},
Salesforce = new SalesforceSourcePropertiesProperty {
DataTransferApi = "dataTransferApi",
EnableDynamicFieldUpdate = false,
IncludeDeletedRecords = false,
Object = "object"
},
SapoData = new SAPODataSourcePropertiesProperty {
ObjectPath = "objectPath",
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 {
DocumentType = "documentType",
IncludeAllVersions = false,
IncludeRenditions = false,
IncludeSourceFiles = false,
Object = "object"
},
Zendesk = new ZendeskSourcePropertiesProperty {
Object = "object"
}
}
},
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} },
Tasks = new [] { new TaskProperty {
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",
SourceFields = new [] { "sourceFields" },
TaskProperties = new [] { new TaskPropertiesObjectProperty {
Key = "key",
Value = "value"
} },
TaskType = "taskType"
} },
TriggerConfig = new TriggerConfigProperty {
TriggerProperties = new ScheduledTriggerPropertiesProperty {
DataPullMode = "dataPullMode",
FirstExecutionFrom = 123,
FlowErrorDeactivationThreshold = 123,
ScheduleEndTime = 123,
ScheduleExpression = "scheduleExpression",
ScheduleOffset = 123,
ScheduleStartTime = 123,
TimeZone = "timeZone"
},
TriggerType = "triggerType"
}
}, new CfnPropertyMixinOptions {
Strategy = PropertyMergeStrategy.OVERRIDE
});
Methods
ApplyTo(IConstruct)
Apply the mixin properties to the construct.
public override IConstruct ApplyTo(IConstruct construct)
Parameters
- construct IConstruct
Returns
IConstruct
Overrides
Remarks
If you want to use 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
Mixin: true
ExampleMetadata: fixture=_generated
Supports(IConstruct)
Check if this mixin supports the given construct.
public override bool Supports(IConstruct construct)
Parameters
- construct IConstruct
Returns
Overrides
Remarks
If you want to use 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
Mixin: true
ExampleMetadata: fixture=_generated