Skip to content
v2.277.0

CfnMatchingWorkflowProps Struct ​

Properties for defining a CfnMatchingWorkflow.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_entityresolution as entityresolution } from 'aws-cdk-lib';
const cfnMatchingWorkflowProps: entityresolution.CfnMatchingWorkflowProps = {
  inputSourceConfig: [{
    inputSourceArn: 'inputSourceArn',
    schemaArn: 'schemaArn',

    // the properties below are optional
    applyNormalization: false,
  }],
  outputSourceConfig: [{
    output: [{
      name: 'name',

      // the properties below are optional
      hashed: false,
    }],

    // the properties below are optional
    applyNormalization: false,
    customerProfilesIntegrationConfig: {
      domainArn: 'domainArn',
      objectTypeArn: 'objectTypeArn',
    },
    kmsArn: 'kmsArn',
    outputS3Path: 'outputS3Path',
  }],
  resolutionTechniques: {
    enableRealTimeMatching: false,
    providerProperties: {
      providerServiceArn: 'providerServiceArn',

      // the properties below are optional
      intermediateSourceConfiguration: {
        intermediateS3Path: 'intermediateS3Path',
      },
      providerConfiguration: {
        providerConfigurationKey: 'providerConfiguration',
      },
    },
    resolutionType: 'resolutionType',
    ruleBasedProperties: {
      attributeMatchingModel: 'attributeMatchingModel',
      rules: [{
        matchingKeys: ['matchingKeys'],
        ruleName: 'ruleName',
      }],

      // the properties below are optional
      matchPurpose: 'matchPurpose',
    },
    ruleConditionProperties: {
      rules: [{
        condition: 'condition',
        ruleName: 'ruleName',
      }],

      // the properties below are optional
      matchingConfig: {
        enableTransitiveMatching: false,
      },
    },
  },
  roleArn: 'roleArn',
  workflowName: 'workflowName',

  // the properties below are optional
  description: 'description',
  incrementalRunConfig: {
    incrementalRunType: 'incrementalRunType',
  },
  tags: [{
    key: 'key',
    value: 'value',
  }],
};
python
from aws_cdk import CfnTag
# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_entityresolution as entityresolution

cfn_matching_workflow_props = entityresolution.CfnMatchingWorkflowProps(
    input_source_config=[entityresolution.CfnMatchingWorkflow.InputSourceProperty(
        input_source_arn="inputSourceArn",
        schema_arn="schemaArn",

        # the properties below are optional
        apply_normalization=False
    )],
    output_source_config=[entityresolution.CfnMatchingWorkflow.OutputSourceProperty(
        output=[entityresolution.CfnMatchingWorkflow.OutputAttributeProperty(
            name="name",

            # the properties below are optional
            hashed=False
        )],

        # the properties below are optional
        apply_normalization=False,
        customer_profiles_integration_config=entityresolution.CfnMatchingWorkflow.CustomerProfilesIntegrationConfigProperty(
            domain_arn="domainArn",
            object_type_arn="objectTypeArn"
        ),
        kms_arn="kmsArn",
        output_s3_path="outputS3Path"
    )],
    resolution_techniques=entityresolution.CfnMatchingWorkflow.ResolutionTechniquesProperty(
        enable_real_time_matching=False,
        provider_properties=entityresolution.CfnMatchingWorkflow.ProviderPropertiesProperty(
            provider_service_arn="providerServiceArn",

            # the properties below are optional
            intermediate_source_configuration=entityresolution.CfnMatchingWorkflow.IntermediateSourceConfigurationProperty(
                intermediate_s3_path="intermediateS3Path"
            ),
            provider_configuration={
                "provider_configuration_key": "providerConfiguration"
            }
        ),
        resolution_type="resolutionType",
        rule_based_properties=entityresolution.CfnMatchingWorkflow.RuleBasedPropertiesProperty(
            attribute_matching_model="attributeMatchingModel",
            rules=[entityresolution.CfnMatchingWorkflow.RuleProperty(
                matching_keys=["matchingKeys"],
                rule_name="ruleName"
            )],

            # the properties below are optional
            match_purpose="matchPurpose"
        ),
        rule_condition_properties=entityresolution.CfnMatchingWorkflow.RuleConditionPropertiesProperty(
            rules=[entityresolution.CfnMatchingWorkflow.RuleConditionProperty(
                condition="condition",
                rule_name="ruleName"
            )],

            # the properties below are optional
            matching_config=entityresolution.CfnMatchingWorkflow.MatchingConfigProperty(
                enable_transitive_matching=False
            )
        )
    ),
    role_arn="roleArn",
    workflow_name="workflowName",

    # the properties below are optional
    description="description",
    incremental_run_config=entityresolution.CfnMatchingWorkflow.IncrementalRunConfigProperty(
        incremental_run_type="incrementalRunType"
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )]
)
java
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.entityresolution.*;

