

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::WorkSpaces::WorkspacesPool
<a name="aws-resource-workspaces-workspacespool"></a>

Describes a pool of WorkSpaces.

## Syntax
<a name="aws-resource-workspaces-workspacespool-syntax"></a>

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

### JSON
<a name="aws-resource-workspaces-workspacespool-syntax.json"></a>

```
{
  "Type" : "AWS::WorkSpaces::WorkspacesPool",
  "Properties" : {
      "[ApplicationSettings](#cfn-workspaces-workspacespool-applicationsettings)" : ApplicationSettings,
      "[BundleId](#cfn-workspaces-workspacespool-bundleid)" : String,
      "[Capacity](#cfn-workspaces-workspacespool-capacity)" : Capacity,
      "[Description](#cfn-workspaces-workspacespool-description)" : String,
      "[DirectoryId](#cfn-workspaces-workspacespool-directoryid)" : String,
      "[PoolName](#cfn-workspaces-workspacespool-poolname)" : String,
      "[RunningMode](#cfn-workspaces-workspacespool-runningmode)" : String,
      "[TimeoutSettings](#cfn-workspaces-workspacespool-timeoutsettings)" : TimeoutSettings
    }
}
```

### YAML
<a name="aws-resource-workspaces-workspacespool-syntax.yaml"></a>

```
Type: AWS::WorkSpaces::WorkspacesPool
Properties:
  [ApplicationSettings](#cfn-workspaces-workspacespool-applicationsettings): 
    ApplicationSettings
  [BundleId](#cfn-workspaces-workspacespool-bundleid): String
  [Capacity](#cfn-workspaces-workspacespool-capacity): 
    Capacity
  [Description](#cfn-workspaces-workspacespool-description): String
  [DirectoryId](#cfn-workspaces-workspacespool-directoryid): String
  [PoolName](#cfn-workspaces-workspacespool-poolname): String
  [RunningMode](#cfn-workspaces-workspacespool-runningmode): String
  [TimeoutSettings](#cfn-workspaces-workspacespool-timeoutsettings): 
    TimeoutSettings
```

## Properties
<a name="aws-resource-workspaces-workspacespool-properties"></a>

