WorkSpaces / Client / create_workspaces_pool

create_workspaces_pool#

WorkSpaces.Client.create_workspaces_pool(**kwargs)#

Creates a pool of WorkSpaces.

See also: AWS API Documentation

Request Syntax

response = client.create_workspaces_pool(
    PoolName='string',
    Description='string',
    BundleId='string',
    DirectoryId='string',
    Capacity={
        'DesiredUserSessions': 123
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    ApplicationSettings={
        'Status': 'DISABLED'|'ENABLED',
        'SettingsGroup': 'string'
    },
    TimeoutSettings={
        'DisconnectTimeoutInSeconds': 123,
        'IdleDisconnectTimeoutInSeconds': 123,
        'MaxUserDurationInSeconds': 123
    }
)
Parameters:
  • PoolName (string) –

    [REQUIRED]

    The name of the pool.

  • Description (string) –

    [REQUIRED]

    The pool description.

  • BundleId (string) –

    [REQUIRED]

    The identifier of the bundle for the pool.

  • DirectoryId (string) –

    [REQUIRED]

    The identifier of the directory for the pool.

  • Capacity (dict) –

    [REQUIRED]

    The user capacity of the pool.

    • DesiredUserSessions (integer) – [REQUIRED]

      The desired number of user sessions for the WorkSpaces in the pool.

  • Tags (list) –

    The tags for the pool.

    • (dict) –

      Describes a tag.

      • Key (string) – [REQUIRED]

        The key of the tag.

      • Value (string) –

        The value of the tag.

  • ApplicationSettings (dict) –

    Indicates the application settings of the pool.

    • Status (string) – [REQUIRED]

      Enables or disables persistent application settings for users during their pool sessions.

    • SettingsGroup (string) –

      The path prefix for the S3 bucket where users’ persistent application settings are stored. You can allow the same persistent application settings to be used across multiple pools by specifying the same settings group for each pool.

  • TimeoutSettings (dict) –

    Indicates the timeout settings of the pool.

    • DisconnectTimeoutInSeconds (integer) –

      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.

    • IdleDisconnectTimeoutInSeconds (integer) –

      The amount of time in seconds a connection will stay active while idle.

    • MaxUserDurationInSeconds (integer) –

      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.

Return type:

dict

Returns:

Response Syntax

{
    'WorkspacesPool': {
        'PoolId': 'string',
        'PoolArn': 'string',
        'CapacityStatus': {
            'AvailableUserSessions': 123,
            'DesiredUserSessions': 123,
            'ActualUserSessions': 123,
            'ActiveUserSessions': 123
        },
        'PoolName': 'string',
        'Description': 'string',
        'State': 'CREATING'|'DELETING'|'RUNNING'|'STARTING'|'STOPPED'|'STOPPING'|'UPDATING',
        'CreatedAt': datetime(2015, 1, 1),
        'BundleId': 'string',
        'DirectoryId': 'string',
        'Errors': [
            {
                'ErrorCode': 'IAM_SERVICE_ROLE_IS_MISSING'|'IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION'|'NETWORK_INTERFACE_LIMIT_EXCEEDED'|'INTERNAL_SERVICE_ERROR'|'MACHINE_ROLE_IS_MISSING'|'STS_DISABLED_IN_REGION'|'SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES'|'IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION'|'SUBNET_NOT_FOUND'|'IMAGE_NOT_FOUND'|'INVALID_SUBNET_CONFIGURATION'|'SECURITY_GROUPS_NOT_FOUND'|'IGW_NOT_ATTACHED'|'IAM_SERVICE_ROLE_MISSING_DESCRIBE_SECURITY_GROUPS_ACTION'|'WORKSPACES_POOL_STOPPED'|'WORKSPACES_POOL_INSTANCE_PROVISIONING_FAILURE'|'DOMAIN_JOIN_ERROR_FILE_NOT_FOUND'|'DOMAIN_JOIN_ERROR_ACCESS_DENIED'|'DOMAIN_JOIN_ERROR_LOGON_FAILURE'|'DOMAIN_JOIN_ERROR_INVALID_PARAMETER'|'DOMAIN_JOIN_ERROR_MORE_DATA'|'DOMAIN_JOIN_ERROR_NO_SUCH_DOMAIN'|'DOMAIN_JOIN_ERROR_NOT_SUPPORTED'|'DOMAIN_JOIN_NERR_INVALID_WORKGROUP_NAME'|'DOMAIN_JOIN_NERR_WORKSTATION_NOT_STARTED'|'DOMAIN_JOIN_ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED'|'DOMAIN_JOIN_NERR_PASSWORD_EXPIRED'|'DOMAIN_JOIN_INTERNAL_SERVICE_ERROR'|'DOMAIN_JOIN_ERROR_SECRET_ACTION_PERMISSION_IS_MISSING'|'DOMAIN_JOIN_ERROR_SECRET_DECRYPTION_FAILURE'|'DOMAIN_JOIN_ERROR_SECRET_STATE_INVALID'|'DOMAIN_JOIN_ERROR_SECRET_NOT_FOUND'|'DOMAIN_JOIN_ERROR_SECRET_VALUE_KEY_NOT_FOUND'|'DOMAIN_JOIN_ERROR_SECRET_INVALID'|'BUNDLE_NOT_FOUND'|'DIRECTORY_NOT_FOUND'|'INSUFFICIENT_PERMISSIONS_ERROR'|'DEFAULT_OU_IS_MISSING',
                'ErrorMessage': 'string'
            },
        ],
        'ApplicationSettings': {
            'Status': 'DISABLED'|'ENABLED',
            'SettingsGroup': 'string',
            'S3BucketName': 'string'
        },
        'TimeoutSettings': {
            'DisconnectTimeoutInSeconds': 123,
            'IdleDisconnectTimeoutInSeconds': 123,
            'MaxUserDurationInSeconds': 123
        }
    }
}

Response Structure

  • (dict) –

    • WorkspacesPool (dict) –

      Indicates the pool to create.

      • PoolId (string) –

        The identifier of a pool.

      • PoolArn (string) –

        The Amazon Resource Name (ARN) for the pool.

      • CapacityStatus (dict) –

        The capacity status for the pool

        • AvailableUserSessions (integer) –

          The number of user sessions currently available for streaming from your pool.

          AvailableUserSessions = ActualUserSessions - ActiveUserSessions

        • DesiredUserSessions (integer) –

          The total number of sessions slots that are either running or pending. This represents the total number of concurrent streaming sessions your pool can support in a steady state.

        • ActualUserSessions (integer) –

          The total number of user sessions that are available for streaming or are currently streaming in your pool.

          ActualUserSessions = AvailableUserSessions + ActiveUserSessions

        • ActiveUserSessions (integer) –

          The number of user sessions currently being used for your pool.

      • PoolName (string) –

        The name of the pool,

      • Description (string) –

        The description of the pool.

      • State (string) –

        The current state of the pool.

      • CreatedAt (datetime) –

        The time the pool was created.

      • BundleId (string) –

        The identifier of the bundle used by the pool.

      • DirectoryId (string) –

        The identifier of the directory used by the pool.

      • Errors (list) –

        The pool errors.

        • (dict) –

          Describes a pool error.

          • ErrorCode (string) –

            The error code.

          • ErrorMessage (string) –

            The error message.

      • ApplicationSettings (dict) –

        The persistent application settings for users of the pool.

        • Status (string) –

          Specifies whether persistent application settings are enabled for users during their pool sessions.

        • SettingsGroup (string) –

          The path prefix for the S3 bucket where users’ persistent application settings are stored.

        • S3BucketName (string) –

          The S3 bucket where users’ persistent application settings are stored. When persistent application settings are enabled for the first time for an account in an Amazon Web Services Region, an S3 bucket is created. The bucket is unique to the Amazon Web Services account and the Region.

      • TimeoutSettings (dict) –

        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.

        • DisconnectTimeoutInSeconds (integer) –

          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.

        • IdleDisconnectTimeoutInSeconds (integer) –

          The amount of time in seconds a connection will stay active while idle.

        • MaxUserDurationInSeconds (integer) –

          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.

Exceptions

  • WorkSpaces.Client.exceptions.ResourceLimitExceededException

  • WorkSpaces.Client.exceptions.ResourceNotFoundException

  • WorkSpaces.Client.exceptions.InvalidParameterValuesException

  • WorkSpaces.Client.exceptions.ResourceAlreadyExistsException

  • WorkSpaces.Client.exceptions.OperationNotSupportedException

  • WorkSpaces.Client.exceptions.AccessDeniedException