

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS Entity Resolution
<a name="AWS_EntityResolution"></a>

**Resource types**
+ [AWS::EntityResolution::IdMappingWorkflow](aws-resource-entityresolution-idmappingworkflow.md)
+ [AWS::EntityResolution::IdNamespace](aws-resource-entityresolution-idnamespace.md)
+ [AWS::EntityResolution::MatchingWorkflow](aws-resource-entityresolution-matchingworkflow.md)
+ [AWS::EntityResolution::PolicyStatement](aws-resource-entityresolution-policystatement.md)
+ [AWS::EntityResolution::SchemaMapping](aws-resource-entityresolution-schemamapping.md)

# AWS::EntityResolution::IdMappingWorkflow
<a name="aws-resource-entityresolution-idmappingworkflow"></a>

Creates an `IdMappingWorkflow` object which stores the configuration of the data processing job to be run. Each `IdMappingWorkflow` must have a unique workflow name. To modify an existing workflow, use the UpdateIdMappingWorkflow API.

**Important**  
Incremental processing is not supported for ID mapping workflows. 

## Syntax
<a name="aws-resource-entityresolution-idmappingworkflow-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-entityresolution-idmappingworkflow-syntax.json"></a>

```
{
  "Type" : "AWS::EntityResolution::IdMappingWorkflow",
  "Properties" : {
      "[Description](#cfn-entityresolution-idmappingworkflow-description)" : String,
      "[IdMappingIncrementalRunConfig](#cfn-entityresolution-idmappingworkflow-idmappingincrementalrunconfig)" : IdMappingIncrementalRunConfig,
      "[IdMappingTechniques](#cfn-entityresolution-idmappingworkflow-idmappingtechniques)" : IdMappingTechniques,
      "[InputSourceConfig](#cfn-entityresolution-idmappingworkflow-inputsourceconfig)" : [ IdMappingWorkflowInputSource, ... ],
      "[OutputSourceConfig](#cfn-entityresolution-idmappingworkflow-outputsourceconfig)" : [ IdMappingWorkflowOutputSource, ... ],
      "[RoleArn](#cfn-entityresolution-idmappingworkflow-rolearn)" : String,
      "[Tags](#cfn-entityresolution-idmappingworkflow-tags)" : [ Tag, ... ],
      "[WorkflowName](#cfn-entityresolution-idmappingworkflow-workflowname)" : String
    }
}
```

### YAML
<a name="aws-resource-entityresolution-idmappingworkflow-syntax.yaml"></a>

```
Type: AWS::EntityResolution::IdMappingWorkflow
Properties:
  [Description](#cfn-entityresolution-idmappingworkflow-description): String
  [IdMappingIncrementalRunConfig](#cfn-entityresolution-idmappingworkflow-idmappingincrementalrunconfig): 
    IdMappingIncrementalRunConfig
  [IdMappingTechniques](#cfn-entityresolution-idmappingworkflow-idmappingtechniques): 
    IdMappingTechniques
  [InputSourceConfig](#cfn-entityresolution-idmappingworkflow-inputsourceconfig): 
    - IdMappingWorkflowInputSource
  [OutputSourceConfig](#cfn-entityresolution-idmappingworkflow-outputsourceconfig): 
    - IdMappingWorkflowOutputSource
  [RoleArn](#cfn-entityresolution-idmappingworkflow-rolearn): String
  [Tags](#cfn-entityresolution-idmappingworkflow-tags): 
    - Tag
  [WorkflowName](#cfn-entityresolution-idmappingworkflow-workflowname): String
```

## Properties
<a name="aws-resource-entityresolution-idmappingworkflow-properties"></a>

