

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::Connect::User
<a name="aws-resource-connect-user"></a>

Specifies a user account for an Amazon Connect instance.

For information about how to create user accounts using the Amazon Connect console, see [Add Users](https://docs.aws.amazon.com/connect/latest/adminguide/user-management.html) in the *Amazon Connect Administrator Guide*.

## Syntax
<a name="aws-resource-connect-user-syntax"></a>

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

### JSON
<a name="aws-resource-connect-user-syntax.json"></a>

```
{
  "Type" : "AWS::Connect::User",
  "Properties" : {
      "[AfterContactWorkConfigs](#cfn-connect-user-aftercontactworkconfigs)" : [ AfterContactWorkConfigPerChannel, ... ],
      "[AutoAcceptConfigs](#cfn-connect-user-autoacceptconfigs)" : [ AutoAcceptConfig, ... ],
      "[DirectoryUserId](#cfn-connect-user-directoryuserid)" : String,
      "[HierarchyGroupArn](#cfn-connect-user-hierarchygrouparn)" : String,
      "[IdentityInfo](#cfn-connect-user-identityinfo)" : UserIdentityInfo,
      "[InstanceArn](#cfn-connect-user-instancearn)" : String,
      "[Password](#cfn-connect-user-password)" : String,
      "[PersistentConnectionConfigs](#cfn-connect-user-persistentconnectionconfigs)" : [ PersistentConnectionConfig, ... ],
      "[PhoneConfig](#cfn-connect-user-phoneconfig)" : UserPhoneConfig,
      "[PhoneNumberConfigs](#cfn-connect-user-phonenumberconfigs)" : [ PhoneNumberConfig, ... ],
      "[RoutingProfileArn](#cfn-connect-user-routingprofilearn)" : String,
      "[SecurityProfileArns](#cfn-connect-user-securityprofilearns)" : [ String, ... ],
      "[Tags](#cfn-connect-user-tags)" : [ Tag, ... ],
      "[Username](#cfn-connect-user-username)" : String,
      "[UserProficiencies](#cfn-connect-user-userproficiencies)" : [ UserProficiency, ... ],
      "[VoiceEnhancementConfigs](#cfn-connect-user-voiceenhancementconfigs)" : [ VoiceEnhancementConfig, ... ]
    }
}
```

### YAML
<a name="aws-resource-connect-user-syntax.yaml"></a>

```
Type: AWS::Connect::User
Properties:
  [AfterContactWorkConfigs](#cfn-connect-user-aftercontactworkconfigs): 
    - AfterContactWorkConfigPerChannel
  [AutoAcceptConfigs](#cfn-connect-user-autoacceptconfigs): 
    - AutoAcceptConfig
  [DirectoryUserId](#cfn-connect-user-directoryuserid): String
  [HierarchyGroupArn](#cfn-connect-user-hierarchygrouparn): String
  [IdentityInfo](#cfn-connect-user-identityinfo): 
    UserIdentityInfo
  [InstanceArn](#cfn-connect-user-instancearn): String
  [Password](#cfn-connect-user-password): String
  [PersistentConnectionConfigs](#cfn-connect-user-persistentconnectionconfigs): 
    - PersistentConnectionConfig
  [PhoneConfig](#cfn-connect-user-phoneconfig): 
    UserPhoneConfig
  [PhoneNumberConfigs](#cfn-connect-user-phonenumberconfigs): 
    - PhoneNumberConfig
  [RoutingProfileArn](#cfn-connect-user-routingprofilearn): String
  [SecurityProfileArns](#cfn-connect-user-securityprofilearns): 
    - String
  [Tags](#cfn-connect-user-tags): 
    - Tag
  [Username](#cfn-connect-user-username): String
  [UserProficiencies](#cfn-connect-user-userproficiencies): 
    - UserProficiency
  [VoiceEnhancementConfigs](#cfn-connect-user-voiceenhancementconfigs): 
    - VoiceEnhancementConfig
```

## Properties
<a name="aws-resource-connect-user-properties"></a>

`AfterContactWorkConfigs`  <a name="cfn-connect-user-aftercontactworkconfigs"></a>
The list of after contact work (ACW) timeout configuration settings for each channel.  
*Required*: No  
*Type*: Array of [AfterContactWorkConfigPerChannel](aws-properties-connect-user-aftercontactworkconfigperchannel.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AutoAcceptConfigs`  <a name="cfn-connect-user-autoacceptconfigs"></a>
The list of auto-accept configuration settings for each channel.  
*Required*: No  
*Type*: Array of [AutoAcceptConfig](aws-properties-connect-user-autoacceptconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DirectoryUserId`  <a name="cfn-connect-user-directoryuserid"></a>
The identifier of the user account in the directory used for identity management.  
*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)

`HierarchyGroupArn`  <a name="cfn-connect-user-hierarchygrouparn"></a>
The Amazon Resource Name (ARN) of the user's hierarchy group.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent-group/[-a-zA-Z0-9]*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IdentityInfo`  <a name="cfn-connect-user-identityinfo"></a>
Information about the user identity.  
*Required*: No  
*Type*: [UserIdentityInfo](aws-properties-connect-user-useridentityinfo.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InstanceArn`  <a name="cfn-connect-user-instancearn"></a>
The Amazon Resource Name (ARN) of the instance.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Password`  <a name="cfn-connect-user-password"></a>
The user's password.  
*Required*: No  
*Type*: String  
*Pattern*: `^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d\S]{8,64}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PersistentConnectionConfigs`  <a name="cfn-connect-user-persistentconnectionconfigs"></a>
The list of persistent connection configuration settings for each channel.  
*Required*: No  
*Type*: Array of [PersistentConnectionConfig](aws-properties-connect-user-persistentconnectionconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PhoneConfig`  <a name="cfn-connect-user-phoneconfig"></a>
Information about the phone configuration for the user.  
*Required*: No  
*Type*: [UserPhoneConfig](aws-properties-connect-user-userphoneconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PhoneNumberConfigs`  <a name="cfn-connect-user-phonenumberconfigs"></a>
The list of phone number configuration settings for each channel.  
*Required*: No  
*Type*: Array of [PhoneNumberConfig](aws-properties-connect-user-phonenumberconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoutingProfileArn`  <a name="cfn-connect-user-routingprofilearn"></a>
The Amazon Resource Name (ARN) of the user's routing profile.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/routing-profile/[-a-zA-Z0-9]*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecurityProfileArns`  <a name="cfn-connect-user-securityprofilearns"></a>
The Amazon Resource Name (ARN) of the user's security profile.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `10`  
*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-connect-user-tags"></a>
The tags.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-connect-user-tag.md)  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Username`  <a name="cfn-connect-user-username"></a>
The user name assigned to the user account.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-zA-Z0-9\_\-\.\@]+`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UserProficiencies`  <a name="cfn-connect-user-userproficiencies"></a>
One or more predefined attributes assigned to a user, with a numeric value that indicates how their level of skill in a specified area.  
*Required*: No  
*Type*: Array of [UserProficiency](aws-properties-connect-user-userproficiency.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`VoiceEnhancementConfigs`  <a name="cfn-connect-user-voiceenhancementconfigs"></a>
The list of voice enhancement configuration settings for each channel.  
*Required*: No  
*Type*: Array of [VoiceEnhancementConfig](aws-properties-connect-user-voiceenhancementconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-connect-user-return-values"></a>

### Ref
<a name="aws-resource-connect-user-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the user. For example:

 `{ "Ref": "myUser" }` 

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-connect-user-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-connect-user-return-values-fn--getatt-fn--getatt"></a>

`UserArn`  <a name="UserArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the user.

## Examples
<a name="aws-resource-connect-user--examples"></a>



### Specify a user resource
<a name="aws-resource-connect-user--examples--Specify_a_user_resource"></a>

The following example specifies a user resource for an Amazon Connect instance. This example specifies a user under an Amazon Connect instance. We recommend using a [dynamic reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/security-best-practices.html#creds) to specify a password value or mask the parameter with `NoEcho`.

#### YAML
<a name="aws-resource-connect-user--examples--Specify_a_user_resource--yaml"></a>

```
AWSTemplateFormatVersion: 2010-09-09
Description: Specifies a user for an Amazon Connect instance
Resources:
    User:
      Type: 'AWS::Connect::User'
      Properties:
        IdentityInfo:
          FirstName: 'firstname'
          LastName: 'lastname'
          Email: 'example@email.com'
        PhoneConfig:
          PhoneType: 'DESK_PHONE'
          AutoAccept: true
          DeskPhoneNumber: '+12345678902'
          AfterContactWorkTimeLimit: 10
        Username: 'exampleuser'
        InstanceArn: 'arn:aws:connect:region-name:aws-account-id:instance/instance-arn'
        RoutingProfileArn: 'arn:aws:connect:region-name:aws-account-id:instance/instance-arn/routing-profile/routing-arn'
        SecurityProfileArns: [arn:aws:connect:region-name:aws-account-id:instance/instance-arn/security-profile/security-arn]
        Password: !Ref password
        Tags:
          - Key: 'tagKey'
            Value: 'tagValue'
```

# AWS::Connect::User AfterContactWorkConfig
<a name="aws-properties-connect-user-aftercontactworkconfig"></a>

Configuration settings for after contact work (ACW) timeout.

## Syntax
<a name="aws-properties-connect-user-aftercontactworkconfig-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-aftercontactworkconfig-syntax.json"></a>

```
{
  "[AfterContactWorkTimeLimit](#cfn-connect-user-aftercontactworkconfig-aftercontactworktimelimit)" : Integer
}
```

### YAML
<a name="aws-properties-connect-user-aftercontactworkconfig-syntax.yaml"></a>

```
  [AfterContactWorkTimeLimit](#cfn-connect-user-aftercontactworkconfig-aftercontactworktimelimit): Integer
```

## Properties
<a name="aws-properties-connect-user-aftercontactworkconfig-properties"></a>

`AfterContactWorkTimeLimit`  <a name="cfn-connect-user-aftercontactworkconfig-aftercontactworktimelimit"></a>
The ACW timeout duration in seconds. Minimum: 1 second. Maximum: 2,000,000 seconds (24 days). Enter 0 for indefinite ACW time.  
*Required*: No  
*Type*: Integer  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Connect::User AfterContactWorkConfigPerChannel
<a name="aws-properties-connect-user-aftercontactworkconfigperchannel"></a>

Configuration settings for after contact work (ACW) timeout for a specific channel.

## Syntax
<a name="aws-properties-connect-user-aftercontactworkconfigperchannel-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-aftercontactworkconfigperchannel-syntax.json"></a>

```
{
  "[AfterContactWorkConfig](#cfn-connect-user-aftercontactworkconfigperchannel-aftercontactworkconfig)" : AfterContactWorkConfig,
  "[AgentFirstCallbackAfterContactWorkConfig](#cfn-connect-user-aftercontactworkconfigperchannel-agentfirstcallbackaftercontactworkconfig)" : AfterContactWorkConfig,
  "[Channel](#cfn-connect-user-aftercontactworkconfigperchannel-channel)" : String
}
```

### YAML
<a name="aws-properties-connect-user-aftercontactworkconfigperchannel-syntax.yaml"></a>

```
  [AfterContactWorkConfig](#cfn-connect-user-aftercontactworkconfigperchannel-aftercontactworkconfig): 
    AfterContactWorkConfig
  [AgentFirstCallbackAfterContactWorkConfig](#cfn-connect-user-aftercontactworkconfigperchannel-agentfirstcallbackaftercontactworkconfig): 
    AfterContactWorkConfig
  [Channel](#cfn-connect-user-aftercontactworkconfigperchannel-channel): String
```

## Properties
<a name="aws-properties-connect-user-aftercontactworkconfigperchannel-properties"></a>

`AfterContactWorkConfig`  <a name="cfn-connect-user-aftercontactworkconfigperchannel-aftercontactworkconfig"></a>
The ACW timeout settings for this channel.  
*Required*: Yes  
*Type*: [AfterContactWorkConfig](aws-properties-connect-user-aftercontactworkconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AgentFirstCallbackAfterContactWorkConfig`  <a name="cfn-connect-user-aftercontactworkconfigperchannel-agentfirstcallbackaftercontactworkconfig"></a>
The ACW timeout settings for agent-first callbacks. This setting only applies to the VOICE channel.  
*Required*: No  
*Type*: [AfterContactWorkConfig](aws-properties-connect-user-aftercontactworkconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Channel`  <a name="cfn-connect-user-aftercontactworkconfigperchannel-channel"></a>
The channel for this ACW timeout configuration. Valid values: VOICE, CHAT, TASK, EMAIL.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `VOICE | CHAT | TASK | EMAIL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Connect::User AutoAcceptConfig
<a name="aws-properties-connect-user-autoacceptconfig"></a>

Configuration settings for auto-accept for a specific channel.

## Syntax
<a name="aws-properties-connect-user-autoacceptconfig-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-autoacceptconfig-syntax.json"></a>

```
{
  "[AgentFirstCallbackAutoAccept](#cfn-connect-user-autoacceptconfig-agentfirstcallbackautoaccept)" : Boolean,
  "[AutoAccept](#cfn-connect-user-autoacceptconfig-autoaccept)" : Boolean,
  "[Channel](#cfn-connect-user-autoacceptconfig-channel)" : String
}
```

### YAML
<a name="aws-properties-connect-user-autoacceptconfig-syntax.yaml"></a>

```
  [AgentFirstCallbackAutoAccept](#cfn-connect-user-autoacceptconfig-agentfirstcallbackautoaccept): Boolean
  [AutoAccept](#cfn-connect-user-autoacceptconfig-autoaccept): Boolean
  [Channel](#cfn-connect-user-autoacceptconfig-channel): String
```

## Properties
<a name="aws-properties-connect-user-autoacceptconfig-properties"></a>

`AgentFirstCallbackAutoAccept`  <a name="cfn-connect-user-autoacceptconfig-agentfirstcallbackautoaccept"></a>
Indicates whether auto-accept is enabled for agent-first callbacks. This setting only applies to the VOICE channel.  
*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)

`AutoAccept`  <a name="cfn-connect-user-autoacceptconfig-autoaccept"></a>
Indicates whether auto-accept is enabled for this channel. When enabled, available agents are automatically connected to contacts from this channel.  
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Channel`  <a name="cfn-connect-user-autoacceptconfig-channel"></a>
The channel for this auto-accept configuration. Valid values: VOICE, CHAT, TASK, EMAIL.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `VOICE | CHAT | TASK | EMAIL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Connect::User PersistentConnectionConfig
<a name="aws-properties-connect-user-persistentconnectionconfig"></a>

Configuration settings for persistent connection for a specific channel.

## Syntax
<a name="aws-properties-connect-user-persistentconnectionconfig-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-persistentconnectionconfig-syntax.json"></a>

```
{
  "[Channel](#cfn-connect-user-persistentconnectionconfig-channel)" : String,
  "[PersistentConnection](#cfn-connect-user-persistentconnectionconfig-persistentconnection)" : Boolean
}
```

### YAML
<a name="aws-properties-connect-user-persistentconnectionconfig-syntax.yaml"></a>

```
  [Channel](#cfn-connect-user-persistentconnectionconfig-channel): String
  [PersistentConnection](#cfn-connect-user-persistentconnectionconfig-persistentconnection): Boolean
```

## Properties
<a name="aws-properties-connect-user-persistentconnectionconfig-properties"></a>

`Channel`  <a name="cfn-connect-user-persistentconnectionconfig-channel"></a>
Configuration settings for persistent connection. **Only `VOICE` is supported for this data type.**  
*Required*: Yes  
*Type*: String  
*Allowed values*: `VOICE | CHAT | TASK | EMAIL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PersistentConnection`  <a name="cfn-connect-user-persistentconnectionconfig-persistentconnection"></a>
Indicates whether persistent connection is enabled. When enabled, the agent's connection is maintained after a call ends, enabling subsequent calls to connect faster.  
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Connect::User PhoneNumberConfig
<a name="aws-properties-connect-user-phonenumberconfig"></a>

Configuration settings for phone type and phone number.

## Syntax
<a name="aws-properties-connect-user-phonenumberconfig-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-phonenumberconfig-syntax.json"></a>

```
{
  "[Channel](#cfn-connect-user-phonenumberconfig-channel)" : String,
  "[PhoneNumber](#cfn-connect-user-phonenumberconfig-phonenumber)" : String,
  "[PhoneType](#cfn-connect-user-phonenumberconfig-phonetype)" : String
}
```

### YAML
<a name="aws-properties-connect-user-phonenumberconfig-syntax.yaml"></a>

```
  [Channel](#cfn-connect-user-phonenumberconfig-channel): String
  [PhoneNumber](#cfn-connect-user-phonenumberconfig-phonenumber): String
  [PhoneType](#cfn-connect-user-phonenumberconfig-phonetype): String
```

## Properties
<a name="aws-properties-connect-user-phonenumberconfig-properties"></a>

`Channel`  <a name="cfn-connect-user-phonenumberconfig-channel"></a>
The channel for this phone number configuration. **Only `VOICE` is supported for this data type.**  
*Required*: Yes  
*Type*: String  
*Allowed values*: `VOICE | CHAT | TASK | EMAIL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PhoneNumber`  <a name="cfn-connect-user-phonenumberconfig-phonenumber"></a>
The phone number for the user's desk phone.  
*Required*: No  
*Type*: String  
*Pattern*: `\+[1-9]\d{1,14}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PhoneType`  <a name="cfn-connect-user-phonenumberconfig-phonetype"></a>
The phone type. Valid values: SOFT\$1PHONE, DESK\$1PHONE.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SOFT_PHONE | DESK_PHONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Connect::User Tag
<a name="aws-properties-connect-user-tag"></a>

A key-value pair to associate with a resource.

## Syntax
<a name="aws-properties-connect-user-tag-syntax"></a>

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

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

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

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

```
  [Key](#cfn-connect-user-tag-key): String
  [Value](#cfn-connect-user-tag-value): String
```

## Properties
<a name="aws-properties-connect-user-tag-properties"></a>

`Key`  <a name="cfn-connect-user-tag-key"></a>
The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, \$1, ., /, =, \$1, and -  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(?!aws:)[a-zA-Z+-=._:/]+$`  
*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-connect-user-tag-value"></a>
The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, \$1, ., /, =, \$1, and -  
*Required*: Yes  
*Type*: String  
*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::Connect::User UserIdentityInfo
<a name="aws-properties-connect-user-useridentityinfo"></a>

Contains information about the identity of a user.

**Note**  
For Amazon Connect instances that are created with the `EXISTING_DIRECTORY` identity management type, `FirstName`, `LastName`, and `Email` cannot be updated from within Amazon Connect because they are managed by the directory.

**Important**  
The `FirstName` and `LastName` length constraints below apply only to instances using SAML for identity management. If you are using Amazon Connect for identity management, the length constraints are 1-255 for `FirstName`, and 1-256 for `LastName`. 

## Syntax
<a name="aws-properties-connect-user-useridentityinfo-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-useridentityinfo-syntax.json"></a>

```
{
  "[Email](#cfn-connect-user-useridentityinfo-email)" : String,
  "[FirstName](#cfn-connect-user-useridentityinfo-firstname)" : String,
  "[LastName](#cfn-connect-user-useridentityinfo-lastname)" : String,
  "[Mobile](#cfn-connect-user-useridentityinfo-mobile)" : String,
  "[SecondaryEmail](#cfn-connect-user-useridentityinfo-secondaryemail)" : String
}
```

### YAML
<a name="aws-properties-connect-user-useridentityinfo-syntax.yaml"></a>

```
  [Email](#cfn-connect-user-useridentityinfo-email): String
  [FirstName](#cfn-connect-user-useridentityinfo-firstname): String
  [LastName](#cfn-connect-user-useridentityinfo-lastname): String
  [Mobile](#cfn-connect-user-useridentityinfo-mobile): String
  [SecondaryEmail](#cfn-connect-user-useridentityinfo-secondaryemail): String
```

## Properties
<a name="aws-properties-connect-user-useridentityinfo-properties"></a>

`Email`  <a name="cfn-connect-user-useridentityinfo-email"></a>
The email address. If you are using SAML for identity management and include this parameter, an error is returned.  
*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)

`FirstName`  <a name="cfn-connect-user-useridentityinfo-firstname"></a>
The first name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted.  
*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)

`LastName`  <a name="cfn-connect-user-useridentityinfo-lastname"></a>
The last name. This is required if you are using Amazon Connect or SAML for identity management. Inputs must be in Unicode Normalization Form C (NFC). Text containing characters in a non-NFC form (for example, decomposed characters or combining marks) are not accepted.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `300`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Mobile`  <a name="cfn-connect-user-useridentityinfo-mobile"></a>
The user's mobile number.  
*Required*: No  
*Type*: String  
*Pattern*: `^\+[1-9]\d{1,14}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SecondaryEmail`  <a name="cfn-connect-user-useridentityinfo-secondaryemail"></a>
The user's secondary email address. If you provide a secondary email, the user receives email notifications -- other than password reset notifications -- to this email address instead of to their primary email address.  
*Pattern*: `(?=^.{0,265}$)[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,63}`  
*Required*: No  
*Type*: String  
*Pattern*: `(?=^.{0,265}$)[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,63}`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Connect::User UserPhoneConfig
<a name="aws-properties-connect-user-userphoneconfig"></a>

Contains information about the phone configuration settings for a user.

## Syntax
<a name="aws-properties-connect-user-userphoneconfig-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-userphoneconfig-syntax.json"></a>

```
{
  "[AfterContactWorkTimeLimit](#cfn-connect-user-userphoneconfig-aftercontactworktimelimit)" : Integer,
  "[AutoAccept](#cfn-connect-user-userphoneconfig-autoaccept)" : Boolean,
  "[DeskPhoneNumber](#cfn-connect-user-userphoneconfig-deskphonenumber)" : String,
  "[PersistentConnection](#cfn-connect-user-userphoneconfig-persistentconnection)" : Boolean,
  "[PhoneType](#cfn-connect-user-userphoneconfig-phonetype)" : String
}
```

### YAML
<a name="aws-properties-connect-user-userphoneconfig-syntax.yaml"></a>

```
  [AfterContactWorkTimeLimit](#cfn-connect-user-userphoneconfig-aftercontactworktimelimit): Integer
  [AutoAccept](#cfn-connect-user-userphoneconfig-autoaccept): Boolean
  [DeskPhoneNumber](#cfn-connect-user-userphoneconfig-deskphonenumber): String
  [PersistentConnection](#cfn-connect-user-userphoneconfig-persistentconnection): Boolean
  [PhoneType](#cfn-connect-user-userphoneconfig-phonetype): String
```

## Properties
<a name="aws-properties-connect-user-userphoneconfig-properties"></a>

`AfterContactWorkTimeLimit`  <a name="cfn-connect-user-userphoneconfig-aftercontactworktimelimit"></a>
The After Call Work (ACW) timeout setting, in seconds. This parameter has a minimum value of 0 and a maximum value of 2,000,000 seconds (24 days). Enter 0 if you don't want to allocate a specific amount of ACW time. It essentially means an indefinite amount of time. When the conversation ends, ACW starts; the agent must choose Close contact to end ACW.   
When returned by a `SearchUsers` call, `AfterContactWorkTimeLimit` is returned in milliseconds. 
*Required*: No  
*Type*: Integer  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AutoAccept`  <a name="cfn-connect-user-userphoneconfig-autoaccept"></a>
The Auto accept setting.  
*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)

`DeskPhoneNumber`  <a name="cfn-connect-user-userphoneconfig-deskphonenumber"></a>
The phone number for the user's desk phone.  
*Required*: No  
*Type*: String  
*Pattern*: `\+[1-9]\d{1,14}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PersistentConnection`  <a name="cfn-connect-user-userphoneconfig-persistentconnection"></a>
The persistent connection setting for the user.  
*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)

`PhoneType`  <a name="cfn-connect-user-userphoneconfig-phonetype"></a>
The phone type.  
*Required*: No  
*Type*: String  
*Allowed values*: `SOFT_PHONE | DESK_PHONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Connect::User UserProficiency
<a name="aws-properties-connect-user-userproficiency"></a>

**Note**  
A predefined attribute must be created before using `UserProficiencies` in the Cloudformation *User* template. For more information, see [Predefined attributes](https://docs.aws.amazon.com/connect/latest/adminguide/predefined-attributes.html).

Proficiency of a user.

## Syntax
<a name="aws-properties-connect-user-userproficiency-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-userproficiency-syntax.json"></a>

```
{
  "[AttributeName](#cfn-connect-user-userproficiency-attributename)" : String,
  "[AttributeValue](#cfn-connect-user-userproficiency-attributevalue)" : String,
  "[Level](#cfn-connect-user-userproficiency-level)" : Number
}
```

### YAML
<a name="aws-properties-connect-user-userproficiency-syntax.yaml"></a>

```
  [AttributeName](#cfn-connect-user-userproficiency-attributename): String
  [AttributeValue](#cfn-connect-user-userproficiency-attributevalue): String
  [Level](#cfn-connect-user-userproficiency-level): Number
```

## Properties
<a name="aws-properties-connect-user-userproficiency-properties"></a>

`AttributeName`  <a name="cfn-connect-user-userproficiency-attributename"></a>
The name of user’s proficiency. You must use a predefined attribute name that is present in the Amazon Connect instance.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AttributeValue`  <a name="cfn-connect-user-userproficiency-attributevalue"></a>
The value of user’s proficiency. You must use a predefined attribute value that is present in the Amazon Connect instance.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Level`  <a name="cfn-connect-user-userproficiency-level"></a>
The level of the proficiency. The valid values are 1, 2, 3, 4 and 5.  
*Required*: Yes  
*Type*: Number  
*Minimum*: `1`  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Connect::User VoiceEnhancementConfig
<a name="aws-properties-connect-user-voiceenhancementconfig"></a>

Configuration settings for voice enhancement.

## Syntax
<a name="aws-properties-connect-user-voiceenhancementconfig-syntax"></a>

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

### JSON
<a name="aws-properties-connect-user-voiceenhancementconfig-syntax.json"></a>

```
{
  "[Channel](#cfn-connect-user-voiceenhancementconfig-channel)" : String,
  "[VoiceEnhancementMode](#cfn-connect-user-voiceenhancementconfig-voiceenhancementmode)" : String
}
```

### YAML
<a name="aws-properties-connect-user-voiceenhancementconfig-syntax.yaml"></a>

```
  [Channel](#cfn-connect-user-voiceenhancementconfig-channel): String
  [VoiceEnhancementMode](#cfn-connect-user-voiceenhancementconfig-voiceenhancementmode): String
```

## Properties
<a name="aws-properties-connect-user-voiceenhancementconfig-properties"></a>

`Channel`  <a name="cfn-connect-user-voiceenhancementconfig-channel"></a>
The channel for this voice enhancement configuration. **Only `VOICE` is supported for this data type.**  
*Required*: Yes  
*Type*: String  
*Allowed values*: `VOICE | CHAT | TASK | EMAIL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`VoiceEnhancementMode`  <a name="cfn-connect-user-voiceenhancementconfig-voiceenhancementmode"></a>
The voice enhancement mode.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `NONE | VOICE_ISOLATION | NOISE_SUPPRESSION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)