`ApplicationSettings`  <a name="cfn-workspaces-workspacespool-applicationsettings"></a>
The persistent application settings for users of the pool.  
*Required*: No  
*Type*: [ApplicationSettings](aws-properties-workspaces-workspacespool-applicationsettings.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BundleId`  <a name="cfn-workspaces-workspacespool-bundleid"></a>
The identifier of the bundle used by the pool.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^wsb-[0-9a-z]{8,63}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Capacity`  <a name="cfn-workspaces-workspacespool-capacity"></a>
Describes the user capacity for the pool.  
*Required*: Yes  
*Type*: [Capacity](aws-properties-workspaces-workspacespool-capacity.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-workspaces-workspacespool-description"></a>
The description of the pool.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-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)

`DirectoryId`  <a name="cfn-workspaces-workspacespool-directoryid"></a>
The identifier of the directory used by the pool.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^wsd-[0-9a-z]{8,63}$`  
*Minimum*: `10`  
*Maximum*: `65`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PoolName`  <a name="cfn-workspaces-workspacespool-poolname"></a>
The name of the pool.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[A-Za-z0-9][A-Za-z0-9_.-]{0,63}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RunningMode`  <a name="cfn-workspaces-workspacespool-runningmode"></a>
The running mode of the pool.  
*Required*: No  
*Type*: String  
*Allowed values*: `ALWAYS_ON | AUTO_STOP`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TimeoutSettings`  <a name="cfn-workspaces-workspacespool-timeoutsettings"></a>
The amount of time that a pool session remains active after users disconnect. If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance.  
*Required*: No  
*Type*: [TimeoutSettings](aws-properties-workspaces-workspacespool-timeoutsettings.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-workspaces-workspacespool-return-values"></a>

### Ref
<a name="aws-resource-workspaces-workspacespool-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the resource name.

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-workspaces-workspacespool-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-workspaces-workspacespool-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time the pool was created.

`PoolArn`  <a name="PoolArn-fn::getatt"></a>
The Amazon Resource Name (ARN) for the pool.

`PoolId`  <a name="PoolId-fn::getatt"></a>
The identifier of the pool.

# AWS::WorkSpaces::WorkspacesPool ApplicationSettings
<a name="aws-properties-workspaces-workspacespool-applicationsettings"></a>

The persistent application settings for users in the pool.

## Syntax
<a name="aws-properties-workspaces-workspacespool-applicationsettings-syntax"></a>

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

### JSON
<a name="aws-properties-workspaces-workspacespool-applicationsettings-syntax.json"></a>

```
{
  "[SettingsGroup](#cfn-workspaces-workspacespool-applicationsettings-settingsgroup)" : String,
  "[Status](#cfn-workspaces-workspacespool-applicationsettings-status)" : String
}
```

### YAML
<a name="aws-properties-workspaces-workspacespool-applicationsettings-syntax.yaml"></a>

```
  [SettingsGroup](#cfn-workspaces-workspacespool-applicationsettings-settingsgroup): String
  [Status](#cfn-workspaces-workspacespool-applicationsettings-status): String
```

## Properties
<a name="aws-properties-workspaces-workspacespool-applicationsettings-properties"></a>

`SettingsGroup`  <a name="cfn-workspaces-workspacespool-applicationsettings-settingsgroup"></a>
The path prefix for the S3 bucket where users’ persistent application settings are stored.  
*Required*: No  
*Type*: String  
*Pattern*: `^[A-Za-z0-9_./()!*'-]+$`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Status`  <a name="cfn-workspaces-workspacespool-applicationsettings-status"></a>
Enables or disables persistent application settings for users during their pool sessions.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `DISABLED | ENABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::WorkSpaces::WorkspacesPool Capacity
<a name="aws-properties-workspaces-workspacespool-capacity"></a>

Describes the user capacity for the pool.

## Syntax
<a name="aws-properties-workspaces-workspacespool-capacity-syntax"></a>

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

### JSON
<a name="aws-properties-workspaces-workspacespool-capacity-syntax.json"></a>

```
{
  "[DesiredUserSessions](#cfn-workspaces-workspacespool-capacity-desiredusersessions)" : Integer
}
```

### YAML
<a name="aws-properties-workspaces-workspacespool-capacity-syntax.yaml"></a>

```
  [DesiredUserSessions](#cfn-workspaces-workspacespool-capacity-desiredusersessions): Integer
```

## Properties
<a name="aws-properties-workspaces-workspacespool-capacity-properties"></a>

`DesiredUserSessions`  <a name="cfn-workspaces-workspacespool-capacity-desiredusersessions"></a>
The desired number of user sessions for the WorkSpaces in the pool.  
*Required*: Yes  
*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::WorkSpaces::WorkspacesPool TimeoutSettings
<a name="aws-properties-workspaces-workspacespool-timeoutsettings"></a>

Describes the timeout settings for the pool.

## Syntax
<a name="aws-properties-workspaces-workspacespool-timeoutsettings-syntax"></a>

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

### JSON
<a name="aws-properties-workspaces-workspacespool-timeoutsettings-syntax.json"></a>

```
{
  "[DisconnectTimeoutInSeconds](#cfn-workspaces-workspacespool-timeoutsettings-disconnecttimeoutinseconds)" : Integer,
  "[IdleDisconnectTimeoutInSeconds](#cfn-workspaces-workspacespool-timeoutsettings-idledisconnecttimeoutinseconds)" : Integer,
  "[MaxUserDurationInSeconds](#cfn-workspaces-workspacespool-timeoutsettings-maxuserdurationinseconds)" : Integer
}
```

### YAML
<a name="aws-properties-workspaces-workspacespool-timeoutsettings-syntax.yaml"></a>

```
  [DisconnectTimeoutInSeconds](#cfn-workspaces-workspacespool-timeoutsettings-disconnecttimeoutinseconds): Integer
  [IdleDisconnectTimeoutInSeconds](#cfn-workspaces-workspacespool-timeoutsettings-idledisconnecttimeoutinseconds): Integer
  [MaxUserDurationInSeconds](#cfn-workspaces-workspacespool-timeoutsettings-maxuserdurationinseconds): Integer
```

## Properties
<a name="aws-properties-workspaces-workspacespool-timeoutsettings-properties"></a>

`DisconnectTimeoutInSeconds`  <a name="cfn-workspaces-workspacespool-timeoutsettings-disconnecttimeoutinseconds"></a>
Specifies the amount of time, in seconds, that a streaming session remains active after users disconnect. If users try to reconnect to the streaming session after a disconnection or network interruption within the time set, they are connected to their previous session. Otherwise, they are connected to a new session with a new streaming instance.  
*Required*: No  
*Type*: Integer  
*Minimum*: `60`  
*Maximum*: `36000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IdleDisconnectTimeoutInSeconds`  <a name="cfn-workspaces-workspacespool-timeoutsettings-idledisconnecttimeoutinseconds"></a>
The amount of time in seconds a connection will stay active while idle.  
*Required*: No  
*Type*: Integer  
*Minimum*: `0`  
*Maximum*: `36000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MaxUserDurationInSeconds`  <a name="cfn-workspaces-workspacespool-timeoutsettings-maxuserdurationinseconds"></a>
Specifies the maximum amount of time, in seconds, that a streaming session can remain active. If users are still connected to a streaming instance five minutes before this limit is reached, they are prompted to save any open documents before being disconnected. After this time elapses, the instance is terminated and replaced by a new instance.  
*Required*: No  
*Type*: Integer  
*Minimum*: `600`  
*Maximum*: `432000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)