`Description`  <a name="cfn-entityresolution-idmappingworkflow-description"></a>
A description of the workflow.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IdMappingIncrementalRunConfig`  <a name="cfn-entityresolution-idmappingworkflow-idmappingincrementalrunconfig"></a>
Property description not available.  
*Required*: No  
*Type*: [IdMappingIncrementalRunConfig](aws-properties-entityresolution-idmappingworkflow-idmappingincrementalrunconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IdMappingTechniques`  <a name="cfn-entityresolution-idmappingworkflow-idmappingtechniques"></a>
An object which defines the ID mapping technique and any additional configurations.  
*Required*: Yes  
*Type*: [IdMappingTechniques](aws-properties-entityresolution-idmappingworkflow-idmappingtechniques.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputSourceConfig`  <a name="cfn-entityresolution-idmappingworkflow-inputsourceconfig"></a>
A list of `InputSource` objects, which have the fields `InputSourceARN` and `SchemaName`.  
*Required*: Yes  
*Type*: Array of [IdMappingWorkflowInputSource](aws-properties-entityresolution-idmappingworkflow-idmappingworkflowinputsource.md)  
*Minimum*: `1`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputSourceConfig`  <a name="cfn-entityresolution-idmappingworkflow-outputsourceconfig"></a>
A list of `IdMappingWorkflowOutputSource` objects, each of which contains fields `outputS3Path` and `KMSArn`.  
*Required*: No  
*Type*: Array of [IdMappingWorkflowOutputSource](aws-properties-entityresolution-idmappingworkflow-idmappingworkflowoutputsource.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleArn`  <a name="cfn-entityresolution-idmappingworkflow-rolearn"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-entityresolution-idmappingworkflow-tags"></a>
The tags used to organize, track, or control access for this resource.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-entityresolution-idmappingworkflow-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`WorkflowName`  <a name="cfn-entityresolution-idmappingworkflow-workflowname"></a>
The name of the workflow. There can't be multiple `IdMappingWorkflows` with the same name.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9-]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::EntityResolution::IdMappingWorkflow IdMappingIncrementalRunConfig
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingincrementalrunconfig"></a>

<a name="aws-properties-entityresolution-idmappingworkflow-idmappingincrementalrunconfig-description"></a>The `IdMappingIncrementalRunConfig` property type specifies Property description not available. for an [AWS::EntityResolution::IdMappingWorkflow](aws-resource-entityresolution-idmappingworkflow.md).

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingincrementalrunconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingincrementalrunconfig-syntax.json"></a>

```
{
  "[IncrementalRunType](#cfn-entityresolution-idmappingworkflow-idmappingincrementalrunconfig-incrementalruntype)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingincrementalrunconfig-syntax.yaml"></a>

```
  [IncrementalRunType](#cfn-entityresolution-idmappingworkflow-idmappingincrementalrunconfig-incrementalruntype): String
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingincrementalrunconfig-properties"></a>

`IncrementalRunType`  <a name="cfn-entityresolution-idmappingworkflow-idmappingincrementalrunconfig-incrementalruntype"></a>
Property description not available.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ON_DEMAND`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdMappingWorkflow IdMappingRuleBasedProperties
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingrulebasedproperties"></a>

 An object that defines the list of matching rules to run in an ID mapping workflow.

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingrulebasedproperties-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingrulebasedproperties-syntax.json"></a>

```
{
  "[AttributeMatchingModel](#cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-attributematchingmodel)" : String,
  "[RecordMatchingModel](#cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-recordmatchingmodel)" : String,
  "[RuleDefinitionType](#cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-ruledefinitiontype)" : String,
  "[Rules](#cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-rules)" : [ Rule, ... ]
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingrulebasedproperties-syntax.yaml"></a>

```
  [AttributeMatchingModel](#cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-attributematchingmodel): String
  [RecordMatchingModel](#cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-recordmatchingmodel): String
  [RuleDefinitionType](#cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-ruledefinitiontype): String
  [Rules](#cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-rules): 
    - Rule
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingrulebasedproperties-properties"></a>

`AttributeMatchingModel`  <a name="cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-attributematchingmodel"></a>
The comparison type. You can either choose `ONE_TO_ONE` or `MANY_TO_MANY` as the `attributeMatchingModel`.   
If you choose `ONE_TO_ONE`, the system can only match attributes if the sub-types are an exact match. For example, for the `Email` attribute type, the system will only consider it a match if the value of the `Email` field of Profile A matches the value of the `Email` field of Profile B.  
If you choose `MANY_TO_MANY`, the system can match attributes across the sub-types of an attribute type. For example, if the value of the `Email` field of Profile A matches the value of the `BusinessEmail` field of Profile B, the two profiles are matched on the `Email` attribute type.   
*Required*: Yes  
*Type*: String  
*Allowed values*: `ONE_TO_ONE | MANY_TO_MANY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RecordMatchingModel`  <a name="cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-recordmatchingmodel"></a>
 The type of matching record that is allowed to be used in an ID mapping workflow.   
If the value is set to `ONE_SOURCE_TO_ONE_TARGET`, only one record in the source can be matched to the same record in the target.  
If the value is set to `MANY_SOURCE_TO_ONE_TARGET`, multiple records in the source can be matched to one record in the target.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ONE_SOURCE_TO_ONE_TARGET | MANY_SOURCE_TO_ONE_TARGET`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleDefinitionType`  <a name="cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-ruledefinitiontype"></a>
 The set of rules you can use in an ID mapping workflow. The limitations specified for the source or target to define the match rules must be compatible.  
*Required*: No  
*Type*: String  
*Allowed values*: `SOURCE | TARGET`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Rules`  <a name="cfn-entityresolution-idmappingworkflow-idmappingrulebasedproperties-rules"></a>
 The rules that can be used for ID mapping.  
*Required*: No  
*Type*: Array of [Rule](aws-properties-entityresolution-idmappingworkflow-rule.md)  
*Minimum*: `1`  
*Maximum*: `25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdMappingWorkflow IdMappingTechniques
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingtechniques"></a>

An object which defines the ID mapping technique and any additional configurations.

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingtechniques-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingtechniques-syntax.json"></a>

```
{
  "[IdMappingType](#cfn-entityresolution-idmappingworkflow-idmappingtechniques-idmappingtype)" : String,
  "[NormalizationVersion](#cfn-entityresolution-idmappingworkflow-idmappingtechniques-normalizationversion)" : String,
  "[ProviderProperties](#cfn-entityresolution-idmappingworkflow-idmappingtechniques-providerproperties)" : ProviderProperties,
  "[RuleBasedProperties](#cfn-entityresolution-idmappingworkflow-idmappingtechniques-rulebasedproperties)" : IdMappingRuleBasedProperties
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingtechniques-syntax.yaml"></a>

```
  [IdMappingType](#cfn-entityresolution-idmappingworkflow-idmappingtechniques-idmappingtype): String
  [NormalizationVersion](#cfn-entityresolution-idmappingworkflow-idmappingtechniques-normalizationversion): String
  [ProviderProperties](#cfn-entityresolution-idmappingworkflow-idmappingtechniques-providerproperties): 
    ProviderProperties
  [RuleBasedProperties](#cfn-entityresolution-idmappingworkflow-idmappingtechniques-rulebasedproperties): 
    IdMappingRuleBasedProperties
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingtechniques-properties"></a>

`IdMappingType`  <a name="cfn-entityresolution-idmappingworkflow-idmappingtechniques-idmappingtype"></a>
The type of ID mapping.  
*Required*: No  
*Type*: String  
*Allowed values*: `PROVIDER | RULE_BASED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`NormalizationVersion`  <a name="cfn-entityresolution-idmappingworkflow-idmappingtechniques-normalizationversion"></a>
Property description not available.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProviderProperties`  <a name="cfn-entityresolution-idmappingworkflow-idmappingtechniques-providerproperties"></a>
An object which defines any additional configurations required by the provider service.  
*Required*: No  
*Type*: [ProviderProperties](aws-properties-entityresolution-idmappingworkflow-providerproperties.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleBasedProperties`  <a name="cfn-entityresolution-idmappingworkflow-idmappingtechniques-rulebasedproperties"></a>
 An object which defines any additional configurations required by rule-based matching.  
*Required*: No  
*Type*: [IdMappingRuleBasedProperties](aws-properties-entityresolution-idmappingworkflow-idmappingrulebasedproperties.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdMappingWorkflow IdMappingWorkflowInputSource
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowinputsource"></a>

An object containing `inputSourceARN`, `schemaName`, and `type`.

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowinputsource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowinputsource-syntax.json"></a>

```
{
  "[InputSourceARN](#cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-inputsourcearn)" : String,
  "[SchemaArn](#cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-schemaarn)" : String,
  "[Type](#cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-type)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowinputsource-syntax.yaml"></a>

```
  [InputSourceARN](#cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-inputsourcearn): String
  [SchemaArn](#cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-schemaarn): String
  [Type](#cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-type): String
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowinputsource-properties"></a>

`InputSourceARN`  <a name="cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-inputsourcearn"></a>
An AWS Glue table Amazon Resource Name (ARN) or a matching workflow ARN for the input source table.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):entityresolution:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(idnamespace/[a-zA-Z_0-9-]{1,255})$|^arn:(aws|aws-us-gov|aws-cn):entityresolution:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(matchingworkflow/[a-zA-Z_0-9-]{1,255})$|^arn:(aws|aws-us-gov|aws-cn):glue:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(table/[a-zA-Z_0-9-]{1,255}/[a-zA-Z_0-9-]{1,255})$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SchemaArn`  <a name="cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-schemaarn"></a>
The ARN (Amazon Resource Name) that AWS Entity Resolution generated for the `SchemaMapping`.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(schemamapping/.*)$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-entityresolution-idmappingworkflow-idmappingworkflowinputsource-type"></a>
The type of ID namespace. There are two types: `SOURCE` and `TARGET`.   
The `SOURCE` contains configurations for `sourceId` data that will be processed in an ID mapping workflow.   
The `TARGET` contains a configuration of `targetId` which all `sourceIds` will resolve to.  
*Required*: No  
*Type*: String  
*Allowed values*: `SOURCE | TARGET`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdMappingWorkflow IdMappingWorkflowOutputSource
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowoutputsource"></a>

A list of `IdMappingWorkflowOutputSource` objects, each of which contains fields `outputS3Path` and `KMSArn`.

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-syntax.json"></a>

```
{
  "[KMSArn](#cfn-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-kmsarn)" : String,
  "[OutputS3Path](#cfn-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-outputs3path)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-syntax.yaml"></a>

```
  [KMSArn](#cfn-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-kmsarn): String
  [OutputS3Path](#cfn-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-outputs3path): String
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-properties"></a>

`KMSArn`  <a name="cfn-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-kmsarn"></a>
Customer AWS KMS ARN for encryption at rest. If not provided, system will use an AWS Entity Resolution managed KMS key.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):kms:.*:[0-9]+:.*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputS3Path`  <a name="cfn-entityresolution-idmappingworkflow-idmappingworkflowoutputsource-outputs3path"></a>
The S3 path to which AWS Entity Resolution will write the output table.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^s3://([^/]+)/?(.*?([^/]+)/?)$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdMappingWorkflow IntermediateSourceConfiguration
<a name="aws-properties-entityresolution-idmappingworkflow-intermediatesourceconfiguration"></a>

The Amazon S3 location that temporarily stores your data while it processes. Your information won't be saved permanently.

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-intermediatesourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-intermediatesourceconfiguration-syntax.json"></a>

```
{
  "[IntermediateS3Path](#cfn-entityresolution-idmappingworkflow-intermediatesourceconfiguration-intermediates3path)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-intermediatesourceconfiguration-syntax.yaml"></a>

```
  [IntermediateS3Path](#cfn-entityresolution-idmappingworkflow-intermediatesourceconfiguration-intermediates3path): String
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-intermediatesourceconfiguration-properties"></a>

`IntermediateS3Path`  <a name="cfn-entityresolution-idmappingworkflow-intermediatesourceconfiguration-intermediates3path"></a>
The Amazon S3 location (bucket and prefix). For example: `s3://provider_bucket/DOC-EXAMPLE-BUCKET`  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdMappingWorkflow ProviderProperties
<a name="aws-properties-entityresolution-idmappingworkflow-providerproperties"></a>

An object containing the `providerServiceARN`, `intermediateSourceConfiguration`, and `providerConfiguration`.

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-providerproperties-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-providerproperties-syntax.json"></a>

```
{
  "[IntermediateSourceConfiguration](#cfn-entityresolution-idmappingworkflow-providerproperties-intermediatesourceconfiguration)" : IntermediateSourceConfiguration,
  "[ProviderConfiguration](#cfn-entityresolution-idmappingworkflow-providerproperties-providerconfiguration)" : {Key: Value, ...},
  "[ProviderServiceArn](#cfn-entityresolution-idmappingworkflow-providerproperties-providerservicearn)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-providerproperties-syntax.yaml"></a>

```
  [IntermediateSourceConfiguration](#cfn-entityresolution-idmappingworkflow-providerproperties-intermediatesourceconfiguration): 
    IntermediateSourceConfiguration
  [ProviderConfiguration](#cfn-entityresolution-idmappingworkflow-providerproperties-providerconfiguration): 
    Key: Value
  [ProviderServiceArn](#cfn-entityresolution-idmappingworkflow-providerproperties-providerservicearn): String
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-providerproperties-properties"></a>

`IntermediateSourceConfiguration`  <a name="cfn-entityresolution-idmappingworkflow-providerproperties-intermediatesourceconfiguration"></a>
The Amazon S3 location that temporarily stores your data while it processes. Your information won't be saved permanently.  
*Required*: No  
*Type*: [IntermediateSourceConfiguration](aws-properties-entityresolution-idmappingworkflow-intermediatesourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProviderConfiguration`  <a name="cfn-entityresolution-idmappingworkflow-providerproperties-providerconfiguration"></a>
The required configuration fields to use with the provider service.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.+$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProviderServiceArn`  <a name="cfn-entityresolution-idmappingworkflow-providerproperties-providerservicearn"></a>
The ARN of the provider service.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):(entityresolution):([a-z]{2}-[a-z]{1,10}-[0-9])::providerservice/([a-zA-Z0-9_-]{1,255})/([a-zA-Z0-9_-]{1,255})$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdMappingWorkflow Rule
<a name="aws-properties-entityresolution-idmappingworkflow-rule"></a>

An object containing the `ruleName` and `matchingKeys`.

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-rule-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-rule-syntax.json"></a>

```
{
  "[MatchingKeys](#cfn-entityresolution-idmappingworkflow-rule-matchingkeys)" : [ String, ... ],
  "[RuleName](#cfn-entityresolution-idmappingworkflow-rule-rulename)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-rule-syntax.yaml"></a>

```
  [MatchingKeys](#cfn-entityresolution-idmappingworkflow-rule-matchingkeys): 
    - String
  [RuleName](#cfn-entityresolution-idmappingworkflow-rule-rulename): String
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-rule-properties"></a>

`MatchingKeys`  <a name="cfn-entityresolution-idmappingworkflow-rule-matchingkeys"></a>
A list of `MatchingKeys`. The `MatchingKeys` must have been defined in the `SchemaMapping`. Two records are considered to match according to this rule if all of the `MatchingKeys` match.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `15`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleName`  <a name="cfn-entityresolution-idmappingworkflow-rule-rulename"></a>
A name for the matching rule.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9- \t]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdMappingWorkflow Tag
<a name="aws-properties-entityresolution-idmappingworkflow-tag"></a>

The tags used to organize, track, or control access for this resource.

## Syntax
<a name="aws-properties-entityresolution-idmappingworkflow-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idmappingworkflow-tag-syntax.json"></a>

```
{
  "[Key](#cfn-entityresolution-idmappingworkflow-tag-key)" : String,
  "[Value](#cfn-entityresolution-idmappingworkflow-tag-value)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idmappingworkflow-tag-syntax.yaml"></a>

```
  [Key](#cfn-entityresolution-idmappingworkflow-tag-key): String
  [Value](#cfn-entityresolution-idmappingworkflow-tag-value): String
```

## Properties
<a name="aws-properties-entityresolution-idmappingworkflow-tag-properties"></a>

`Key`  <a name="cfn-entityresolution-idmappingworkflow-tag-key"></a>
The key of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-entityresolution-idmappingworkflow-tag-value"></a>
The value of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdNamespace
<a name="aws-resource-entityresolution-idnamespace"></a>

Creates an ID namespace object which will help customers provide metadata explaining their dataset and how to use it. Each ID namespace must have a unique name. To modify an existing ID namespace, use the UpdateIdNamespace API.

## Syntax
<a name="aws-resource-entityresolution-idnamespace-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-entityresolution-idnamespace-syntax.json"></a>

```
{
  "Type" : "AWS::EntityResolution::IdNamespace",
  "Properties" : {
      "[Description](#cfn-entityresolution-idnamespace-description)" : String,
      "[IdMappingWorkflowProperties](#cfn-entityresolution-idnamespace-idmappingworkflowproperties)" : [ IdNamespaceIdMappingWorkflowProperties, ... ],
      "[IdNamespaceName](#cfn-entityresolution-idnamespace-idnamespacename)" : String,
      "[InputSourceConfig](#cfn-entityresolution-idnamespace-inputsourceconfig)" : [ IdNamespaceInputSource, ... ],
      "[RoleArn](#cfn-entityresolution-idnamespace-rolearn)" : String,
      "[Tags](#cfn-entityresolution-idnamespace-tags)" : [ Tag, ... ],
      "[Type](#cfn-entityresolution-idnamespace-type)" : String
    }
}
```

### YAML
<a name="aws-resource-entityresolution-idnamespace-syntax.yaml"></a>

```
Type: AWS::EntityResolution::IdNamespace
Properties:
  [Description](#cfn-entityresolution-idnamespace-description): String
  [IdMappingWorkflowProperties](#cfn-entityresolution-idnamespace-idmappingworkflowproperties): 
    - IdNamespaceIdMappingWorkflowProperties
  [IdNamespaceName](#cfn-entityresolution-idnamespace-idnamespacename): String
  [InputSourceConfig](#cfn-entityresolution-idnamespace-inputsourceconfig): 
    - IdNamespaceInputSource
  [RoleArn](#cfn-entityresolution-idnamespace-rolearn): String
  [Tags](#cfn-entityresolution-idnamespace-tags): 
    - Tag
  [Type](#cfn-entityresolution-idnamespace-type): String
```

## Properties
<a name="aws-resource-entityresolution-idnamespace-properties"></a>

`Description`  <a name="cfn-entityresolution-idnamespace-description"></a>
The description of the ID namespace.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IdMappingWorkflowProperties`  <a name="cfn-entityresolution-idnamespace-idmappingworkflowproperties"></a>
Determines the properties of `IdMappingWorflow` where this `IdNamespace` can be used as a `Source` or a `Target`.  
*Required*: No  
*Type*: Array of [IdNamespaceIdMappingWorkflowProperties](aws-properties-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IdNamespaceName`  <a name="cfn-entityresolution-idnamespace-idnamespacename"></a>
The name of the ID namespace.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9-]*$`  
*Minimum*: `1`  
*Maximum*: `255`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`InputSourceConfig`  <a name="cfn-entityresolution-idnamespace-inputsourceconfig"></a>
A list of `InputSource` objects, which have the fields `InputSourceARN` and `SchemaName`.  
*Required*: No  
*Type*: Array of [IdNamespaceInputSource](aws-properties-entityresolution-idnamespace-idnamespaceinputsource.md)  
*Minimum*: `0`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleArn`  <a name="cfn-entityresolution-idnamespace-rolearn"></a>
The Amazon Resource Name (ARN) of the IAM role. AWS Entity Resolution assumes this role to access the resources defined in this `IdNamespace` on your behalf as part of the workflow run.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+$`  
*Minimum*: `32`  
*Maximum*: `512`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-entityresolution-idnamespace-tags"></a>
The tags used to organize, track, or control access for this resource.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-entityresolution-idnamespace-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-entityresolution-idnamespace-type"></a>
The type of ID namespace. There are two types: `SOURCE` and `TARGET`.  
The `SOURCE` contains configurations for `sourceId` data that will be processed in an ID mapping workflow.   
The `TARGET` contains a configuration of `targetId` which all `sourceIds` will resolve to.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SOURCE | TARGET`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdNamespace IdNamespaceIdMappingWorkflowProperties
<a name="aws-properties-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties"></a>

An object containing `idMappingType`, `providerProperties`, and `ruleBasedProperties`.

## Syntax
<a name="aws-properties-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-syntax.json"></a>

```
{
  "[IdMappingType](#cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-idmappingtype)" : String,
  "[ProviderProperties](#cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-providerproperties)" : NamespaceProviderProperties,
  "[RuleBasedProperties](#cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-rulebasedproperties)" : NamespaceRuleBasedProperties
}
```

### YAML
<a name="aws-properties-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-syntax.yaml"></a>

```
  [IdMappingType](#cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-idmappingtype): String
  [ProviderProperties](#cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-providerproperties): 
    NamespaceProviderProperties
  [RuleBasedProperties](#cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-rulebasedproperties): 
    NamespaceRuleBasedProperties
```

## Properties
<a name="aws-properties-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-properties"></a>

`IdMappingType`  <a name="cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-idmappingtype"></a>
The type of ID mapping.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `PROVIDER | RULE_BASED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProviderProperties`  <a name="cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-providerproperties"></a>
An object which defines any additional configurations required by the provider service.  
*Required*: No  
*Type*: [NamespaceProviderProperties](aws-properties-entityresolution-idnamespace-namespaceproviderproperties.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleBasedProperties`  <a name="cfn-entityresolution-idnamespace-idnamespaceidmappingworkflowproperties-rulebasedproperties"></a>
 An object which defines any additional configurations required by rule-based matching.  
*Required*: No  
*Type*: [NamespaceRuleBasedProperties](aws-properties-entityresolution-idnamespace-namespacerulebasedproperties.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdNamespace IdNamespaceInputSource
<a name="aws-properties-entityresolution-idnamespace-idnamespaceinputsource"></a>

An object containing `inputSourceARN` and `schemaName`.

## Syntax
<a name="aws-properties-entityresolution-idnamespace-idnamespaceinputsource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idnamespace-idnamespaceinputsource-syntax.json"></a>

```
{
  "[InputSourceARN](#cfn-entityresolution-idnamespace-idnamespaceinputsource-inputsourcearn)" : String,
  "[SchemaName](#cfn-entityresolution-idnamespace-idnamespaceinputsource-schemaname)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idnamespace-idnamespaceinputsource-syntax.yaml"></a>

```
  [InputSourceARN](#cfn-entityresolution-idnamespace-idnamespaceinputsource-inputsourcearn): String
  [SchemaName](#cfn-entityresolution-idnamespace-idnamespaceinputsource-schemaname): String
```

## Properties
<a name="aws-properties-entityresolution-idnamespace-idnamespaceinputsource-properties"></a>

`InputSourceARN`  <a name="cfn-entityresolution-idnamespace-idnamespaceinputsource-inputsourcearn"></a>
An AWS Glue table Amazon Resource Name (ARN) or a matching workflow ARN for the input source table.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):entityresolution:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(matchingworkflow/[a-zA-Z_0-9-]{1,255})$|^arn:(aws|aws-us-gov|aws-cn):glue:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(table/[a-zA-Z_0-9-]{1,255}/[a-zA-Z_0-9-]{1,255})$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SchemaName`  <a name="cfn-entityresolution-idnamespace-idnamespaceinputsource-schemaname"></a>
The name of the schema.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9-]*$`  
*Minimum*: `1`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdNamespace NamespaceProviderProperties
<a name="aws-properties-entityresolution-idnamespace-namespaceproviderproperties"></a>

An object containing `providerConfiguration` and `providerServiceArn`.

## Syntax
<a name="aws-properties-entityresolution-idnamespace-namespaceproviderproperties-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idnamespace-namespaceproviderproperties-syntax.json"></a>

```
{
  "[ProviderConfiguration](#cfn-entityresolution-idnamespace-namespaceproviderproperties-providerconfiguration)" : {Key: Value, ...},
  "[ProviderServiceArn](#cfn-entityresolution-idnamespace-namespaceproviderproperties-providerservicearn)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idnamespace-namespaceproviderproperties-syntax.yaml"></a>

```
  [ProviderConfiguration](#cfn-entityresolution-idnamespace-namespaceproviderproperties-providerconfiguration): 
    Key: Value
  [ProviderServiceArn](#cfn-entityresolution-idnamespace-namespaceproviderproperties-providerservicearn): String
```

## Properties
<a name="aws-properties-entityresolution-idnamespace-namespaceproviderproperties-properties"></a>

`ProviderConfiguration`  <a name="cfn-entityresolution-idnamespace-namespaceproviderproperties-providerconfiguration"></a>
An object which defines any additional configurations required by the provider service.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.+$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProviderServiceArn`  <a name="cfn-entityresolution-idnamespace-namespaceproviderproperties-providerservicearn"></a>
The Amazon Resource Name (ARN) of the provider service.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):(entityresolution):([a-z]{2}-[a-z]{1,10}-[0-9])::providerservice/([a-zA-Z0-9_-]{1,255})/([a-zA-Z0-9_-]{1,255})$`  
*Minimum*: `20`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdNamespace NamespaceRuleBasedProperties
<a name="aws-properties-entityresolution-idnamespace-namespacerulebasedproperties"></a>

 The rule-based properties of an ID namespace. These properties define how the ID namespace can be used in an ID mapping workflow.

## Syntax
<a name="aws-properties-entityresolution-idnamespace-namespacerulebasedproperties-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idnamespace-namespacerulebasedproperties-syntax.json"></a>

```
{
  "[AttributeMatchingModel](#cfn-entityresolution-idnamespace-namespacerulebasedproperties-attributematchingmodel)" : String,
  "[RecordMatchingModels](#cfn-entityresolution-idnamespace-namespacerulebasedproperties-recordmatchingmodels)" : [ String, ... ],
  "[RuleDefinitionTypes](#cfn-entityresolution-idnamespace-namespacerulebasedproperties-ruledefinitiontypes)" : [ String, ... ],
  "[Rules](#cfn-entityresolution-idnamespace-namespacerulebasedproperties-rules)" : [ Rule, ... ]
}
```

### YAML
<a name="aws-properties-entityresolution-idnamespace-namespacerulebasedproperties-syntax.yaml"></a>

```
  [AttributeMatchingModel](#cfn-entityresolution-idnamespace-namespacerulebasedproperties-attributematchingmodel): String
  [RecordMatchingModels](#cfn-entityresolution-idnamespace-namespacerulebasedproperties-recordmatchingmodels): 
    - String
  [RuleDefinitionTypes](#cfn-entityresolution-idnamespace-namespacerulebasedproperties-ruledefinitiontypes): 
    - String
  [Rules](#cfn-entityresolution-idnamespace-namespacerulebasedproperties-rules): 
    - Rule
```

## Properties
<a name="aws-properties-entityresolution-idnamespace-namespacerulebasedproperties-properties"></a>

`AttributeMatchingModel`  <a name="cfn-entityresolution-idnamespace-namespacerulebasedproperties-attributematchingmodel"></a>
The comparison type. You can either choose `ONE_TO_ONE` or `MANY_TO_MANY` as the `attributeMatchingModel`.   
If you choose `ONE_TO_ONE`, the system can only match attributes if the sub-types are an exact match. For example, for the `Email` attribute type, the system will only consider it a match if the value of the `Email` field of Profile A matches the value of the `Email` field of Profile B.  
If you choose `MANY_TO_MANY`, the system can match attributes across the sub-types of an attribute type. For example, if the value of the `Email` field of Profile A matches the value of `BusinessEmail` field of Profile B, the two profiles are matched on the `Email` attribute type.   
*Required*: No  
*Type*: String  
*Allowed values*: `ONE_TO_ONE | MANY_TO_MANY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RecordMatchingModels`  <a name="cfn-entityresolution-idnamespace-namespacerulebasedproperties-recordmatchingmodels"></a>
 The type of matching record that is allowed to be used in an ID mapping workflow.   
If the value is set to `ONE_SOURCE_TO_ONE_TARGET`, only one record in the source is matched to one record in the target.   
If the value is set to `MANY_SOURCE_TO_ONE_TARGET`, all matching records in the source are matched to one record in the target.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleDefinitionTypes`  <a name="cfn-entityresolution-idnamespace-namespacerulebasedproperties-ruledefinitiontypes"></a>
 The sets of rules you can use in an ID mapping workflow. The limitations specified for the source and target must be compatible.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Rules`  <a name="cfn-entityresolution-idnamespace-namespacerulebasedproperties-rules"></a>
 The rules for the ID namespace.  
*Required*: No  
*Type*: Array of [Rule](aws-properties-entityresolution-idnamespace-rule.md)  
*Minimum*: `1`  
*Maximum*: `25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdNamespace Rule
<a name="aws-properties-entityresolution-idnamespace-rule"></a>

An object containing the `ruleName` and `matchingKeys`.

## Syntax
<a name="aws-properties-entityresolution-idnamespace-rule-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idnamespace-rule-syntax.json"></a>

```
{
  "[MatchingKeys](#cfn-entityresolution-idnamespace-rule-matchingkeys)" : [ String, ... ],
  "[RuleName](#cfn-entityresolution-idnamespace-rule-rulename)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idnamespace-rule-syntax.yaml"></a>

```
  [MatchingKeys](#cfn-entityresolution-idnamespace-rule-matchingkeys): 
    - String
  [RuleName](#cfn-entityresolution-idnamespace-rule-rulename): String
```

## Properties
<a name="aws-properties-entityresolution-idnamespace-rule-properties"></a>

`MatchingKeys`  <a name="cfn-entityresolution-idnamespace-rule-matchingkeys"></a>
A list of `MatchingKeys`. The `MatchingKeys` must have been defined in the `SchemaMapping`. Two records are considered to match according to this rule if all of the `MatchingKeys` match.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleName`  <a name="cfn-entityresolution-idnamespace-rule-rulename"></a>
A name for the matching rule.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9- \t]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::IdNamespace Tag
<a name="aws-properties-entityresolution-idnamespace-tag"></a>

The tags used to organize, track, or control access for this resource.

## Syntax
<a name="aws-properties-entityresolution-idnamespace-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-idnamespace-tag-syntax.json"></a>

```
{
  "[Key](#cfn-entityresolution-idnamespace-tag-key)" : String,
  "[Value](#cfn-entityresolution-idnamespace-tag-value)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-idnamespace-tag-syntax.yaml"></a>

```
  [Key](#cfn-entityresolution-idnamespace-tag-key): String
  [Value](#cfn-entityresolution-idnamespace-tag-value): String
```

## Properties
<a name="aws-properties-entityresolution-idnamespace-tag-properties"></a>

`Key`  <a name="cfn-entityresolution-idnamespace-tag-key"></a>
The key of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-entityresolution-idnamespace-tag-value"></a>
The value of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow
<a name="aws-resource-entityresolution-matchingworkflow"></a>

Creates a matching workflow that defines the configuration for a data processing job. The workflow name must be unique. To modify an existing workflow, use `UpdateMatchingWorkflow`. 

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

## Syntax
<a name="aws-resource-entityresolution-matchingworkflow-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-entityresolution-matchingworkflow-syntax.json"></a>

```
{
  "Type" : "AWS::EntityResolution::MatchingWorkflow",
  "Properties" : {
      "[Description](#cfn-entityresolution-matchingworkflow-description)" : String,
      "[IncrementalRunConfig](#cfn-entityresolution-matchingworkflow-incrementalrunconfig)" : IncrementalRunConfig,
      "[InputSourceConfig](#cfn-entityresolution-matchingworkflow-inputsourceconfig)" : [ InputSource, ... ],
      "[OutputSourceConfig](#cfn-entityresolution-matchingworkflow-outputsourceconfig)" : [ OutputSource, ... ],
      "[ResolutionTechniques](#cfn-entityresolution-matchingworkflow-resolutiontechniques)" : ResolutionTechniques,
      "[RoleArn](#cfn-entityresolution-matchingworkflow-rolearn)" : String,
      "[Tags](#cfn-entityresolution-matchingworkflow-tags)" : [ Tag, ... ],
      "[WorkflowName](#cfn-entityresolution-matchingworkflow-workflowname)" : String
    }
}
```

### YAML
<a name="aws-resource-entityresolution-matchingworkflow-syntax.yaml"></a>

```
Type: AWS::EntityResolution::MatchingWorkflow
Properties:
  [Description](#cfn-entityresolution-matchingworkflow-description): String
  [IncrementalRunConfig](#cfn-entityresolution-matchingworkflow-incrementalrunconfig): 
    IncrementalRunConfig
  [InputSourceConfig](#cfn-entityresolution-matchingworkflow-inputsourceconfig): 
    - InputSource
  [OutputSourceConfig](#cfn-entityresolution-matchingworkflow-outputsourceconfig): 
    - OutputSource
  [ResolutionTechniques](#cfn-entityresolution-matchingworkflow-resolutiontechniques): 
    ResolutionTechniques
  [RoleArn](#cfn-entityresolution-matchingworkflow-rolearn): String
  [Tags](#cfn-entityresolution-matchingworkflow-tags): 
    - Tag
  [WorkflowName](#cfn-entityresolution-matchingworkflow-workflowname): String
```

## Properties
<a name="aws-resource-entityresolution-matchingworkflow-properties"></a>

`Description`  <a name="cfn-entityresolution-matchingworkflow-description"></a>
A description of the workflow.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncrementalRunConfig`  <a name="cfn-entityresolution-matchingworkflow-incrementalrunconfig"></a>
Optional. 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. 
*Required*: No  
*Type*: [IncrementalRunConfig](aws-properties-entityresolution-matchingworkflow-incrementalrunconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputSourceConfig`  <a name="cfn-entityresolution-matchingworkflow-inputsourceconfig"></a>
A list of `InputSource` objects, which have the fields `InputSourceARN` and `SchemaName`.  
*Required*: Yes  
*Type*: Array of [InputSource](aws-properties-entityresolution-matchingworkflow-inputsource.md)  
*Minimum*: `1`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputSourceConfig`  <a name="cfn-entityresolution-matchingworkflow-outputsourceconfig"></a>
A list of `OutputSource` objects, each of which contains fields `outputS3Path`, `applyNormalization`, `KMSArn`, and `output`.  
*Required*: Yes  
*Type*: Array of [OutputSource](aws-properties-entityresolution-matchingworkflow-outputsource.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ResolutionTechniques`  <a name="cfn-entityresolution-matchingworkflow-resolutiontechniques"></a>
An object which defines the `resolutionType` and the `ruleBasedProperties`.  
*Required*: Yes  
*Type*: [ResolutionTechniques](aws-properties-entityresolution-matchingworkflow-resolutiontechniques.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleArn`  <a name="cfn-entityresolution-matchingworkflow-rolearn"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-entityresolution-matchingworkflow-tags"></a>
The tags used to organize, track, or control access for this resource.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-entityresolution-matchingworkflow-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`WorkflowName`  <a name="cfn-entityresolution-matchingworkflow-workflowname"></a>
The name of the workflow. There can't be multiple `MatchingWorkflows` with the same name.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9-]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::EntityResolution::MatchingWorkflow CustomerProfilesIntegrationConfig
<a name="aws-properties-entityresolution-matchingworkflow-customerprofilesintegrationconfig"></a>

<a name="aws-properties-entityresolution-matchingworkflow-customerprofilesintegrationconfig-description"></a>The `CustomerProfilesIntegrationConfig` property type specifies Property description not available. for an [AWS::EntityResolution::MatchingWorkflow](aws-resource-entityresolution-matchingworkflow.md).

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-customerprofilesintegrationconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-customerprofilesintegrationconfig-syntax.json"></a>

```
{
  "[DomainArn](#cfn-entityresolution-matchingworkflow-customerprofilesintegrationconfig-domainarn)" : String,
  "[ObjectTypeArn](#cfn-entityresolution-matchingworkflow-customerprofilesintegrationconfig-objecttypearn)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-customerprofilesintegrationconfig-syntax.yaml"></a>

```
  [DomainArn](#cfn-entityresolution-matchingworkflow-customerprofilesintegrationconfig-domainarn): String
  [ObjectTypeArn](#cfn-entityresolution-matchingworkflow-customerprofilesintegrationconfig-objecttypearn): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-customerprofilesintegrationconfig-properties"></a>

`DomainArn`  <a name="cfn-entityresolution-matchingworkflow-customerprofilesintegrationconfig-domainarn"></a>
Property description not available.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):profile:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(domains/[a-zA-Z_0-9-]{1,255})$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ObjectTypeArn`  <a name="cfn-entityresolution-matchingworkflow-customerprofilesintegrationconfig-objecttypearn"></a>
Property description not available.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):profile:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(domains/[a-zA-Z_0-9-]{1,255}/object-types/[a-zA-Z_0-9-]{1,255})$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow IncrementalRunConfig
<a name="aws-properties-entityresolution-matchingworkflow-incrementalrunconfig"></a>

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

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

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-incrementalrunconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-incrementalrunconfig-syntax.json"></a>

```
{
  "[IncrementalRunType](#cfn-entityresolution-matchingworkflow-incrementalrunconfig-incrementalruntype)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-incrementalrunconfig-syntax.yaml"></a>

```
  [IncrementalRunType](#cfn-entityresolution-matchingworkflow-incrementalrunconfig-incrementalruntype): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-incrementalrunconfig-properties"></a>

`IncrementalRunType`  <a name="cfn-entityresolution-matchingworkflow-incrementalrunconfig-incrementalruntype"></a>
The type of incremental run. The only valid value is `IMMEDIATE`. This appears as "Automatic" in the console.  
For workflows where `resolutionType` is `ML_MATCHING` or `PROVIDER`, incremental processing is not supported. 
*Required*: Yes  
*Type*: String  
*Allowed values*: `IMMEDIATE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow InputSource
<a name="aws-properties-entityresolution-matchingworkflow-inputsource"></a>

An object containing `inputSourceARN`, `schemaName`, and `applyNormalization`.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-inputsource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-inputsource-syntax.json"></a>

```
{
  "[ApplyNormalization](#cfn-entityresolution-matchingworkflow-inputsource-applynormalization)" : Boolean,
  "[InputSourceARN](#cfn-entityresolution-matchingworkflow-inputsource-inputsourcearn)" : String,
  "[SchemaArn](#cfn-entityresolution-matchingworkflow-inputsource-schemaarn)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-inputsource-syntax.yaml"></a>

```
  [ApplyNormalization](#cfn-entityresolution-matchingworkflow-inputsource-applynormalization): Boolean
  [InputSourceARN](#cfn-entityresolution-matchingworkflow-inputsource-inputsourcearn): String
  [SchemaArn](#cfn-entityresolution-matchingworkflow-inputsource-schemaarn): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-inputsource-properties"></a>

`ApplyNormalization`  <a name="cfn-entityresolution-matchingworkflow-inputsource-applynormalization"></a>
Normalizes the attributes defined in the schema in the input data. For example, if an attribute has an `AttributeType` of `PHONE_NUMBER`, and the data in the input table is in a format of 1234567890, AWS Entity Resolution will normalize this field in the output to (123)-456-7890.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputSourceARN`  <a name="cfn-entityresolution-matchingworkflow-inputsource-inputsourcearn"></a>
An object containing `inputSourceARN`, `schemaName`, and `applyNormalization`.  
*Required*: Yes  
*Type*: String  
*Pattern*: `arn:(aws|aws-us-gov|aws-cn):.*:.*:[0-9]+:.*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SchemaArn`  <a name="cfn-entityresolution-matchingworkflow-inputsource-schemaarn"></a>
The name of the schema.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(schemamapping/.*)$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow IntermediateSourceConfiguration
<a name="aws-properties-entityresolution-matchingworkflow-intermediatesourceconfiguration"></a>

The Amazon S3 location that temporarily stores your data while it processes. Your information won't be saved permanently.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-intermediatesourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-intermediatesourceconfiguration-syntax.json"></a>

```
{
  "[IntermediateS3Path](#cfn-entityresolution-matchingworkflow-intermediatesourceconfiguration-intermediates3path)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-intermediatesourceconfiguration-syntax.yaml"></a>

```
  [IntermediateS3Path](#cfn-entityresolution-matchingworkflow-intermediatesourceconfiguration-intermediates3path): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-intermediatesourceconfiguration-properties"></a>

`IntermediateS3Path`  <a name="cfn-entityresolution-matchingworkflow-intermediatesourceconfiguration-intermediates3path"></a>
The Amazon S3 location (bucket and prefix). For example: `s3://provider_bucket/DOC-EXAMPLE-BUCKET`  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow OutputAttribute
<a name="aws-properties-entityresolution-matchingworkflow-outputattribute"></a>

A list of `OutputAttribute` objects, each of which have the fields `Name` and `Hashed`. Each of these objects selects a column to be included in the output table, and whether the values of the column should be hashed.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-outputattribute-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-outputattribute-syntax.json"></a>

```
{
  "[Hashed](#cfn-entityresolution-matchingworkflow-outputattribute-hashed)" : Boolean,
  "[Name](#cfn-entityresolution-matchingworkflow-outputattribute-name)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-outputattribute-syntax.yaml"></a>

```
  [Hashed](#cfn-entityresolution-matchingworkflow-outputattribute-hashed): Boolean
  [Name](#cfn-entityresolution-matchingworkflow-outputattribute-name): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-outputattribute-properties"></a>

`Hashed`  <a name="cfn-entityresolution-matchingworkflow-outputattribute-hashed"></a>
Enables the ability to hash the column values in the output.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-entityresolution-matchingworkflow-outputattribute-name"></a>
A name of a column to be written to the output. This must be an `InputField` name in the schema mapping.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9- \t]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow OutputSource
<a name="aws-properties-entityresolution-matchingworkflow-outputsource"></a>

A list of `OutputAttribute` objects, each of which have the fields `Name` and `Hashed`. Each of these objects selects a column to be included in the output table, and whether the values of the column should be hashed.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-outputsource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-outputsource-syntax.json"></a>

```
{
  "[ApplyNormalization](#cfn-entityresolution-matchingworkflow-outputsource-applynormalization)" : Boolean,
  "[CustomerProfilesIntegrationConfig](#cfn-entityresolution-matchingworkflow-outputsource-customerprofilesintegrationconfig)" : CustomerProfilesIntegrationConfig,
  "[KMSArn](#cfn-entityresolution-matchingworkflow-outputsource-kmsarn)" : String,
  "[Output](#cfn-entityresolution-matchingworkflow-outputsource-output)" : [ OutputAttribute, ... ],
  "[OutputS3Path](#cfn-entityresolution-matchingworkflow-outputsource-outputs3path)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-outputsource-syntax.yaml"></a>

```
  [ApplyNormalization](#cfn-entityresolution-matchingworkflow-outputsource-applynormalization): Boolean
  [CustomerProfilesIntegrationConfig](#cfn-entityresolution-matchingworkflow-outputsource-customerprofilesintegrationconfig): 
    CustomerProfilesIntegrationConfig
  [KMSArn](#cfn-entityresolution-matchingworkflow-outputsource-kmsarn): String
  [Output](#cfn-entityresolution-matchingworkflow-outputsource-output): 
    - OutputAttribute
  [OutputS3Path](#cfn-entityresolution-matchingworkflow-outputsource-outputs3path): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-outputsource-properties"></a>

`ApplyNormalization`  <a name="cfn-entityresolution-matchingworkflow-outputsource-applynormalization"></a>
Normalizes the attributes defined in the schema in the input data. For example, if an attribute has an `AttributeType` of `PHONE_NUMBER`, and the data in the input table is in a format of 1234567890, AWS Entity Resolution will normalize this field in the output to (123)-456-7890.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CustomerProfilesIntegrationConfig`  <a name="cfn-entityresolution-matchingworkflow-outputsource-customerprofilesintegrationconfig"></a>
Property description not available.  
*Required*: No  
*Type*: [CustomerProfilesIntegrationConfig](aws-properties-entityresolution-matchingworkflow-customerprofilesintegrationconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KMSArn`  <a name="cfn-entityresolution-matchingworkflow-outputsource-kmsarn"></a>
Customer KMS ARN for encryption at rest. If not provided, system will use an AWS Entity Resolution managed KMS key.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):kms:.*:[0-9]+:.*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Output`  <a name="cfn-entityresolution-matchingworkflow-outputsource-output"></a>
A list of `OutputAttribute` objects, each of which have the fields `Name` and `Hashed`. Each of these objects selects a column to be included in the output table, and whether the values of the column should be hashed.  
*Required*: Yes  
*Type*: Array of [OutputAttribute](aws-properties-entityresolution-matchingworkflow-outputattribute.md)  
*Minimum*: `0`  
*Maximum*: `750`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputS3Path`  <a name="cfn-entityresolution-matchingworkflow-outputsource-outputs3path"></a>
The S3 path to which AWS Entity Resolution will write the output table.  
*Required*: No  
*Type*: String  
*Pattern*: `^s3://([^/]+)/?(.*?([^/]+)/?)$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow ProviderProperties
<a name="aws-properties-entityresolution-matchingworkflow-providerproperties"></a>

An object containing the `providerServiceARN`, `intermediateSourceConfiguration`, and `providerConfiguration`.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-providerproperties-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-providerproperties-syntax.json"></a>

```
{
  "[IntermediateSourceConfiguration](#cfn-entityresolution-matchingworkflow-providerproperties-intermediatesourceconfiguration)" : IntermediateSourceConfiguration,
  "[ProviderConfiguration](#cfn-entityresolution-matchingworkflow-providerproperties-providerconfiguration)" : {Key: Value, ...},
  "[ProviderServiceArn](#cfn-entityresolution-matchingworkflow-providerproperties-providerservicearn)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-providerproperties-syntax.yaml"></a>

```
  [IntermediateSourceConfiguration](#cfn-entityresolution-matchingworkflow-providerproperties-intermediatesourceconfiguration): 
    IntermediateSourceConfiguration
  [ProviderConfiguration](#cfn-entityresolution-matchingworkflow-providerproperties-providerconfiguration): 
    Key: Value
  [ProviderServiceArn](#cfn-entityresolution-matchingworkflow-providerproperties-providerservicearn): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-providerproperties-properties"></a>

`IntermediateSourceConfiguration`  <a name="cfn-entityresolution-matchingworkflow-providerproperties-intermediatesourceconfiguration"></a>
The Amazon S3 location that temporarily stores your data while it processes. Your information won't be saved permanently.  
*Required*: No  
*Type*: [IntermediateSourceConfiguration](aws-properties-entityresolution-matchingworkflow-intermediatesourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProviderConfiguration`  <a name="cfn-entityresolution-matchingworkflow-providerproperties-providerconfiguration"></a>
The required configuration fields to use with the provider service.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.+$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProviderServiceArn`  <a name="cfn-entityresolution-matchingworkflow-providerproperties-providerservicearn"></a>
The ARN of the provider service.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow ResolutionTechniques
<a name="aws-properties-entityresolution-matchingworkflow-resolutiontechniques"></a>

An object which defines the `resolutionType` and the `ruleBasedProperties`.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-resolutiontechniques-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-resolutiontechniques-syntax.json"></a>

```
{
  "[ProviderProperties](#cfn-entityresolution-matchingworkflow-resolutiontechniques-providerproperties)" : ProviderProperties,
  "[ResolutionType](#cfn-entityresolution-matchingworkflow-resolutiontechniques-resolutiontype)" : String,
  "[RuleBasedProperties](#cfn-entityresolution-matchingworkflow-resolutiontechniques-rulebasedproperties)" : RuleBasedProperties,
  "[RuleConditionProperties](#cfn-entityresolution-matchingworkflow-resolutiontechniques-ruleconditionproperties)" : RuleConditionProperties
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-resolutiontechniques-syntax.yaml"></a>

```
  [ProviderProperties](#cfn-entityresolution-matchingworkflow-resolutiontechniques-providerproperties): 
    ProviderProperties
  [ResolutionType](#cfn-entityresolution-matchingworkflow-resolutiontechniques-resolutiontype): String
  [RuleBasedProperties](#cfn-entityresolution-matchingworkflow-resolutiontechniques-rulebasedproperties): 
    RuleBasedProperties
  [RuleConditionProperties](#cfn-entityresolution-matchingworkflow-resolutiontechniques-ruleconditionproperties): 
    RuleConditionProperties
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-resolutiontechniques-properties"></a>

`ProviderProperties`  <a name="cfn-entityresolution-matchingworkflow-resolutiontechniques-providerproperties"></a>
The properties of the provider service.  
*Required*: No  
*Type*: [ProviderProperties](aws-properties-entityresolution-matchingworkflow-providerproperties.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ResolutionType`  <a name="cfn-entityresolution-matchingworkflow-resolutiontechniques-resolutiontype"></a>
The type of matching workflow to create. Specify one of the following types:   
+ `RULE_MATCHING`: Match records using configurable rule-based criteria 
+ `ML_MATCHING`: Match records using machine learning models 
+ `PROVIDER`: Match records using a third-party matching provider
*Required*: No  
*Type*: String  
*Allowed values*: `RULE_MATCHING | ML_MATCHING | PROVIDER`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleBasedProperties`  <a name="cfn-entityresolution-matchingworkflow-resolutiontechniques-rulebasedproperties"></a>
An object which defines the list of matching rules to run and has a field `rules`, which is a list of rule objects.  
*Required*: No  
*Type*: [RuleBasedProperties](aws-properties-entityresolution-matchingworkflow-rulebasedproperties.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleConditionProperties`  <a name="cfn-entityresolution-matchingworkflow-resolutiontechniques-ruleconditionproperties"></a>
An object containing the `rules` for a matching workflow.  
*Required*: No  
*Type*: [RuleConditionProperties](aws-properties-entityresolution-matchingworkflow-ruleconditionproperties.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow Rule
<a name="aws-properties-entityresolution-matchingworkflow-rule"></a>

An object containing the `ruleName` and `matchingKeys`.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-rule-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-rule-syntax.json"></a>

```
{
  "[MatchingKeys](#cfn-entityresolution-matchingworkflow-rule-matchingkeys)" : [ String, ... ],
  "[RuleName](#cfn-entityresolution-matchingworkflow-rule-rulename)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-rule-syntax.yaml"></a>

```
  [MatchingKeys](#cfn-entityresolution-matchingworkflow-rule-matchingkeys): 
    - String
  [RuleName](#cfn-entityresolution-matchingworkflow-rule-rulename): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-rule-properties"></a>

`MatchingKeys`  <a name="cfn-entityresolution-matchingworkflow-rule-matchingkeys"></a>
A list of `MatchingKeys`. The `MatchingKeys` must have been defined in the `SchemaMapping`. Two records are considered to match according to this rule if all of the `MatchingKeys` match.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `15`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleName`  <a name="cfn-entityresolution-matchingworkflow-rule-rulename"></a>
A name for the matching rule.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9- \t]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow RuleBasedProperties
<a name="aws-properties-entityresolution-matchingworkflow-rulebasedproperties"></a>

An object which defines the list of matching rules to run in a matching workflow. 

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-rulebasedproperties-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-rulebasedproperties-syntax.json"></a>

```
{
  "[AttributeMatchingModel](#cfn-entityresolution-matchingworkflow-rulebasedproperties-attributematchingmodel)" : String,
  "[MatchPurpose](#cfn-entityresolution-matchingworkflow-rulebasedproperties-matchpurpose)" : String,
  "[Rules](#cfn-entityresolution-matchingworkflow-rulebasedproperties-rules)" : [ Rule, ... ]
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-rulebasedproperties-syntax.yaml"></a>

```
  [AttributeMatchingModel](#cfn-entityresolution-matchingworkflow-rulebasedproperties-attributematchingmodel): String
  [MatchPurpose](#cfn-entityresolution-matchingworkflow-rulebasedproperties-matchpurpose): String
  [Rules](#cfn-entityresolution-matchingworkflow-rulebasedproperties-rules): 
    - Rule
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-rulebasedproperties-properties"></a>

`AttributeMatchingModel`  <a name="cfn-entityresolution-matchingworkflow-rulebasedproperties-attributematchingmodel"></a>
The comparison type. You can choose `ONE_TO_ONE` or `MANY_TO_MANY` as the `attributeMatchingModel`.   
If you choose `ONE_TO_ONE`, the system can only match attributes if the sub-types are an exact match. For example, for the `Email` attribute type, the system will only consider it a match if the value of the `Email` field of Profile A matches the value of the `Email` field of Profile B.  
If you choose `MANY_TO_MANY`, the system can match attributes across the sub-types of an attribute type. For example, if the value of the `Email` field of Profile A and the value of `BusinessEmail` field of Profile B matches, the two profiles are matched on the `Email` attribute type.   
*Required*: Yes  
*Type*: String  
*Allowed values*: `ONE_TO_ONE | MANY_TO_MANY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MatchPurpose`  <a name="cfn-entityresolution-matchingworkflow-rulebasedproperties-matchpurpose"></a>
 An indicator of whether to generate IDs and index the data or not.  
If you choose `IDENTIFIER_GENERATION`, the process generates IDs and indexes the data.  
If you choose `INDEXING`, the process indexes the data without generating IDs.  
*Required*: No  
*Type*: String  
*Allowed values*: `IDENTIFIER_GENERATION | INDEXING`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Rules`  <a name="cfn-entityresolution-matchingworkflow-rulebasedproperties-rules"></a>
A list of `Rule` objects, each of which have fields `RuleName` and `MatchingKeys`.  
*Required*: Yes  
*Type*: Array of [Rule](aws-properties-entityresolution-matchingworkflow-rule.md)  
*Minimum*: `1`  
*Maximum*: `25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow RuleCondition
<a name="aws-properties-entityresolution-matchingworkflow-rulecondition"></a>

An object that defines the `ruleCondition` and the `ruleName` to use in a matching workflow.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-rulecondition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-rulecondition-syntax.json"></a>

```
{
  "[Condition](#cfn-entityresolution-matchingworkflow-rulecondition-condition)" : String,
  "[RuleName](#cfn-entityresolution-matchingworkflow-rulecondition-rulename)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-rulecondition-syntax.yaml"></a>

```
  [Condition](#cfn-entityresolution-matchingworkflow-rulecondition-condition): String
  [RuleName](#cfn-entityresolution-matchingworkflow-rulecondition-rulename): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-rulecondition-properties"></a>

`Condition`  <a name="cfn-entityresolution-matchingworkflow-rulecondition-condition"></a>
A statement that specifies the conditions for a matching rule.  
If your data is accurate, use an Exact matching function: `Exact` or `ExactManyToMany`.   
If your data has variations in spelling or pronunciation, use a Fuzzy matching function: `Cosine`, `Levenshtein`, or `Soundex`.   
Use operators if you want to combine (`AND`), separate (`OR`), or group matching functions `(...)`.  
For example: `(Cosine(a, 10) AND Exact(b, true)) OR ExactManyToMany(c, d)`  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuleName`  <a name="cfn-entityresolution-matchingworkflow-rulecondition-rulename"></a>
A name for the matching rule.  
For example: `Rule1`  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9- \t]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow RuleConditionProperties
<a name="aws-properties-entityresolution-matchingworkflow-ruleconditionproperties"></a>

The properties of a rule condition that provides the ability to use more complex syntax.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-ruleconditionproperties-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-ruleconditionproperties-syntax.json"></a>

```
{
  "[Rules](#cfn-entityresolution-matchingworkflow-ruleconditionproperties-rules)" : [ RuleCondition, ... ]
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-ruleconditionproperties-syntax.yaml"></a>

```
  [Rules](#cfn-entityresolution-matchingworkflow-ruleconditionproperties-rules): 
    - RuleCondition
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-ruleconditionproperties-properties"></a>

`Rules`  <a name="cfn-entityresolution-matchingworkflow-ruleconditionproperties-rules"></a>
 A list of rule objects, each of which have fields `ruleName` and `condition`.   
*Required*: Yes  
*Type*: Array of [RuleCondition](aws-properties-entityresolution-matchingworkflow-rulecondition.md)  
*Minimum*: `1`  
*Maximum*: `25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::MatchingWorkflow Tag
<a name="aws-properties-entityresolution-matchingworkflow-tag"></a>

The tags used to organize, track, or control access for this resource.

## Syntax
<a name="aws-properties-entityresolution-matchingworkflow-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-matchingworkflow-tag-syntax.json"></a>

```
{
  "[Key](#cfn-entityresolution-matchingworkflow-tag-key)" : String,
  "[Value](#cfn-entityresolution-matchingworkflow-tag-value)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-matchingworkflow-tag-syntax.yaml"></a>

```
  [Key](#cfn-entityresolution-matchingworkflow-tag-key): String
  [Value](#cfn-entityresolution-matchingworkflow-tag-value): String
```

## Properties
<a name="aws-properties-entityresolution-matchingworkflow-tag-properties"></a>

`Key`  <a name="cfn-entityresolution-matchingworkflow-tag-key"></a>
The key of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-entityresolution-matchingworkflow-tag-value"></a>
The value of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::PolicyStatement
<a name="aws-resource-entityresolution-policystatement"></a>

Adds a policy statement object. To retrieve a list of existing policy statements, use the `GetPolicy` API.

## Syntax
<a name="aws-resource-entityresolution-policystatement-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-entityresolution-policystatement-syntax.json"></a>

```
{
  "Type" : "AWS::EntityResolution::PolicyStatement",
  "Properties" : {
      "[Action](#cfn-entityresolution-policystatement-action)" : [ String, ... ],
      "[Arn](#cfn-entityresolution-policystatement-arn)" : String,
      "[Condition](#cfn-entityresolution-policystatement-condition)" : String,
      "[Effect](#cfn-entityresolution-policystatement-effect)" : String,
      "[Principal](#cfn-entityresolution-policystatement-principal)" : [ String, ... ],
      "[StatementId](#cfn-entityresolution-policystatement-statementid)" : String
    }
}
```

### YAML
<a name="aws-resource-entityresolution-policystatement-syntax.yaml"></a>

```
Type: AWS::EntityResolution::PolicyStatement
Properties:
  [Action](#cfn-entityresolution-policystatement-action): 
    - String
  [Arn](#cfn-entityresolution-policystatement-arn): String
  [Condition](#cfn-entityresolution-policystatement-condition): String
  [Effect](#cfn-entityresolution-policystatement-effect): String
  [Principal](#cfn-entityresolution-policystatement-principal): 
    - String
  [StatementId](#cfn-entityresolution-policystatement-statementid): String
```

## Properties
<a name="aws-resource-entityresolution-policystatement-properties"></a>

`Action`  <a name="cfn-entityresolution-policystatement-action"></a>
The action that the principal can use on the resource.   
For example, `entityresolution:GetIdMappingJob`, `entityresolution:GetMatchingJob`.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Arn`  <a name="cfn-entityresolution-policystatement-arn"></a>
The Amazon Resource Name (ARN) of the resource that will be accessed by the principal.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws|aws-us-gov|aws-cn):entityresolution:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:((schemamapping|matchingworkflow|idmappingworkflow|idnamespace)/[a-zA-Z_0-9-]{1,255})$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Condition`  <a name="cfn-entityresolution-policystatement-condition"></a>
A set of condition keys that you can use in key policies.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `40960`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Effect`  <a name="cfn-entityresolution-policystatement-effect"></a>
Determines whether the permissions specified in the policy are to be allowed (`Allow`) or denied (`Deny`).  
 If you set the value of the `effect` parameter to `Deny` for the `AddPolicyStatement` operation, you must also set the value of the `effect` parameter in the `policy` to `Deny` for the `PutPolicy` operation.
*Required*: No  
*Type*: String  
*Allowed values*: `Allow | Deny`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Principal`  <a name="cfn-entityresolution-policystatement-principal"></a>
The AWS service or AWS account that can access the resource defined as ARN.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StatementId`  <a name="cfn-entityresolution-policystatement-statementid"></a>
A statement identifier that differentiates the statement from others in the same policy.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9A-Za-z]+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::EntityResolution::SchemaMapping
<a name="aws-resource-entityresolution-schemamapping"></a>

Creates a schema mapping, which defines the schema of the input customer records table. The `SchemaMapping` also provides AWS Entity Resolution with some metadata about the table, such as the attribute types of the columns and which columns to match on.

## Syntax
<a name="aws-resource-entityresolution-schemamapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-entityresolution-schemamapping-syntax.json"></a>

```
{
  "Type" : "AWS::EntityResolution::SchemaMapping",
  "Properties" : {
      "[Description](#cfn-entityresolution-schemamapping-description)" : String,
      "[MappedInputFields](#cfn-entityresolution-schemamapping-mappedinputfields)" : [ SchemaInputAttribute, ... ],
      "[SchemaName](#cfn-entityresolution-schemamapping-schemaname)" : String,
      "[Tags](#cfn-entityresolution-schemamapping-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-entityresolution-schemamapping-syntax.yaml"></a>

```
Type: AWS::EntityResolution::SchemaMapping
Properties:
  [Description](#cfn-entityresolution-schemamapping-description): String
  [MappedInputFields](#cfn-entityresolution-schemamapping-mappedinputfields): 
    - SchemaInputAttribute
  [SchemaName](#cfn-entityresolution-schemamapping-schemaname): String
  [Tags](#cfn-entityresolution-schemamapping-tags): 
    - Tag
```

## Properties
<a name="aws-resource-entityresolution-schemamapping-properties"></a>

`Description`  <a name="cfn-entityresolution-schemamapping-description"></a>
A description of the schema.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MappedInputFields`  <a name="cfn-entityresolution-schemamapping-mappedinputfields"></a>
A list of `MappedInputFields`. Each `MappedInputField` corresponds to a column the source data table, and contains column name plus additional information that AWS Entity Resolution uses for matching.  
*Required*: Yes  
*Type*: Array of [SchemaInputAttribute](aws-properties-entityresolution-schemamapping-schemainputattribute.md)  
*Minimum*: `2`  
*Maximum*: `35`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SchemaName`  <a name="cfn-entityresolution-schemamapping-schemaname"></a>
The name of the schema. There can't be multiple `SchemaMappings` with the same name.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9-]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-entityresolution-schemamapping-tags"></a>
The tags used to organize, track, or control access for this resource.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-entityresolution-schemamapping-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::SchemaMapping SchemaInputAttribute
<a name="aws-properties-entityresolution-schemamapping-schemainputattribute"></a>

A configuration object for defining input data fields in AWS Entity Resolution. The `SchemaInputAttribute` specifies how individual fields in your input data should be processed and matched.

## Syntax
<a name="aws-properties-entityresolution-schemamapping-schemainputattribute-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-schemamapping-schemainputattribute-syntax.json"></a>

```
{
  "[FieldName](#cfn-entityresolution-schemamapping-schemainputattribute-fieldname)" : String,
  "[GroupName](#cfn-entityresolution-schemamapping-schemainputattribute-groupname)" : String,
  "[Hashed](#cfn-entityresolution-schemamapping-schemainputattribute-hashed)" : Boolean,
  "[MatchKey](#cfn-entityresolution-schemamapping-schemainputattribute-matchkey)" : String,
  "[SubType](#cfn-entityresolution-schemamapping-schemainputattribute-subtype)" : String,
  "[Type](#cfn-entityresolution-schemamapping-schemainputattribute-type)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-schemamapping-schemainputattribute-syntax.yaml"></a>

```
  [FieldName](#cfn-entityresolution-schemamapping-schemainputattribute-fieldname): String
  [GroupName](#cfn-entityresolution-schemamapping-schemainputattribute-groupname): String
  [Hashed](#cfn-entityresolution-schemamapping-schemainputattribute-hashed): Boolean
  [MatchKey](#cfn-entityresolution-schemamapping-schemainputattribute-matchkey): String
  [SubType](#cfn-entityresolution-schemamapping-schemainputattribute-subtype): String
  [Type](#cfn-entityresolution-schemamapping-schemainputattribute-type): String
```

## Properties
<a name="aws-properties-entityresolution-schemamapping-schemainputattribute-properties"></a>

`FieldName`  <a name="cfn-entityresolution-schemamapping-schemainputattribute-fieldname"></a>
A string containing the field name.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9- \t]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GroupName`  <a name="cfn-entityresolution-schemamapping-schemainputattribute-groupname"></a>
A string that instructs AWS Entity Resolution to combine several columns into a unified column with the identical attribute type.   
For example, when working with columns such as `NAME_FIRST`, `NAME_MIDDLE`, and `NAME_LAST`, assigning them a common `groupName` will prompt AWS Entity Resolution to concatenate them into a single value.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9- \t]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Hashed`  <a name="cfn-entityresolution-schemamapping-schemainputattribute-hashed"></a>
 Indicates if the column values are hashed in the schema input.   
If the value is set to `TRUE`, the column values are hashed.   
If the value is set to `FALSE`, the column values are cleartext.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MatchKey`  <a name="cfn-entityresolution-schemamapping-schemainputattribute-matchkey"></a>
A key that allows grouping of multiple input attributes into a unified matching group.   
For example, consider a scenario where the source table contains various addresses, such as `business_address` and `shipping_address`. By assigning a `matchKey` called `address` to both attributes, AWS Entity Resolution will match records across these fields to create a consolidated matching group.  
If no `matchKey` is specified for a column, it won't be utilized for matching purposes but will still be included in the output table.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z_0-9- \t]*$`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SubType`  <a name="cfn-entityresolution-schemamapping-schemainputattribute-subtype"></a>
The subtype of the attribute, selected from a list of values.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-entityresolution-schemamapping-schemainputattribute-type"></a>
The type of the attribute, selected from a list of values.  
LiveRamp supports: `NAME` \$1 `NAME_FIRST` \$1 `NAME_MIDDLE` \$1 `NAME_LAST` \$1 `ADDRESS` \$1 `ADDRESS_STREET1` \$1 `ADDRESS_STREET2` \$1 `ADDRESS_STREET3` \$1 `ADDRESS_CITY` \$1 `ADDRESS_STATE` \$1 `ADDRESS_COUNTRY` \$1 `ADDRESS_POSTALCODE` \$1 `PHONE` \$1 `PHONE_NUMBER` \$1 `EMAIL_ADDRESS` \$1 `UNIQUE_ID` \$1 `PROVIDER_ID`  
TransUnion supports: `NAME` \$1 `NAME_FIRST` \$1 `NAME_LAST` \$1 `ADDRESS` \$1 `ADDRESS_CITY` \$1 `ADDRESS_STATE` \$1 `ADDRESS_COUNTRY` \$1 `ADDRESS_POSTALCODE` \$1 `PHONE_NUMBER` \$1 `EMAIL_ADDRESS` \$1 `UNIQUE_ID` \$1 `IPV4` \$1 `IPV6` \$1 `MAID`  
Unified ID 2.0 supports: `PHONE_NUMBER` \$1 `EMAIL_ADDRESS` \$1 `UNIQUE_ID`  
Normalization is only supported for `NAME`, `ADDRESS`, `PHONE`, and `EMAIL_ADDRESS`.   
If you want to normalize `NAME_FIRST`, `NAME_MIDDLE`, and `NAME_LAST`, you must group them by assigning them to the `NAME``groupName`.   
If you want to normalize `ADDRESS_STREET1`, `ADDRESS_STREET2`, `ADDRESS_STREET3`, `ADDRESS_CITY`, `ADDRESS_STATE`, `ADDRESS_COUNTRY`, and `ADDRESS_POSTALCODE`, you must group them by assigning them to the `ADDRESS``groupName`.   
If you want to normalize `PHONE_NUMBER` and `PHONE_COUNTRYCODE`, you must group them by assigning them to the `PHONE``groupName`. 
*Required*: Yes  
*Type*: String  
*Allowed values*: `NAME | NAME_FIRST | NAME_MIDDLE | NAME_LAST | ADDRESS | ADDRESS_STREET1 | ADDRESS_STREET2 | ADDRESS_STREET3 | ADDRESS_CITY | ADDRESS_STATE | ADDRESS_COUNTRY | ADDRESS_POSTALCODE | PHONE | PHONE_NUMBER | PHONE_COUNTRYCODE | EMAIL_ADDRESS | UNIQUE_ID | DATE | STRING | PROVIDER_ID`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::EntityResolution::SchemaMapping Tag
<a name="aws-properties-entityresolution-schemamapping-tag"></a>

The tags used to organize, track, or control access for this resource.

## Syntax
<a name="aws-properties-entityresolution-schemamapping-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-entityresolution-schemamapping-tag-syntax.json"></a>

```
{
  "[Key](#cfn-entityresolution-schemamapping-tag-key)" : String,
  "[Value](#cfn-entityresolution-schemamapping-tag-value)" : String
}
```

### YAML
<a name="aws-properties-entityresolution-schemamapping-tag-syntax.yaml"></a>

```
  [Key](#cfn-entityresolution-schemamapping-tag-key): String
  [Value](#cfn-entityresolution-schemamapping-tag-value): String
```

## Properties
<a name="aws-properties-entityresolution-schemamapping-tag-properties"></a>

`Key`  <a name="cfn-entityresolution-schemamapping-tag-key"></a>
The key of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-entityresolution-schemamapping-tag-value"></a>
The value of the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)