CfnMatchingWorkflowProps cfnMatchingWorkflowProps = CfnMatchingWorkflowProps.builder()
        .inputSourceConfig(List.of(InputSourceProperty.builder()
                .inputSourceArn("inputSourceArn")
                .schemaArn("schemaArn")

                // the properties below are optional
                .applyNormalization(false)
                .build()))
        .outputSourceConfig(List.of(OutputSourceProperty.builder()
                .output(List.of(OutputAttributeProperty.builder()
                        .name("name")

                        // the properties below are optional
                        .hashed(false)
                        .build()))

                // the properties below are optional
                .applyNormalization(false)
                .customerProfilesIntegrationConfig(CustomerProfilesIntegrationConfigProperty.builder()
                        .domainArn("domainArn")
                        .objectTypeArn("objectTypeArn")
                        .build())
                .kmsArn("kmsArn")
                .outputS3Path("outputS3Path")
                .build()))
        .resolutionTechniques(ResolutionTechniquesProperty.builder()
                .enableRealTimeMatching(false)
                .providerProperties(ProviderPropertiesProperty.builder()
                        .providerServiceArn("providerServiceArn")

                        // the properties below are optional
                        .intermediateSourceConfiguration(IntermediateSourceConfigurationProperty.builder()
                                .intermediateS3Path("intermediateS3Path")
                                .build())
                        .providerConfiguration(Map.of(
                                "providerConfigurationKey", "providerConfiguration"))
                        .build())
                .resolutionType("resolutionType")
                .ruleBasedProperties(RuleBasedPropertiesProperty.builder()
                        .attributeMatchingModel("attributeMatchingModel")
                        .rules(List.of(RuleProperty.builder()
                                .matchingKeys(List.of("matchingKeys"))
                                .ruleName("ruleName")
                                .build()))

                        // the properties below are optional
                        .matchPurpose("matchPurpose")
                        .build())
                .ruleConditionProperties(RuleConditionPropertiesProperty.builder()
                        .rules(List.of(RuleConditionProperty.builder()
                                .condition("condition")
                                .ruleName("ruleName")
                                .build()))

                        // the properties below are optional
                        .matchingConfig(MatchingConfigProperty.builder()
                                .enableTransitiveMatching(false)
                                .build())
                        .build())
                .build())
        .roleArn("roleArn")
        .workflowName("workflowName")

        // the properties below are optional
        .description("description")
        .incrementalRunConfig(IncrementalRunConfigProperty.builder()
                .incrementalRunType("incrementalRunType")
                .build())
        .tags(List.of(CfnTag.builder()
                .key("key")
                .value("value")
                .build()))
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.EntityResolution;

