java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.Mixin
software.amazon.awscdk.cfnpropertymixins.services.appflow.CfnFlowPropsMixin
All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable, software.constructs.IMixin

@Generated(value="jsii-pacmak/1.127.0 (build 2117ad5)", date="2026-03-11T13:19:55.620Z") @Stability(Stable) public class CfnFlowPropsMixin extends Mixin implements software.constructs.IMixin
The AWS::AppFlow::Flow resource is an Amazon AppFlow resource type that specifies a new flow.

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.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.cfnpropertymixins.services.appflow.*;
 import software.amazon.awscdk.*;
 IMergeStrategy mergeStrategy;
 CfnFlowPropsMixin cfnFlowPropsMixin = CfnFlowPropsMixin.Builder.create(CfnFlowMixinProps.builder()
         .description("description")
         .destinationFlowConfigList(List.of(DestinationFlowConfigProperty.builder()
                 .apiVersion("apiVersion")
                 .connectorProfileName("connectorProfileName")
                 .connectorType("connectorType")
                 .destinationConnectorProperties(DestinationConnectorPropertiesProperty.builder()
                         .customConnector(CustomConnectorDestinationPropertiesProperty.builder()
                                 .customProperties(Map.of(
                                         "customPropertiesKey", "customProperties"))
                                 .entityName("entityName")
                                 .errorHandlingConfig(ErrorHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .failOnFirstError(false)
                                         .build())
                                 .idFieldNames(List.of("idFieldNames"))
                                 .writeOperationType("writeOperationType")
                                 .build())
                         .eventBridge(EventBridgeDestinationPropertiesProperty.builder()
                                 .errorHandlingConfig(ErrorHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .failOnFirstError(false)
                                         .build())
                                 .object("object")
                                 .build())
                         .lookoutMetrics(LookoutMetricsDestinationPropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .marketo(MarketoDestinationPropertiesProperty.builder()
                                 .errorHandlingConfig(ErrorHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .failOnFirstError(false)
                                         .build())
                                 .object("object")
                                 .build())
                         .redshift(RedshiftDestinationPropertiesProperty.builder()
                                 .bucketPrefix("bucketPrefix")
                                 .errorHandlingConfig(ErrorHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .failOnFirstError(false)
                                         .build())
                                 .intermediateBucketName("intermediateBucketName")
                                 .object("object")
                                 .build())
                         .s3(S3DestinationPropertiesProperty.builder()
                                 .bucketName("bucketName")
                                 .bucketPrefix("bucketPrefix")
                                 .s3OutputFormatConfig(S3OutputFormatConfigProperty.builder()
                                         .aggregationConfig(AggregationConfigProperty.builder()
                                                 .aggregationType("aggregationType")
                                                 .targetFileSize(123)
                                                 .build())
                                         .fileType("fileType")
                                         .prefixConfig(PrefixConfigProperty.builder()
                                                 .pathPrefixHierarchy(List.of("pathPrefixHierarchy"))
                                                 .prefixFormat("prefixFormat")
                                                 .prefixType("prefixType")
                                                 .build())
                                         .preserveSourceDataTyping(false)
                                         .build())
                                 .build())
                         .salesforce(SalesforceDestinationPropertiesProperty.builder()
                                 .dataTransferApi("dataTransferApi")
                                 .errorHandlingConfig(ErrorHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .failOnFirstError(false)
                                         .build())
                                 .idFieldNames(List.of("idFieldNames"))
                                 .object("object")
                                 .writeOperationType("writeOperationType")
                                 .build())
                         .sapoData(SAPODataDestinationPropertiesProperty.builder()
                                 .errorHandlingConfig(ErrorHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .failOnFirstError(false)
                                         .build())
                                 .idFieldNames(List.of("idFieldNames"))
                                 .objectPath("objectPath")
                                 .successResponseHandlingConfig(SuccessResponseHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .build())
                                 .writeOperationType("writeOperationType")
                                 .build())
                         .snowflake(SnowflakeDestinationPropertiesProperty.builder()
                                 .bucketPrefix("bucketPrefix")
                                 .errorHandlingConfig(ErrorHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .failOnFirstError(false)
                                         .build())
                                 .intermediateBucketName("intermediateBucketName")
                                 .object("object")
                                 .build())
                         .upsolver(UpsolverDestinationPropertiesProperty.builder()
                                 .bucketName("bucketName")
                                 .bucketPrefix("bucketPrefix")
                                 .s3OutputFormatConfig(UpsolverS3OutputFormatConfigProperty.builder()
                                         .aggregationConfig(AggregationConfigProperty.builder()
                                                 .aggregationType("aggregationType")
                                                 .targetFileSize(123)
                                                 .build())
                                         .fileType("fileType")
                                         .prefixConfig(PrefixConfigProperty.builder()
                                                 .pathPrefixHierarchy(List.of("pathPrefixHierarchy"))
                                                 .prefixFormat("prefixFormat")
                                                 .prefixType("prefixType")
                                                 .build())
                                         .build())
                                 .build())
                         .zendesk(ZendeskDestinationPropertiesProperty.builder()
                                 .errorHandlingConfig(ErrorHandlingConfigProperty.builder()
                                         .bucketName("bucketName")
                                         .bucketPrefix("bucketPrefix")
                                         .failOnFirstError(false)
                                         .build())
                                 .idFieldNames(List.of("idFieldNames"))
                                 .object("object")
                                 .writeOperationType("writeOperationType")
                                 .build())
                         .build())
                 .build()))
         .flowName("flowName")
         .flowStatus("flowStatus")
         .kmsArn("kmsArn")
         .metadataCatalogConfig(MetadataCatalogConfigProperty.builder()
                 .glueDataCatalog(GlueDataCatalogProperty.builder()
                         .databaseName("databaseName")
                         .roleArn("roleArn")
                         .tablePrefix("tablePrefix")
                         .build())
                 .build())
         .sourceFlowConfig(SourceFlowConfigProperty.builder()
                 .apiVersion("apiVersion")
                 .connectorProfileName("connectorProfileName")
                 .connectorType("connectorType")
                 .incrementalPullConfig(IncrementalPullConfigProperty.builder()
                         .datetimeTypeFieldName("datetimeTypeFieldName")
                         .build())
                 .sourceConnectorProperties(SourceConnectorPropertiesProperty.builder()
                         .amplitude(AmplitudeSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .customConnector(CustomConnectorSourcePropertiesProperty.builder()
                                 .customProperties(Map.of(
                                         "customPropertiesKey", "customProperties"))
                                 .dataTransferApi(DataTransferApiProperty.builder()
                                         .name("name")
                                         .type("type")
                                         .build())
                                 .entityName("entityName")
                                 .build())
                         .datadog(DatadogSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .dynatrace(DynatraceSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .googleAnalytics(GoogleAnalyticsSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .inforNexus(InforNexusSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .marketo(MarketoSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .pardot(PardotSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .s3(S3SourcePropertiesProperty.builder()
                                 .bucketName("bucketName")
                                 .bucketPrefix("bucketPrefix")
                                 .s3InputFormatConfig(S3InputFormatConfigProperty.builder()
                                         .s3InputFileType("s3InputFileType")
                                         .build())
                                 .build())
                         .salesforce(SalesforceSourcePropertiesProperty.builder()
                                 .dataTransferApi("dataTransferApi")
                                 .enableDynamicFieldUpdate(false)
                                 .includeDeletedRecords(false)
                                 .object("object")
                                 .build())
                         .sapoData(SAPODataSourcePropertiesProperty.builder()
                                 .objectPath("objectPath")
                                 .paginationConfig(SAPODataPaginationConfigProperty.builder()
                                         .maxPageSize(123)
                                         .build())
                                 .parallelismConfig(SAPODataParallelismConfigProperty.builder()
                                         .maxParallelism(123)
                                         .build())
                                 .build())
                         .serviceNow(ServiceNowSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .singular(SingularSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .slack(SlackSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .trendmicro(TrendmicroSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .veeva(VeevaSourcePropertiesProperty.builder()
                                 .documentType("documentType")
                                 .includeAllVersions(false)
                                 .includeRenditions(false)
                                 .includeSourceFiles(false)
                                 .object("object")
                                 .build())
                         .zendesk(ZendeskSourcePropertiesProperty.builder()
                                 .object("object")
                                 .build())
                         .build())
                 .build())
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .tasks(List.of(TaskProperty.builder()
                 .connectorOperator(ConnectorOperatorProperty.builder()
                         .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")
                         .build())
                 .destinationField("destinationField")
                 .sourceFields(List.of("sourceFields"))
                 .taskProperties(List.of(TaskPropertiesObjectProperty.builder()
                         .key("key")
                         .value("value")
                         .build()))
                 .taskType("taskType")
                 .build()))
         .triggerConfig(TriggerConfigProperty.builder()
                 .triggerProperties(ScheduledTriggerPropertiesProperty.builder()
                         .dataPullMode("dataPullMode")
                         .firstExecutionFrom(123)
                         .flowErrorDeactivationThreshold(123)
                         .scheduleEndTime(123)
                         .scheduleExpression("scheduleExpression")
                         .scheduleOffset(123)
                         .scheduleStartTime(123)
                         .timeZone("timeZone")
                         .build())
                 .triggerType("triggerType")
                 .build())
         .build())
 .strategy(mergeStrategy)
 .build();
 

See Also:
  • Field Details

    • CFN_PROPERTY_KEYS

      @Stability(Stable) protected static final List<String> CFN_PROPERTY_KEYS
  • Constructor Details

    • CfnFlowPropsMixin

      protected CfnFlowPropsMixin(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnFlowPropsMixin

      protected CfnFlowPropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnFlowPropsMixin

      @Stability(Stable) public CfnFlowPropsMixin(@NotNull CfnFlowMixinProps props, @Nullable CfnPropertyMixinOptions options)
      Create a mixin to apply properties to AWS::AppFlow::Flow.

      Parameters:
      props - L1 properties to apply. This parameter is required.
      options - Mixin options.
    • CfnFlowPropsMixin

      @Stability(Stable) public CfnFlowPropsMixin(@NotNull CfnFlowMixinProps props)
      Create a mixin to apply properties to AWS::AppFlow::Flow.

      Parameters:
      props - L1 properties to apply. This parameter is required.
  • Method Details

    • applyTo

      @Stability(Stable) public void applyTo(@NotNull software.constructs.IConstruct construct)
      Apply the mixin properties to the construct.

      Specified by:
      applyTo in interface software.constructs.IMixin
      Specified by:
      applyTo in class Mixin
      Parameters:
      construct - This parameter is required.
    • supports

      @Stability(Stable) @NotNull public Boolean supports(@NotNull software.constructs.IConstruct construct)
      Check if this mixin supports the given construct.

      Specified by:
      supports in interface software.constructs.IMixin
      Overrides:
      supports in class Mixin
      Parameters:
      construct - This parameter is required.
    • getProps

      @Stability(Stable) @NotNull protected CfnFlowMixinProps getProps()
    • getStrategy

      @Stability(Stable) @NotNull protected IMergeStrategy getStrategy()