var cfnMatchingWorkflowProps = new CfnMatchingWorkflowProps {
    InputSourceConfig = new [] { new InputSourceProperty {
        InputSourceArn = "inputSourceArn",
        SchemaArn = "schemaArn",

        // the properties below are optional
        ApplyNormalization = false
    } },
    OutputSourceConfig = new [] { new OutputSourceProperty {
        Output = new [] { new OutputAttributeProperty {
            Name = "name",

            // the properties below are optional
            Hashed = false
        } },

        // the properties below are optional
        ApplyNormalization = false,
        CustomerProfilesIntegrationConfig = new CustomerProfilesIntegrationConfigProperty {
            DomainArn = "domainArn",
            ObjectTypeArn = "objectTypeArn"
        },
        KmsArn = "kmsArn",
        OutputS3Path = "outputS3Path"
    } },
    ResolutionTechniques = new ResolutionTechniquesProperty {
        EnableRealTimeMatching = false,
        ProviderProperties = new ProviderPropertiesProperty {
            ProviderServiceArn = "providerServiceArn",

            // the properties below are optional
            IntermediateSourceConfiguration = new IntermediateSourceConfigurationProperty {
                IntermediateS3Path = "intermediateS3Path"
            },
            ProviderConfiguration = new Dictionary<string, string> {
                { "providerConfigurationKey", "providerConfiguration" }
            }
        },
        ResolutionType = "resolutionType",
        RuleBasedProperties = new RuleBasedPropertiesProperty {
            AttributeMatchingModel = "attributeMatchingModel",
            Rules = new [] { new RuleProperty {
                MatchingKeys = new [] { "matchingKeys" },
                RuleName = "ruleName"
            } },

            // the properties below are optional
            MatchPurpose = "matchPurpose"
        },
        RuleConditionProperties = new RuleConditionPropertiesProperty {
            Rules = new [] { new RuleConditionProperty {
                Condition = "condition",
                RuleName = "ruleName"
            } },

            // the properties below are optional
            MatchingConfig = new MatchingConfigProperty {
                EnableTransitiveMatching = false
            }
        }
    },
    RoleArn = "roleArn",
    WorkflowName = "workflowName",

    // the properties below are optional
    Description = "description",
    IncrementalRunConfig = new IncrementalRunConfigProperty {
        IncrementalRunType = "incrementalRunType"
    },
    Tags = new [] { new CfnTag {
        Key = "key",
        Value = "value"
    } }
};
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnMatchingWorkflowProps := &CfnMatchingWorkflowProps{
	InputSourceConfig: []interface{}{
		&InputSourceProperty{
			InputSourceArn: jsii.String("inputSourceArn"),
			SchemaArn: jsii.String("schemaArn"),

			// the properties below are optional
			ApplyNormalization: jsii.Boolean(false),
		},
	},
	OutputSourceConfig: []interface{}{
		&OutputSourceProperty{
			Output: []interface{}{
				&OutputAttributeProperty{
					Name: jsii.String("name"),

					// the properties below are optional
					Hashed: jsii.Boolean(false),
				},
			},

			// the properties below are optional
			ApplyNormalization: jsii.Boolean(false),
			CustomerProfilesIntegrationConfig: &CustomerProfilesIntegrationConfigProperty{
				DomainArn: jsii.String("domainArn"),
				ObjectTypeArn: jsii.String("objectTypeArn"),
			},
			KmsArn: jsii.String("kmsArn"),
			OutputS3Path: jsii.String("outputS3Path"),
		},
	},
	ResolutionTechniques: &ResolutionTechniquesProperty{
		EnableRealTimeMatching: jsii.Boolean(false),
		ProviderProperties: &ProviderPropertiesProperty{
			ProviderServiceArn: jsii.String("providerServiceArn"),

			// the properties below are optional
			IntermediateSourceConfiguration: &IntermediateSourceConfigurationProperty{
				IntermediateS3Path: jsii.String("intermediateS3Path"),
			},
			ProviderConfiguration: map[string]*string{
				"providerConfigurationKey": jsii.String("providerConfiguration"),
			},
		},
		ResolutionType: jsii.String("resolutionType"),
		RuleBasedProperties: &RuleBasedPropertiesProperty{
			AttributeMatchingModel: jsii.String("attributeMatchingModel"),
			Rules: []interface{}{
				&RuleProperty{
					MatchingKeys: []*string{
						jsii.String("matchingKeys"),
					},
					RuleName: jsii.String("ruleName"),
				},
			},

			// the properties below are optional
			MatchPurpose: jsii.String("matchPurpose"),
		},
		RuleConditionProperties: &RuleConditionPropertiesProperty{
			Rules: []interface{}{
				&RuleConditionProperty{
					Condition: jsii.String("condition"),
					RuleName: jsii.String("ruleName"),
				},
			},

			// the properties below are optional
			MatchingConfig: &MatchingConfigProperty{
				EnableTransitiveMatching: jsii.Boolean(false),
			},
		},
	},
	RoleArn: jsii.String("roleArn"),
	WorkflowName: jsii.String("workflowName"),

	// the properties below are optional
	Description: jsii.String("description"),
	IncrementalRunConfig: &IncrementalRunConfigProperty{
		IncrementalRunType: jsii.String("incrementalRunType"),
	},
	Tags: []CfnTag{
		&CfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
}

Properties ​

descriptionoptionalstringdescriptionoptionalstrdescriptionoptionalStringDescriptionoptionalstringDescriptionoptional*string#
A description of the workflow.
incrementalRunConfigoptionalIResolvable | CfnMatchingWorkflow.IncrementalRunConfigPropertyincremental_run_configoptionaltyping.Union[IResolvable, IncrementalRunConfigProperty]incrementalRunConfigoptionalIResolvableIncrementalRunConfigoptionalIResolvableIncrementalRunConfigoptionalinterface{}#
Optional.
notes

An object that defines the incremental run type. This object contains only the incrementalRunType field, which appears as "Automatic" in the console.

For workflows where resolutionType is ML_MATCHING or PROVIDER , incremental processing is not supported.

inputSourceConfigIResolvable | IResolvable | CfnMatchingWorkflow.InputSourceProperty[]input_source_configtyping.Union[IResolvable, typing.List[typing.Union[IResolvable, InputSourceProperty]]]inputSourceConfigIResolvableInputSourceConfigIResolvableInputSourceConfiginterface{}required#
A list of `InputSource` objects, which have the fields `InputSourceARN` and `SchemaName` .
outputSourceConfigIResolvable | IResolvable | CfnMatchingWorkflow.OutputSourceProperty[]output_source_configtyping.Union[IResolvable, typing.List[typing.Union[IResolvable, OutputSourceProperty]]]outputSourceConfigIResolvableOutputSourceConfigIResolvableOutputSourceConfiginterface{}required#
A list of `OutputSource` objects, each of which contains fields `outputS3Path` , `applyNormalization` , `KMSArn` , and `output` .
resolutionTechniquesIResolvable | CfnMatchingWorkflow.ResolutionTechniquesPropertyresolution_techniquestyping.Union[IResolvable, ResolutionTechniquesProperty]resolutionTechniquesIResolvableResolutionTechniquesIResolvableResolutionTechniquesinterface{}required#
An object which defines the `resolutionType` and the `ruleBasedProperties` .
roleArnstringrole_arnstrroleArnStringRoleArnstringRoleArn*stringrequired#
The Amazon Resource Name (ARN) of the IAM role.

AWS Entity Resolution assumes this role to create resources on your behalf as part of workflow execution.

tagsoptionalCfnTag[]tagsoptionaltyping.List[CfnTag]tagsoptionalList<CfnTag>TagsoptionalCfnTag[]Tagsoptional*[]CfnTag#
The tags used to organize, track, or control access for this resource.
workflowNamestringworkflow_namestrworkflowNameStringWorkflowNamestringWorkflowName*stringrequired#
The name of the workflow.

There can't be multiple MatchingWorkflows with the same name.